Distribuzione di un cluster di nodi Cyberwatch indipendenti con Swarm

Questa pagina descrive la procedura di installazione di Cyberwatch in modalità satellite senza utilizzare Swarm per la comunicazione tra i nodi.

Per garantire una comunicazione corretta tra il master e il satellite, è indispensabile che le due istanze Cyberwatch dispongano della stessa versione.

Prerequisiti

Prerequisiti di rete e matrice dei flussi

Flussi richiesti per la configurazione di un nodo satellite:

OrigineDestinazioneProtocolloPortaDescrizione
nodo satellitenodo masterTCP3306Connessione al database SQL
nodo satellitenodo masterTCP6379Connessione al database cache Redis
nodo satellitedownload.docker.comTCP443Installazione e aggiornamenti di Docker
nodo satelliteharbor.cyberwatch.frTCP443Registry delle immagini Docker Cyberwatch
nodo satellitedl.cyberwatch.comTCP443Repository dei pacchetti Cyberwatch

Prerequisiti hardware

La macchina deve disporre almeno di 2 vCPU, 8 GB di memoria e 32 GB di spazio su disco ripartiti tra /var/lib/docker (12 GB) e /var/lib/containerd (20 GB).

Si consiglia di assegnare l’intero spazio su disco alla partizione root /. La ripartizione indicata sopra è fornita a titolo informativo.

Ecco come verificare i prerequisiti hardware:

  1. Verificare il numero di vCPU:

    lscpu | grep "CPU(s):"
    
  2. Verificare la memoria disponibile:

    free -m
    
  3. Verificare lo spazio su disco disponibile per la directory /var/lib/docker/:

    df /var/lib/docker/
    

Installazione del nodo master

  1. Seguire la procedura standard di distribuzione e fermarsi subito prima di configurare Cyberwatch

  2. Configurare Cyberwatch:

    • Configurare Cyberwatch nel caso di un nodo master che ospita il database:

      sudo cyberwatch configure --master
      
    • Configurare Cyberwatch nel caso di un nodo master con un database esterno:

      sudo cyberwatch configure --master --no-db
      

Installazione del nodo satellite

  1. Seguire la procedura standard di distribuzione e fermarsi subito prima di configurare Cyberwatch

  2. Eseguire il comando seguente sul nodo master:

    sudo cyberwatch show-secrets
    
  3. Scrivere il risultato del comando precedente sul nodo satellite nel file /etc/cyberwatch/secrets.env:

    vim /etc/cyberwatch/secrets.env
    chmod 600 /etc/cyberwatch/secrets.env
    
  4. Eseguire il comando seguente sul nodo master:

    sudo cyberwatch show-root-cert
    
  5. Scrivere il risultato del comando precedente sul nodo satellite nel file /etc/cyberwatch/certs/cbw-root-ca-cert.pem:

    mkdir -p /etc/cyberwatch/certs
    vim /etc/cyberwatch/certs/cbw-root-ca-cert.pem
    
  6. Configurare Cyberwatch:

    sudo cyberwatch configure --satellite
    

Verifica del funzionamento

  1. Per verificare che il nodo satellite sia in grado di raggiungere il nodo master, controllare i log di sidekiq:

    sudo cyberwatch logs sidekiq