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 relativi ai requisiti di Google Distributed Cloud, consulta i problemi noti.
Prima di iniziare
Assicurati di utilizzare una versione supportata del sistema operativo e un kernel Ubuntu Hardware Enablement (HWE). Per un elenco delle versioni supportate, vedi Seleziona il tuo sistema operativo.
Attiva compilatore BPF Just In Time
Nel kernel del sistema operativo deve essere attivata l'opzione del compilatore JIT BPF (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
Utilizza il seguente comando per verificare il funzionamento del gestore di pacchetti correttamente:
sudo apt-get check
L'output non dovrebbe mostrare errori ed essere simile all'esempio seguente:
# Reading package lists... Done # Building dependency tree # Reading state information... Done
Disattivare Uncomplicated Firewall (UFW)
Disattiva
ufw
:sudo ufw disable
Verifica che
ufw
sia disattivato:sudo ufw status # Status: inactive
Configura Docker sulla workstation
Google Distributed Cloud ti aiuta a installare Docker sulle tue macchine bare metal nel i seguenti scenari:
- Se sulle macchine bare metal non è installato Docker,
bmctl
installa la versione 20.10.0 o successive. - Se sulle macchine bare metal è installato Docker 19.03.5 o versioni precedenti,
bmctl
esegue l'upgrade di Docker alla versione 20.10.0 o successive.
Per installare manualmente Docker, segui questi passaggi:
Rimuovi eventuali versioni precedenti di Docker:
sudo apt-get remove docker docker-engine docker.io containerd runc
Aggiorna il gestore di pacchetti:
sudo apt-get update
Installa Docker 20.10.0 o versioni successive:
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common \ docker.io
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+ :
Client: Docker Engine - Community Version: 25.0.3 ... Server: Docker Engine - Community Engine: Version: 25.0.3
Configurare la sincronizzazione dell'ora
La sincronizzazione dell'ora consiste nell'impostare gli orologi sulle macchine dei nodi utilizzando un riferimento orario esterno designato. La sincronizzazione dell'ora è importante
le attività del cluster time-senttive, come il logging degli eventi e la raccolta di metriche.
Il kernel della tua macchina nodo controlla l'orologio nei container in esecuzione
nodo. Per garantire una corretta sincronizzazione dell'ora, installa un protocollo degli orari di rete
(NTP) sulle tue macchine, utilizzando uno qualsiasi dei servizi disponibili:
chrony
, systemd-timesyncd
ntp
o ntpdate
. Esegui timedatectl
per verificare che l'orologio di sistema sia
sincronizzati. 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 Ubuntu 22.04, limiti del kernel Linux inotify
per il numero massimo di istanze e orologi utente deve essere maggiore o uguale al
seguenti:
fs.inotify.max_user_instances
:8192
fs.inotify.max_user_watches
:524288
Per assicurarti 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
con il 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 valori, riavvia la macchina.