Puoi diagnosticare o controllare i cluster per eseguire il debug dei problemi e acquisire uno snapshot dello stato del cluster. Inoltre, se l'installazione è riuscita parzialmente, ma il cluster restituisce errori o non ha le prestazioni adeguate, puoi provare a reimpostare il cluster.
Diagnostica dei cluster con bmctl check cluster
in corso...
Puoi acquisire lo stato dei cluster creati con il comando bmctl check cluster
. I flag per il comando ti consentono di scegliere l'ambito diagnostico del comando in modo da ottenere informazioni dettagliate. Il comando bmctl check cluster
non può essere utilizzato nei cluster utente.
Le informazioni di diagnostica possono aiutarti a rilevare i problemi e a eseguire il debug dei deployment in modo più efficace. Il comando acquisisce tutti i file di configurazione di cluster e nodi pertinenti per l'ambito definito e poi pacchettizza le informazioni in un singolo archivio tar.
bmctl check cluster --snapshot --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG
Questo comando genera un archivio tar che include informazioni di debug pertinenti da tutti i componenti e le macchine di sistema nel cluster specificato.
ADMIN_KUBECONFIG
specifica il percorso del file kubeconfig e CLUSTER_NAME
specifica il nome del cluster.
Puoi modificare l'ambito delle informazioni di diagnostica raccolte con i seguenti flag di comando:
- Il flag
--snapshot-scenario all
aumenta l'ambito dello snapshot di diagnostica in modo da includere tutti i pod nel cluster specificato:
bmctl check cluster --snapshot --snapshot-scenario all --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG
- Il flag
--snapshot-dry-run
funziona in combinazione con il flag--snapshot-config string
. Utilizza il flag--snapshot-dry-run
per generare un file di configurazione che puoi modificare per definire un ambito diagnostico personalizzato. L'ambito può includere pod, spazi dei nomi o comandi nodo specifici.
Dopo aver modificato il file di output creato con il flag --snapshot-dry-run
, puoi utilizzarlo come input per diagnosticare l'ambito specifico con il flag --snapshot-config string
, descritto di seguito. Se ometti questo flag, viene applicata una configurazione predefinita.
bmctl check cluster --snapshot --snapshot-dry-run --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG
- Il flag
--snapshot-config
indica al comandobmctl
di utilizzare le opzioni dell'ambito specificate in un file di configurazione degli snapshot. In genere, crei il file di configurazione dello snapshot con il flag--snapshot-dry-run
.
bmctl check cluster --snapshot --snapshot-config SNAPSHOT_CONFIG_FILE --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG
Crea uno snapshot per l'installazione/l'upgrade bloccati del cluster di amministrazione
Quando installi cluster di amministrazione/ibridi/autonome, se bmctl è bloccato al seguente output
- In attesa che il cluster kubeconfig sia pronto
- In attesa che il cluster sia pronto
- In attesa che i pool di nodi siano pronti
o quando esegui l'upgrade di cluster di amministrazione/ibridi/standalone,
- In attesa del completamento dell'upgrade
puoi eseguire il comando seguente per creare uno snapshot utilizzando il cluster bootstrap.
bmctl check cluster --snapshot --kubeconfig <var>WORKSPACE_DIR</var>/.kindkubeconfig --cluster <var>CLUSTER_NAME</var>
Reimpostazione dei cluster con bmctl reset cluster
in corso...
Se l'installazione di un cluster non va a buon fine, puoi provare a ripristinare lo stato pulito dei nodi reimpostandolo. Quindi puoi reinstallare il cluster dopo aver apportato modifiche alla configurazione. Il comando bmctl reset cluster
non può essere utilizzato nei cluster utente.
Per reimpostare un cluster, esegui il comando seguente:
bmctl reset --cluster CLUSTER_NAME
Il comando di reimpostazione viene applicato all'intero cluster. Non esiste un'opzione per scegliere come target un sottoinsieme di nodi in un cluster.
L'output del comando è simile a questo esempio:
bmctl reset -c cluster1 Creating bootstrap cluster... OK Deleting GKE Hub member admin in project my-gcp-project... Successfully deleted GKE Hub member admin in project my-gcp-project Loading images... OK Starting reset jobs... Resetting: 1 Completed: 0 Failed: 0 ... Resetting: 0 Completed: 1 Failed: 0 Flushing logs... OK
Reimposta dettagli cluster
Durante l'operazione di reimpostazione, bmctl
tenta di eliminare la registrazione dell'abbonamento all'hub GKE, quindi pulisce i nodi interessati.
Durante il reset, vengono eliminati anche i supporti di archiviazione e i dati da anthos-system StorageClass
.
Per tutti i nodi, bmctl esegue kubeadm reset
, rimuove le interfacce del tunnel utilizzate per il networking del cluster ed elimina le seguenti directory:
- /etc/kubernetes
- /etc/cni/net.d
- /root/.kube
- /var/lib/kubelet
Per i nodi del bilanciatore del carico, bmctl
esegue anche le seguenti azioni:
- Disattiva i servizi
keepalived
ehaproxy
- Elimina i file di configurazione per
keepalived
ehaproxy
Lo strumento di reimpostazione prevede che il file di configurazione del cluster si trovi nella seguente posizione all'interno della directory di lavoro attuale:
bmctl-workspace/cluster name/cluster name.yaml