Per utilizzare Google Distributed Cloud, devi configurare il sistema operativo di base delle macchine nodo. 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 per la risoluzione dei problemi.
Prima di iniziare
Assicurati di utilizzare una versione supportata del sistema operativo. Per un elenco delle versioni supportate, vedi Selezionare il sistema operativo.
Attiva compilatore BPF Just In Time
Nel kernel del tuo sistema operativo deve essere abilitata l'opzione del compilatore BPF Just In Time (CONFIG_BPF_JIT=y
).
Per verificare se questa opzione è abilitata, esegui questo comando:
grep CONFIG_BPF_JIT /boot/config-$(uname -r)
Convalida del gestore di pacchetti
Assicurati di disporre del nome utente e della password RedHat e di avere accesso root alle macchine che stai configurando. Convalida il gestore di pacchetti seguendo questi passaggi:
Se non hai ancora registrato il tuo sistema operativo, registrati a 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 per la scadenza dei metadati. Ad esempio:
Updating Subscription Management repositories. ... # Last metadata expiration check: ... ...
Configura o disattiva firewall
Firewalld può essere configurato per l'uso con Google Distributed Cloud o disabilitato. Per informazioni sulla configurazione di firewall, consulta Configurare le porte protette da firewall nella pagina Requisiti di rete.
Le seguenti istruzioni hanno disattivato il firewall.
Disabilitazione del firewall:
sudo systemctl stop firewalld sudo systemctl disable firewalld
Controlla lo stato di firewalld per assicurarti che sia disabilitato:
sudo systemctl status firewalld | grep "Active" # Output # Active: inactive (dead)
Configura Docker sulla workstation
Segui questi passaggi per installare manualmente Docker:
Rimuovi qualsiasi versione precedente 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 o versioni successive:
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 eseguire la versione 20.10.0 o successive:
sudo docker version
Confronta l'output con l'esempio seguente per assicurarti che le versioni client e 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 le esecuzioni di Docker:
docker run hello-world
Il risultato dovrebbe essere 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'impostare gli orologi sulle macchine nodo, utilizzando
un riferimento temporale esterno designato. La sincronizzazione dell'ora è importante per le attività del cluster con sentenza temporale, come il logging degli eventi e la raccolta di 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 il seguente stato:
System clock synchronized: yes
Assicurati che i limiti inotify
del kernel Linux siano uguali o superiori al minimo
Per le macchine che eseguono RHEL 9, i limiti del kernel Linux inotify
per il numero massimo di istanze utente e gli orologi utente devono essere maggiori o uguali al seguente:
fs.inotify.max_user_instances
:8192
fs.inotify.max_user_watches
:524288
Assicurati che questi valori siano impostati correttamente sulle tue macchine nodo:
Verifica il valore di
max_user_instances
:cat /proc/sys/fs/inotify/max_user_instances
Se necessario, aggiorna
max_user_instances
impostandolo sul valore minimo:echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
Verifica il valore di
max_user_watches
:cat /proc/sys/fs/inotify/max_user_watches
Se necessario, aggiorna
max_user_watches
impostandolo sul 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 la gestione headless. Inoltre, assicurati di abilitare la connessione di rete e di utilizzare il protocollo DHCP predefinito o di fornire un indirizzo IP statico e valido e le informazioni di rete. Assicurati che la macchina possa connettersi alle risorse esterne richieste, ad esempio cloud.google.com
.
Se Docker non riesce a essere eseguito, verifica che il daemon Docker sia in esecuzione con il seguente comando:
sudo systemctl start docker