Nei cluster Anthos su Bare Metal puoi eseguire controlli preliminari per diverse situazioni:
- I cluster Anthos su Bare Metal eseguono controlli preflight quando crei o aggiorni cluster di amministrazione, ibridi o autonomi e risorse pool di nodi con
bmctl
. Se i controlli non vanno a buon fine, non vengono apportate modifiche. Puoi anche ignorare questi controlli. - Puoi eseguire un insieme limitato di controlli preliminari prima di creare i cluster utente
da un cluster di amministrazione o ibrido con il comando
kubectl
. - I cluster Anthos su Bare Metal eseguono anche controlli interni in fase preliminare quando applichi risorse Kubernetes ai cluster utente da un cluster di amministrazione o ibrido. I controlli vengono eseguiti prima che le modifiche vengano effettivamente applicate ai cluster utente interessati. Se i controlli non vanno a buon fine, non vengono apportate modifiche. Puoi anche ignorare questi controlli o eseguirli in modo esplicito.
Controlli preliminari durante la creazione dei cluster tramite bmctl
Quando crei cluster admin,
ibridi o
standalone con il comando
bmctl
, i cluster Anthos su Bare Metal eseguono automaticamente i controlli preliminari
prima che vengano apportate modifiche.
Quando i controlli vengono superati, i cluster Anthos su Bare Metal creano i cluster.
Ignora i risultati dei controlli automatici preflight
Se vuoi ignorare questi controlli automatici preliminari, puoi utilizzare il flag facoltativo --force
nel comando.
Esecuzione indipendente dei controlli preliminari
Puoi anche eseguire controlli preliminari prima di creare un cluster. Questo può aiutare a risparmiare tempo assicurandoti che le risorse della tua macchina e del nodo superino i controlli.
Il comando seguente convalida il file di configurazione del cluster specificato, ma non tenta di creare il cluster stesso:
bmctl check config --cluster CLUSTER_NAME
Questo comando controlla se le macchine e la rete sono pronte per la creazione del cluster:
bmctl check preflight --cluster CLUSTER_NAME
Tieni presente che non puoi creare cluster utente con bmctl
. Esiste un controllo preliminare per evitarlo.
Controlli preliminari per la creazione del cluster utente
I cluster utente vengono creati da un cluster di amministrazione o di un cluster ibrido esistente e utilizzi kubectl
per eseguire i controlli preliminari. Sulla base dei risultati di questi controlli, puoi determinare se ci sono errori e correggerli prima della creazione del cluster utente.
Dopo che un cluster di amministrazione o ibrido è in esecuzione e in esecuzione, puoi utilizzare kubectl
per eseguire i controlli preliminari prima di creare un cluster utente.
Crea un file di configurazione del cluster utente seguendo i passaggi descritti in Creare cluster utente in una configurazione multi-cluster
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 denominatocluster-user1
. Ecco il comandokubectl
per creare lo spazio dei nomi, dove ADMIN_KUBECONFIG specifica il percorso del file del cluster di amministrazionekubeconfig
:kubectl --kubeconfig ADMIN_KUBECONFIG create namespace cluster-user1
Carica il file della chiave privata SSH nel nuovo spazio dei nomi come secret per definire 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
Crea un nuovo file YAML del controllo preflight, con la seguente struttura. Nel campo
configYAML
, inserisci il contenuto testuale del file di configurazione del cluster utente creato al 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.
Il seguente comando
kubectl
esegue il controllo preliminare per il cluster utente, dove ADMIN_KUBECONFIG specifica il percorso del file kubeconfig del cluster di amministrazione e USER_CLUSTER_PREFLIGHT_CHECK_CONFIG specifica il percorso al file YAML del controllo preflight creato nel passaggio precedente: Ad esempio, per un cluster di amministrazione denominatokubectl --kubeconfig ADMIN_KUBECONFIG create -f USER_CLUSTER_PREFLIGHT_CHECK_CONFIG
cluster1
e una configurazione di controllo preliminare di un cluster utente denominatauser1-preflight.yaml
, il comando è: Il sistema restituisce il seguente messaggio, con l'ID job del controllo preliminare:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Esegui una query sullo stato del job di controllo preliminare utilizzando il comando
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-user1 get preflightchecks preflightcheck-g7hfo4
Se il job di controllo preflight non riesce, controlla il relativo stato, quindi controlla i log dettagliati dei job per vedere quale controllo non è andato a buon fine. Risolvi i problemi menzionati nei job di conseguenza ed esegui di nuovo i controlli.
Controlli preliminari interni sui cluster esistenti
I cluster Anthos su Bare Metal eseguono anche controlli interni in fase preliminare quando applichi risorse Kubernetes a un cluster di amministrazione o ibrido esistente. Se non ci sono controlli, i cluster Anthos su Bare Metal non apporteranno modifiche ai nodi correlati a meno che tu non abbia superato specificamente i controlli.
Ignora i controlli preliminari quando applichi le risorse Kubernetes
Per ignorare i controlli interni prima del controllo quando applichi risorse ai cluster esistenti, devi impostare il campo BypassPreflightCheck
su true
nel file YAML del 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.6.2 ....
Riattivazione dei controlli preliminari
Puoi attivare esplicitamente una nuova serie di controlli preliminari per consentire ai cluster Anthos su Bare Metal di aggiornare o creare nuovi cluster dopo la corretta verifica.
Crea un nuovo file YAML del controllo preflight con i contenuti seguenti. Compila i campi
namespace
eclusterName
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
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 al file YAML controllo preflight creato in precedenza nel passaggio 1 dei controlli preflight per i cluster utente: Ad esempio, per un cluster di amministrazione denominatokubectl --kubeconfig ADMIN_KUBECONFIG create -f CLUSTER_PREFLIGHT_CHECK_CONFIG
cluster1
e una configurazione di controllo preliminare del cluster utente denominatauser1-preflight.yaml
, il comando ia: I sistemi rispondono con l'ID job del controllo preflight:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig create -f user1-preflight.yaml
preflightcheck.baremetal.cluster.gke.io/preflightcheck-g7hfo4 created
Esegui una query sull'ID dello stato del job di controllo preliminare utilizzando il comando
kubectl
:kubectl --kubeconfig bmctl-workspace/cluster1/cluster1-kubeconfig -n cluster-cluster1 get preflightchecks preflightcheck-g7hfo4
Una volta completato correttamente il job di controllo preliminare, Cluster Anthos su Bare Metal crea il cluster e le relative risorse.
Dettagli del controllo preflight dell'installazione
I cluster Anthos su Bare Metal controllano una varietà di condizioni operative del sistema operativo, del software e della macchina durante l'esecuzione di controlli preliminari.
Per informazioni più dettagliate, consulta la Panoramica dei prerequisiti di installazione.