Desplegament d’un clúster de nodes de Cyberwatch independents amb Swarm
Aquesta pàgina indica el procediment d’instal·lació de Cyberwatch en mode satèl·lit sense utilitzar Swarm per a la comunicació entre els nodes.
Per garantir una comunicació correcta entre el mestre i el satèl·lit, és imprescindible que les dues instàncies de Cyberwatch tinguin la mateixa versió.
Requisits previs
Requisits de xarxa i matriu de fluxos
Fluxos necessaris per configurar un node satèl·lit:
| Origen | Destinació | Protocol | Port | Descripció |
|---|---|---|---|---|
| node satèl·lit | node mestre | TCP | 3306 | Connexió a la base de dades SQL |
| node satèl·lit | node mestre | TCP | 6379 | Connexió a la base de dades en memòria cau Redis |
| node satèl·lit | download.docker.com | TCP | 443 | Instal·lació i actualitzacions de Docker |
| node satèl·lit | harbor.cyberwatch.fr | TCP | 443 | Registre de les imatges Docker de Cyberwatch |
| node satèl·lit | dl.cyberwatch.com | TCP | 443 | Repositori dels paquets de Cyberwatch |
flowchart LR
SAT["Node satèl·lit"]
SAT -- "TCP 3306 · base de dades SQL" --> MASTER["Node mestre"]
SAT -- "TCP 6379 · memòria cau Redis" --> MASTER
SAT -- "TCP 443 · Docker" --> DOCKER["download.docker.com"]
SAT -- "TCP 443 · imatges" --> HARBOR["harbor.cyberwatch.fr"]
SAT -- "TCP 443 · paquets" --> DL["dl.cyberwatch.com"]
Requisits de maquinari
La màquina ha de disposar com a mínim de 2 vCPU, 8 GB de memòria i 32 GB d’espai de disc repartits entre /var/lib/docker (12 GB) i /var/lib/containerd (20 GB).
Es recomana assignar tot l’espai de disc a la partició arrel /. La distribució anterior només es dona a títol informatiu.
Així es comproven els requisits de maquinari:
Comproveu el nombre de vCPU:
lscpu | grep "CPU(s):"Comproveu la memòria disponible:
free -mComproveu l’espai de disc disponible per a la carpeta
/var/lib/docker/:df /var/lib/docker/
Instal·lació del node mestre
Seguiu el procediment estàndard de desplegament i atureu-vos just abans de configurar Cyberwatch
Configureu Cyberwatch:
Configureu Cyberwatch en el cas d’un node mestre que allotja la base de dades:
sudo cyberwatch configure --masterConfigureu Cyberwatch en el cas d’un node mestre amb una base de dades externa:
sudo cyberwatch configure --master --no-db
Instal·lació del node satèl·lit
Els secrets i el certificat arrel del node mestre es copien al node satèl·lit abans de configurar-lo:
sequenceDiagram
participant M as Node mestre
participant A as Administrador
participant S as Node satèl·lit
Note over M,S: Mateixa versió de Cyberwatch als dos nodes
A->>S: Procediment estàndard, aturada abans de la configuració
A->>M: cyberwatch show-secrets
M-->>A: secrets
A->>S: /etc/cyberwatch/secrets.env
A->>M: cyberwatch show-root-cert
M-->>A: certificat arrel
A->>S: /etc/cyberwatch/certs/cbw-root-ca-cert.pem
A->>S: cyberwatch configure --satellite
S->>M: Connexió SQL (3306) i Redis (6379)
Seguiu el procediment estàndard de desplegament i atureu-vos just abans de configurar Cyberwatch
Executeu l’ordre següent al node mestre:
sudo cyberwatch show-secretsEscriviu el resultat de l’ordre anterior al node satèl·lit, al fitxer
/etc/cyberwatch/secrets.env:vim /etc/cyberwatch/secrets.env chmod 600 /etc/cyberwatch/secrets.envExecuteu l’ordre següent al node mestre:
sudo cyberwatch show-root-certEscriviu el resultat de l’ordre anterior al node satèl·lit, al fitxer
/etc/cyberwatch/certs/cbw-root-ca-cert.pem:mkdir -p /etc/cyberwatch/certs vim /etc/cyberwatch/certs/cbw-root-ca-cert.pemConfigureu Cyberwatch:
sudo cyberwatch configure --satellite
Validació del funcionament
Per validar que el node satèl·lit pot connectar amb el node mestre, comproveu els registres de sidekiq:
sudo cyberwatch logs sidekiq