Informazioni sui controlli preliminari

In modalità privata di Anthos puoi eseguire controlli preliminari per diverse situazioni:

  • La modalità privata di Anthos esegue controlli preflight quando crei o aggiorna cluster di amministratori o utenti e risorse pool di nodi con actl. Se i controlli non vengono superati, non verranno apportate modifiche. Puoi anche ignorare questi controlli.
  • La modalità privata di Anthos esegue controlli preliminari preliminari quando applichi le risorse Kubernetes a cluster utente da un cluster di amministrazione. I controlli vengono eseguiti prima che le modifiche vengano effettivamente applicate ai cluster utente interessati. Se i controlli non vengono superati, non verranno apportate modifiche. Puoi anche ignorare questi controlli o eseguirli in modo esplicito.

Controlli preliminari durante la creazione dei cluster tramite actl

Quando crei cluster di amministrazione o utente con il comando actl, la modalità privata di Anthos esegue automaticamente i controlli preflight prima che vengano apportate modifiche.

Una volta superati i controlli, i cluster verranno creati in modalità privata di Anthos.

Ignorare i risultati dei controlli automatici del preflight

Se vuoi bypassare questi controlli automatici del preflight, puoi utilizzare il flag facoltativo --force nel comando.

Esecuzione di controlli preliminari

Puoi anche eseguire i controlli preliminari in autonomia, prima di creare un cluster. In questo modo risparmi tempo assicurandoti che le risorse della macchina e del nodo superino i controlli.

Questo comando verifica se le macchine e la rete sono pronte per la creazione del cluster:

actl clusters baremetal check cluster CLUSTER_NAME

Controlli preliminari per la creazione dei cluster utente

I cluster utente vengono creati da un cluster di amministrazione esistente. La modalità privata di Anthos esegue automaticamente i controlli preliminari prima di apportare modifiche. Puoi anche eseguire controlli preliminari con kubectl prima di creare un cluster.

  1. Crea un file di configurazione del cluster utente seguendo il file di configurazione utente di esempio.

  2. Crea uno spazio dei nomi per il nuovo cluster utente. Ad esempio, per creare un nuovo cluster utente denominato user1, puoi creare uno spazio dei nomi denominato cluster-user1. Ecco il comando kubectl per creare lo spazio dei nomi, dove ADMIN_KUBECONFIG specifica il percorso del file kubeconfig del cluster di amministrazione:

    kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
    

  3. Carica il file della chiave privata SSH nel nuovo spazio dei nomi come secret per stabilire le tue credenziali. Ecco il comando di esempio, dove ADMIN_KUBECONFIG specifica il percorso del file del cluster di amministrazione kubeconfig e SSH_PRIVATE_KEY_FILE_PATH specifica il percorso del file della chiave privata SSH:

    kubectl --kubeconfig ADMIN_KUBECONFIG create secret generic ssh-key -n cluster-user1 --from-file=id_rsa=SSH_PRIVATE_KEY_FILE_PATH
    

  4. Crea un nuovo file YAML di controllo preliminare, con la seguente struttura. Nel campo configYAML, inserisci i contenuti testuali del file di configurazione del cluster utente che hai creato nel passaggio 1:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: PreflightCheck
    metadata:
    generateName: preflightcheck-
    namespace: cluster-user1
    spec:
    configYAML: |
    # insert user cluster config file content here.
    
  5. Il seguente comando kubectl esegue il controllo preflight per il cluster utente, dove ADMIN_KUBECONFIG specifica il percorso del file kubeconfig del cluster amministratore e USER_CLUSTER_PREFLIGHT_CHECK_CONFIG specifica il percorso del file YAML di controllo preflight creato nel passaggio precedente:

    kubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
    
    Ad esempio, per una configurazione di controllo preflight del cluster utente denominata user1-preflight.yaml, il comando è:
    kubectl --kubeconfig ADMIN_KUBECONFIG create -f user1-preflight.yaml
    
    Il sistema restituisce il seguente messaggio, con l'ID processo del controllo preliminare.
    preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created

  6. Esegui una query sullo stato del job di controllo preflight utilizzando il comando kubectl:

    kubectl --kubeconfig ADMIN_KUBECONFIG -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
    

Se il job di controllo preflight ha esito negativo, controllane lo stato e controlla i log dettagliati dei job per verificare quale controllo non è stato superato. Correggi i problemi menzionati nei job di conseguenza ed esegui di nuovo i controlli.

Controlli interni preliminari sui cluster esistenti

La modalità privata Anthos esegue anche controlli preliminari preliminari quando applichi le risorse Kubernetes Cluster a un cluster di amministrazione esistente. Se qualche controllo non va a buon fine, la modalità privata di Anthos non apporta modifiche ai nodi correlati, a meno che tu non abbia ignorato specificamente i controlli.

Ignora i controlli preliminari durante l'applicazione delle risorse Kubernetes

Per ignorare i controlli preliminari interni quando applichi risorse Cluster a un cluster di amministrazione esistente, devi impostare il campo BypassPreflightCheck su true nella risorsa cluster.

Ecco un frammento di un file YAML di configurazione del cluster, che mostra il campo bypassPreflightCheck impostato su true.

# Sample cluster config to bypass preflight check errors:

apiVersion: v1
kind: Namespace
metadata:
  name: cluster-user1
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: user1
  namespace: cluster-user1
spec:
  type: user
  bypassPreflightCheck: true
  # Anthos cluster version.
  anthosBareMetalVersion: v1.7.99
....

Riattivazione dei controlli preliminari

Puoi attivare esplicitamente una nuova serie di controlli preliminari, in modo che la modalità privata Anthos possa aggiornare o creare nuovi cluster dopo che la verifica ha avuto esito positivo.

  1. Crea un nuovo file YAML di controllo preliminare con i seguenti contenuti. Compila i campi namespace e clusterName con il nome del cluster che stai creando:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: PreflightCheck
    metadata:
    generateName: preflightcheck-
    namespace: CLUSTER_NAMESPACE
    spec:
    clusterName: CLUSTER_NAME
    

  2. Esegui il comando kubectl per eseguire il controllo preflight per il cluster, dove ADMIN_KUBECONFIG specifica il percorso del file kubeconfig cluster di amministrazione e CLUSTER_PREFLIGHT_CHECK_CONFIG specifica il percorso del file YAML di controllo preflight creato in precedenza:

    kubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
    
    Ad esempio, per una configurazione di controllo preflight del cluster utente denominata user1-preflight.yaml, il comando è:
    kubectl --kubeconfig ADMIN_KUBECONFIG create -f user1-preflight.yaml
    
    Il sistema risponde con l'ID job del controllo preflight:
    preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
    

  3. Esegui una query sull'ID stato del controllo preflight utilizzando il comando kubectl:

    kubectl --kubeconfig ADMIN_KUBECONFIG -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
    

Al termine del job di controllo preflight, la modalità privata Anthos crea il cluster e le relative risorse.

Dettagli del controllo preflight dell'installazione

La modalità privata di Anthos verifica vari sistemi operativi, software e condizioni essenziali per le macchine durante l'esecuzione dei controlli preliminari.

Per informazioni più dettagliate, consulta i Requisiti.