Comprendi l'impatto degli errori in GKE su Bare Metal

GKE su Bare Metal è progettato per limitare l'ambito degli errori e per dare la priorità alle funzionalità fondamentali per la continuità aziendale. Questo documento spiega come viene influenzata la funzionalità dei cluster in caso di errore. Queste informazioni possono aiutarti a dare la priorità alle aree da risolvere in caso di problemi.

La funzionalità di base di GKE su Bare Metal include le seguenti categorie:

  • Esegui carichi di lavoro: i carichi di lavoro esistenti possono continuare a essere eseguiti. Questa è la considerazione più importante per mantenere la continuità aziendale. Anche se il cluster ha un problema, i carichi di lavoro esistenti potrebbero continuare a essere eseguiti senza interruzioni.
  • Gestione dei carichi di lavoro: puoi creare, aggiornare ed eliminare i carichi di lavoro. Questa è la seconda considerazione più importante per scalare i carichi di lavoro quando il traffico aumenta, anche se il cluster ha un problema.
  • Gestione dei cluster utente: puoi gestire i nodi, aggiornare, eseguire l'upgrade e l'eliminazione dei cluster utente. Questo aspetto è meno importante rispetto alle considerazioni sul ciclo di vita dell'applicazione. Se è disponibile capacità per i nodi esistenti, l'impossibilità di modificare i cluster utente non influisce sui carichi di lavoro degli utenti.
  • Gestisci i cluster di amministrazione: puoi aggiornare ed eseguire l'upgrade del cluster di amministrazione.
    • Per i deployment che utilizzano cluster di amministrazione e utente separati, questa è la considerazione meno importante, perché il cluster di amministrazione non ospita carichi di lavoro utente. Se si verifica un problema nel cluster di amministrazione, i carichi di lavoro delle applicazioni su altri cluster continuano a essere eseguiti senza interruzioni.
    • Se utilizzi altri modelli di deployment, ad esempio ibrido o autonomo, il cluster di amministrazione esegue i carichi di lavoro delle applicazioni. Se il cluster di amministrazione presenta un problema e il piano di controllo non è attivo, non puoi gestire neanche i carichi di lavoro delle applicazioni o i componenti del cluster utente.

Le seguenti sezioni utilizzano queste categorie di funzionalità di base per descrivere l'impatto di tipi specifici di scenari di errore. Quando si verifica un'interruzione nell'ambito di uno scenario di errore, viene indicata anche la durata (ordine) dell'interruzione, se possibile.

Errori dei nodi

Un nodo in GKE su Bare Metal potrebbe non funzionare più o non essere raggiungibile sulla rete. A seconda del pool di nodi e del cluster di cui fa parte la macchina in errore, esistono diverse modalità di errore.

Nodo piano di controllo

La tabella seguente illustra il comportamento dei nodi che fanno parte del piano di controllo in GKE su Bare Metal:

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Nessuna interruzione Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto)
Spiegazione Se l'errore dei nodi interessa il singolo nodo del piano di controllo in un cluster utente a non alta disponibilità o se interessa almeno la metà dei nodi del piano di controllo in un cluster utente ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster utente viene perso. Se l'errore dei nodi interessa il nodo del piano di controllo singolo in un cluster di amministrazione non ad alta disponibilità o interessa almeno la metà dei nodi del piano di controllo in un cluster di amministrazione ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster di amministrazione è andato perso. Se l'errore dei nodi interessa il nodo del piano di controllo singolo in un cluster di amministrazione non ad alta disponibilità o interessa almeno la metà dei nodi del piano di controllo in un cluster di amministrazione ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster di amministrazione è andato perso.
Recupero Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum. Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum. Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum.
Prevenzione Esegui il deployment dei cluster utente in modalità ad alta disponibilità per ridurre al minimo la possibilità di interruzioni. Esegui il deployment dei cluster di amministrazione in modalità ad alta disponibilità per ridurre al minimo la possibilità di interruzioni. Esegui il deployment dei cluster di amministrazione in modalità ad alta disponibilità per ridurre al minimo la possibilità di interruzioni.

Nodo del bilanciatore del carico

La tabella seguente illustra il comportamento dei nodi che ospitano i bilanciatori del carico in GKE su Bare Metal. Queste indicazioni si applicano solo ai bilanciatori del carico in bundle con la modalità di livello 2. Per il bilanciamento del carico manuale, consulta le modalità di errore dei bilanciatori del carico esterni:

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Possibile interruzione (varia) Possibile interruzione (varia) Possibile interruzione (varia) Possibile interruzione (varia)
Spiegazione Se i carichi di lavoro esterni si basano sul bilanciatore del carico del piano dati per comunicare con i carichi di lavoro nel cluster e hai un solo nodo del bilanciatore del carico, si verifica un'interruzione. L'indirizzo IP virtuale del piano di controllo del cluster utente si trova su un nodo del bilanciatore del carico. Se il pool di nodi del bilanciatore del carico del cluster utente non è ad alta disponibilità, si verifica un'interruzione. L'indirizzo IP virtuale del piano di controllo del cluster di amministrazione si trova su un nodo del bilanciatore del carico. Se il pool di nodi del bilanciatore del carico del cluster di amministrazione non è ad alta disponibilità, si verifica un'interruzione. L'indirizzo IP virtuale del piano di controllo del cluster di amministrazione si trova su un nodo del bilanciatore del carico. Se il pool di nodi del bilanciatore del carico del cluster di amministrazione non è ad alta disponibilità, si verifica un'interruzione.
Recupero

