Configura RHEL

Per utilizzare GKE su Bare Metal, 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 GKE su Bare Metal, consulta le guide per la risoluzione dei problemi.

Prima di iniziare

Assicurati di utilizzare una versione supportata del tuo sistema operativo. GKE su Bare Metal supporta le seguenti versioni di RHEL:

  • RHEL 8.2
  • RHEL 8.3
  • RHEL 8.4
  • RHEL 8.5
  • RHEL 8.6

Assicurati di disporre del nome utente e della password di RedHat e di avere accesso root ai computer che stai configurando. Convalida il gestore di pacchetti procedendo nel seguente modo:

  1. Se non hai 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
    
  2. Verifica la disponibilità di aggiornamenti:

    sudo dnf check-update
    

    Assicurati che l'output non presenti errori e includa l'ultimo controllo della scadenza dei metadati. Ad esempio:

    Updating Subscription Management repositories.
    ...
    # Last metadata expiration check: ...
    ...
    

Configura o disabilita firewall

Il firewall può essere configurato per l'utilizzo con GKE su Bare Metal o disabilitato. Per informazioni sulla configurazione di firewall, consulta Configurare le porte con firewall nella pagina Requisiti di rete.

Le seguenti istruzioni disabilitano il firewalld.

  1. Disattiva firewalld:

    sudo systemctl stop firewalld
    sudo systemctl disable firewalld
    
  2. Controlla lo stato del firewall per assicurarti che sia disabilitato:

    sudo systemctl status firewalld | grep "Active"
    # Output
    # Active: inactive (dead)
    

Configura Docker 19.03 o versioni successive sulla tua workstation

Segui questi passaggi per installare manualmente Docker:

  1. Rimuovi qualsiasi versione Docker precedente:

    sudo dnf remove docker \
        docker-client \
        docker-client-latest \
        docker-common \
        docker-latest \
        docker-latest-logrotate \
        docker-logrotate \
        docker-engine
    
  2. Rimuovi podman-manpages:

    sudo dnf remove podman-manpages
    
  3. Installa Docker 19.03 o versioni successive:

    sudo dnf install -y yum-utils
    sudo yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo
    sudo dnf install -y --allowerasing docker-ce docker-ce-cli containerd.io
    sudo systemctl start docker
    
  4. Verifica di eseguire ora la versione 19.03 o successive:

    sudo docker version
    
  5. Confronta l'output con l'esempio seguente per assicurarti che le versioni client e server siano 19.03 e successive:

     Client: Docker Engine - Community
     Version:           19.03.13
     ...
     Server: Docker Engine - Community
      Engine:
      Version:          19.03.13
    
  6. Verifica l'esecuzione di Docker:

    docker run hello-world
    

    Dovresti vedere qualcosa di simile a questo:

    Hello from Docker!
    

    Questo messaggio indica che l'installazione sembra funzionare correttamente.

Configurare la sincronizzazione dell'ora

La sincronizzazione temporale consiste nell'impostazione degli orologi sulle macchine nodo utilizzando un riferimento temporale esterno designato. La sincronizzazione dell'ora è importante per le attività dei cluster a tempo, 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 deve contenere il seguente stato:

System clock synchronized: yes

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 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