Devi configurare il sistema operativo di base delle macchine dei nodi per utilizzare Google Distributed Cloud. Questa pagina contiene i passaggi da seguire per completare la configurazione necessaria. Per ulteriori informazioni sulla risoluzione dei problemi di Google Distributed Cloud, consulta le guide alla risoluzione dei problemi.
Prima di iniziare
Assicurati di utilizzare una versione supportata del sistema operativo. Per un elenco delle versioni supportate, consulta Seleziona il tuo sistema operativo.
Abilita il compilatore Just-In-Time BPF
Il kernel del sistema operativo deve avere l'opzione del compilatore BPF Just In Time
attivata (CONFIG_BPF_JIT=y
).
Per scoprire se questa opzione è abilitata, esegui questo comando:
grep CONFIG_BPF_JIT /boot/config-$(uname -r)
Convalida il gestore di pacchetti
Assicurati di avere il nome utente e la password di RedHat e l'accesso root alle macchine che stai configurando. Convalida il gestore di pacchetti con i seguenti passaggi:
Se non hai registrato il tuo sistema operativo, registrati con RedHat utilizzando il tuo nome utente e la tua password RedHat per scaricare gli aggiornamenti:
sudo subscription-manager register sudo subscription-manager refresh sudo subscription-manager attach --auto
Verifica la disponibilità di aggiornamenti:
sudo dnf check-update
Assicurati che l'output non contenga errori e includa l'ultimo controllo della scadenza dei metadati. Ad esempio:
Updating Subscription Management repositories. ... # Last metadata expiration check: ... ...
Configura o disattiva firewalld
Firewalld può essere configurato per l'utilizzo con Google Distributed Cloud o disattivato. Per informazioni sulla configurazione di firewalld, consulta Configurare le porte di firewalld nella pagina Requisiti di rete.
Le seguenti istruzioni disattivano firewalld.
Disattiva firewalld:
sudo systemctl stop firewalld sudo systemctl disable firewalld
Controlla lo stato di firewalld per assicurarti che sia disattivato:
sudo systemctl status firewalld | grep "Active" # Output # Active: inactive (dead)
Configura Docker sulla workstation
Per installare Docker manualmente:
Rimuovi eventuali versioni precedenti di Docker:
sudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
Rimuovi podman-manpages:
sudo dnf remove podman-manpages
Installa Docker 20.10.0+:
sudo dnf install -y yum-utils sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/rhel/docker-ce.repo sudo dnf install -y --allowerasing docker-ce docker-ce-cli containerd.io sudo systemctl start docker
Verifica di utilizzare la versione 20.10.0 o successive:
sudo docker version
Confronta l'output con l'esempio seguente per assicurarti che le versioni del client e del server siano 20.10.0 o successive:
Client: Docker Engine - Community Version: 25.0.3 ... Server: Docker Engine - Community Engine: Version: 25.0.3
Verifica che Docker sia in esecuzione:
docker run hello-world
Dovresti vedere qualcosa di simile a questo:
Hello from Docker!
This message shows that your installation appears to be working correctly.
Configurare la sincronizzazione dell'ora
La sincronizzazione dell'ora consiste nell'impostazione degli orologi sulle macchine dei nodi utilizzando
un riferimento temporale esterno designato. La sincronizzazione dell'ora è importante per
le attività del cluster sensibili al tempo, come la registrazione degli eventi e la raccolta delle metriche.
Il kernel della macchina nodo controlla l'orologio nei container in esecuzione sul
nodo. Per garantire una corretta sincronizzazione dell'ora, installa un servizio NTP (Network Time Protocol) sulle tue macchine utilizzando uno dei servizi disponibili: chrony
, systemd-timesyncd
, ntp
o ntpdate
. Esegui timedatectl
per verificare che l'orologio di sistema sia
sincronizzato. L'output di timedatectl
dovrebbe contenere lo stato seguente:
System clock synchronized: yes
Assicurati che i limiti del kernel Linux inotify
siano pari o superiori al valore minimo
Per le macchine che eseguono RHEL 9 e 8.10, i limiti del kernel Linux inotify
per le istanze utente e le osservazioni utente massime devono essere maggiori o uguali a
quanto segue:
fs.inotify.max_user_instances
:8192
fs.inotify.max_user_watches
:524288
Assicurati che questi valori siano impostati correttamente sulle macchine dei nodi:
Controlla il valore di
max_user_instances
:cat /proc/sys/fs/inotify/max_user_instances
Se necessario, aggiorna
max_user_instances
al valore minimo:echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
Controlla il valore di
max_user_watches
:cat /proc/sys/fs/inotify/max_user_watches
Se necessario, aggiorna
max_user_watches
al valore minimo:echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
Se hai aggiornato uno dei due valori, riavvia la macchina.
Best practice
Per semplificare l'installazione, ti consigliamo di configurare RHEL utilizzando un'installazione
minima con gestione headless. Inoltre, assicurati di attivare la
connessione di rete
e di utilizzare il protocollo DHCP predefinito o di fornire un indirizzo IP statico valido e
le informazioni di rete. Assicurati che la macchina possa connettersi
alle risorse esterne richieste,
come cloud.google.com
.
Se Docker non viene eseguito, controlla che il daemon Docker sia in esecuzione con questo comando:
sudo systemctl start docker