Se sono presenti più nodi del bilanciatore del carico, il failover MetalLB si verifica entro pochi secondi.

In caso contrario, valuta la possibilità di eseguire il deployment di altri nodi del bilanciatore del carico.

In caso di alta disponibilità, il failover è automatico e segue l'ordine dei secondi.

In caso contrario, valuta la possibilità di eseguire il deployment di altri nodi del bilanciatore del carico

In caso di alta disponibilità, il failover è automatico e segue l'ordine dei secondi.

In caso contrario, valuta la possibilità di eseguire il deployment di altri nodi del bilanciatore del carico.

In caso di alta disponibilità, il failover è automatico e segue l'ordine dei secondi.

In caso contrario, valuta la possibilità di eseguire il deployment di altri nodi del bilanciatore del carico.

Prevenzione Per ridurre al minimo la possibilità di interruzioni, esegui il deployment di pool di nodi del bilanciatore del carico in modalità ad alta disponibilità. Per ridurre al minimo la possibilità di interruzioni, esegui il deployment di pool di nodi del bilanciatore del carico in modalità ad alta disponibilità. Per ridurre al minimo la possibilità di interruzioni, esegui il deployment di pool di nodi del bilanciatore del carico in modalità ad alta disponibilità. Per ridurre al minimo la possibilità di interruzioni, esegui il deployment di pool di nodi del bilanciatore del carico in modalità ad alta disponibilità.

Nodo worker

La tabella seguente illustra il comportamento dei nodi worker in GKE su Bare Metal:

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Possibile interruzione (ordine di secondi) Nessuna interruzione Nessuna interruzione Nessuna interruzione
Spiegazione

Gli elementi Pods eseguiti sul nodo in errore vengono interrotti e vengono ripianificati automaticamente su altri nodi integri con un timeout di eliminazione predefinito di 5 minuti.

Se le applicazioni utente hanno una capacità di carico di lavoro di riserva e sono distribuite su più nodi, l'interruzione non è osservabile dai client che implementano i nuovi tentativi.

Pods vengono riavviati automaticamente sui nodi integri.

Se il cluster non ha capacità di riserva, l'interruzione potrebbe durare fino a quando non vengono aggiunti nuovi nodi al cluster.

Recupero Se il cluster non ha capacità di riserva, devi eseguire il deployment di più nodi distribuiti in più zone di errore e spostare i carichi di lavoro non riusciti nei nuovi nodi.
Prevenzione

Esegui il deployment di nodi distribuiti in più zone di errore.

Esegui il deployment di carichi di lavoro con più repliche distribuite in più zone di errore per ridurre al minimo la possibilità di interruzioni.

Errore di archiviazione

L'archiviazione in GKE su Bare Metal potrebbe non funzionare più o non essere raggiungibile sulla rete. A seconda dello spazio di archiviazione non funzionante, sono disponibili diverse modalità di errore.

etcd

I contenuti di etcd potrebbero danneggiarsi a causa di uno spegnimento non corretto del nodo o di un errore sottostante dello spazio di archiviazione. La seguente tabella illustra il comportamento della funzionalità di base a causa di errori etcd:

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Nessuna interruzione Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto)
Spiegazione Se i carichi di lavoro esistenti non si basano sul piano di controllo Kubernetes, continuano a funzionare senza interruzioni. Se l'errore etcd in un singolo cluster utente del piano di controllo ha esito negativo o ha esito negativo per almeno la metà dei nodi del piano di controllo in un cluster utente ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster utente viene perso. Se l'errore etcd in un cluster di amministrazione del piano di controllo singolo o se ha esito negativo per almeno la metà dei nodi del piano di controllo in un cluster di amministrazione ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster di amministrazione è andato perso. Se l'errore etcd in un cluster di amministrazione del piano di controllo singolo o se ha esito negativo per almeno la metà dei nodi del piano di controllo in un cluster di amministrazione ad alta disponibilità, si verifica un'interruzione. Il quorum del piano di controllo del cluster di amministrazione è andato perso.
Recupero Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum. Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum. Per ulteriori informazioni, vedi Come recuperare dalla perdita del quorum.
Prevenzione Per ridurre al minimo la possibilità di interruzioni, esegui il deployment dei cluster utente in modalità ad alta disponibilità. Per ridurre al minimo la possibilità di interruzioni, esegui il deployment dei cluster di amministrazione in modalità ad alta disponibilità. Per ridurre al minimo la possibilità di interruzioni, esegui il deployment dei cluster di amministrazione in modalità ad alta disponibilità.

Applicazione utente PersistentVolume

La seguente tabella descrive il comportamento della funzionalità di base a causa dell'errore di un PersistentVolume:

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Possibile interruzione (sconosciuto) Nessuna interruzione Nessuna interruzione Nessuna interruzione
Spiegazione I carichi di lavoro che utilizzano l'errore PersistentVolume are affected.
Recupero
Prevenzione Per ridurre al minimo la possibilità di interruzioni, esegui il deployment del carico di lavoro degli utenti in modalità ad alta disponibilità.

Disco danneggiato a Fluent Bit

Il danneggiamento di un disco Fluent Bit non influisce sulle funzionalità di base, ma sulla capacità di raccogliere e ispezionare i log su Google Cloud.

A volte l'evento SIGSEGV può essere osservato dai log di stackdriver-log-forwarder. Questo errore potrebbe essere causato dai log danneggiati nel buffer sul disco.

Fluent Bit ha un meccanismo per filtrare e rilasciare i blocchi rotti. Questa funzionalità è disponibile nella versione fluent-bit (v1.8.3) utilizzata in GKE su Bare Metal.

IP su LoadBalancer

Se tutti gli indirizzi IP nei pool assegnati sono attualmente occupati, i servizi LoadBalancer appena creati non possono acquisire un indirizzo IP LoadBalancer. Questo scenario influisce sulla capacità dei client del servizio di comunicare con i servizi LoadBalancer.

Per risolvere il problema dopo l'esaurimento di questo indirizzo IP, assegna altri indirizzi IP al pool di indirizzi modificando la risorsa personalizzata del cluster.

Scadenza del certificato

GKE su Bare Metal genera un'autorità di certificazione (CA) autofirmata durante il processo di installazione del cluster. La CA ha una scadenza di 10 anni ed è responsabile della generazione dei certificati, che scadono dopo un anno. Ruota i certificati regolarmente per evitare tempi di inattività del cluster. Per ruotare i certificati, puoi eseguire l'upgrade del cluster, che è il metodo consigliato. Se non riesci a eseguire l'upgrade del cluster, puoi eseguire una rotazione delle CA on demand. Per ulteriori informazioni sui certificati cluster, consulta Certificati e requisiti PKI nella documentazione di Kubernetes.

Se i certificati del cluster sono scaduti, devono essere rinnovati manualmente.

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Nessuna interruzione Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto)
Spiegazione Se i carichi di lavoro degli utenti non comunicano con i componenti del piano di controllo Kubernetes, non ci saranno interruzioni. Se le autorità di certificazione per i cluster utente scadono, si verifica un'interruzione. Se le autorità di certificazione per i cluster di amministrazione scadono, si verificherà un'interruzione. Se le autorità di certificazione per i cluster utente scadono, si verifica un'interruzione.
Recupero

Segui i passaggi per rinnovare manualmente i certificati sul cluster utente.

Segui i passaggi per rinnovare manualmente i certificati sul cluster utente.

Segui i passaggi per rinnovare manualmente i certificati sul cluster utente.

Prevenzione La configurazione monitora la scadenza del certificato. Una metrica di esempio kubelet_certificate_manager_server_expiration_seconds è disponibile nell'elenco delle metriche.

Errori di upgrade

Esegui carichi di lavoro Gestisci carichi di lavoro Gestione dei cluster utente Gestione dei cluster di amministrazione
Interruzione (durata) Nessuna interruzione Nessuna interruzione Possibile interruzione (sconosciuto) Possibile interruzione (sconosciuto)
Spiegazione

Se l'upgrade non riesce sul piano di controllo del cluster utente, NON si verificano interruzioni dei carichi di lavoro esistenti.

Se l'upgrade non va a buon fine su un determinato nodo worker, i carichi di lavoro su quel nodo verranno svuotati e spostati in altri nodi integri se è disponibile ulteriore capacità sui nodi integri.

L'upgrade verrà interrotto se l'upgrade di uno qualsiasi dei nodi del piano di controllo non riesce. Il cluster è ancora funzionale se l'upgrade non va a buon fine se il cluster utente è ad alta disponibilità. Se l'upgrade non va a buon fine sul piano di controllo del cluster di amministrazione, si verifica un'interruzione fino al suo completamento. Se l'upgrade non va a buon fine sul piano di controllo del cluster di amministrazione, si verifica un'interruzione fino al suo completamento.
Recupero Impossibile eseguire l'upgrade. Per ulteriori informazioni, consulta la pagina su come diagnosi dei problemi di upgrade e ripristino. Impossibile eseguire l'upgrade. Per ulteriori informazioni, consulta la pagina su come diagnosi dei problemi di upgrade e ripristino.
Prevenzione Per ulteriori informazioni, scopri come creare un backup prima di eseguire l'upgrade. Per ulteriori informazioni, scopri come creare un backup prima di eseguire l'upgrade.

Passaggi successivi

Per ulteriori informazioni sui problemi noti dei prodotti e sulle soluzioni alternative, consulta Problemi noti di GKE su Bare Metal.