Scelta di un modello di deployment

GKE su Bare Metal supporta più modelli di deployment per soddisfare diverse esigenze di disponibilità, isolamento e utilizzo delle risorse. Questa pagina definisce i concetti condivisi da tutti i modelli di deployment e descrive ciascun modello di deployment.

Cluster utenti

Un cluster utente è un cluster Kubernetes che esegue i carichi di lavoro containerizzati. È costituito da nodi del piano di controllo e nodi worker. GKE su Bare Metal supporta uno o più cluster utente. I cluster utente devono contenere uno o più nodi worker che eseguono carichi di lavoro utente.

Cluster di amministrazione

Un cluster di amministrazione è un cluster Kubernetes che gestisce uno o più cluster utente. Il cluster di amministrazione può eseguire le seguenti attività:

  • Creazione di cluster utente
  • Esegui l'upgrade dei cluster utente
  • Aggiorna cluster utente
  • Elimina cluster utente

Per creare un cluster utente, il cluster di amministrazione configura i componenti Anthos on bare metal sul piano di controllo e sui nodi worker del cluster utente. Il cluster di amministrazione ha solo nodi del piano di controllo perché i componenti GKE su Bare Metal vengono eseguiti sui nodi del piano di controllo.

Il cluster di amministrazione contiene i seguenti tipi di dati sensibili:

  • Credenziali SSH: utilizzate per attivare l'installazione remota
  • Chiavi dell'account di servizio Google Cloud: utilizzate per accedere a funzionalità come Container Registry

Per proteggere i dati sensibili, limita l'accesso al cluster di amministrazione.

Alta disponibilità

Puoi eseguire cluster di amministrazione o utente in modalità ad alta disponibilità. Questa modalità richiede tre o più nodi del piano di controllo (numero dispari) in esecuzione nel cluster. Se esegui un cluster in modalità non ad alta disponibilità, il cluster richiede un solo nodo del piano di controllo.

Per evitare di avere un single point of failure, utilizza la modalità ad alta disponibilità per i deployment di produzione. Utilizza la modalità non ad alta disponibilità per ambienti non mission critical, ad esempio un ambiente di test, in cui puoi ricreare il cluster in caso di errore del nodo del piano di controllo singolo. Un cluster utente ad alta disponibilità deve avere due o più nodi worker in caso di errore di un nodo worker.

Quando esegui l'upgrade dei cluster, un deployment ad alta disponibilità riduce anche il rischio che il cluster diventi inaccessibile in caso di errore.

Modelli di deployment

GKE su Bare Metal supporta i seguenti modelli di deployment per soddisfare diversi requisiti:

Deployment dei cluster utente e di amministrazione

Utilizza questo modello di deployment se nello stesso data center sono presenti più cluster che vuoi gestire da una posizione centralizzata e per deployment più grandi che richiedono l'isolamento tra team diversi o tra carichi di lavoro di sviluppo e produzione.

Diagramma del deployment di un cluster di amministrazione e di un cluster utente
Deployment dei cluster utente e di amministrazione ad alta disponibilità (fai clic per ingrandire)

Questo modello di deployment è costituito dai seguenti cluster:

  • Un cluster di amministrazione: il punto di gestione centrale che fornisce un'API per la gestione dei cluster utente. Il cluster di amministrazione esegue solo i componenti di gestione.
  • Uno o più cluster utente: contengono i nodi del piano di controllo e i nodi worker che eseguono i carichi di lavoro degli utenti.

Questo modello soddisfa i seguenti requisiti:

  • Fornisce un'API e un piano di controllo centralizzati per gestire i cicli di vita dei cluster utente.
  • Fornisce l'isolamento tra team diversi.
  • Fornisce l'isolamento tra i carichi di lavoro di sviluppo e produzione.
  • Non è necessario condividere le credenziali SSH e le chiavi degli account di servizio con i proprietari dei cluster.
  • Puoi integrare il deployment con i tuoi piani di controllo

Impronta

Il deployment di cluster di amministrazione e utente richiede i seguenti nodi:

  • Cluster di amministrazione

    • Un nodo del piano di controllo per non ad alta disponibilità
    • Tre o più nodi del piano di controllo per l'alta disponibilità
  • Cluster utente: puoi configurare l'alta disponibilità per ciascun cluster utente in modo indipendente.

    • Nodi del piano di controllo:

      • Un nodo del piano di controllo per non ad alta disponibilità
      • Tre o più nodi del piano di controllo per l'alta disponibilità
    • Nodi worker:

      • Uno o più nodi worker per non ad alta disponibilità
      • Due o più nodi worker per l'alta disponibilità

Deployment di cluster ibrido

Questo modello è un deployment multi-cluster specializzato. Un cluster ibrido è un cluster di amministrazione che può eseguire carichi di lavoro degli utenti. Il cluster ibrido continua a gestire cluster utente aggiuntivi.

Diagramma del deployment di un cluster autonomo
Deployment di cluster ibridi ad alta disponibilità (fai clic per ingrandire)

Caratteristiche di questo modello:

  • L'allocazione di un set di macchine per un cluster di amministrazione è spesso uno spreco di risorse perché i cluster di amministrazione utilizzano relativamente poche risorse. Il deployment del cluster ibrido ti consente di recuperare la capacità inutilizzata su queste macchine perché ti consente di eseguire carichi di lavoro utente all'interno del cluster di amministrazione.
  • Il cluster di amministrazione contiene dati sensibili come le credenziali SSH (utilizzate dal cluster di amministrazione per gestire i cluster utente sulle macchine remote) e le chiavi dell'account di servizio Google Cloud (utilizzate dal cluster di amministrazione per accedere ai servizi Google Cloud come Cloud Storage). I deployment di cluster ibridi eseguono carichi di lavoro degli utenti all'interno del cluster di amministrazione, esponendo potenzialmente i dati sensibili del cluster ai carichi di lavoro degli utenti.

Impronta

Il deployment di un cluster ibrido richiede i seguenti nodi:

  • Cluster ibrido

    • Nodi del piano di controllo:

      • Un nodo del piano di controllo per non ad alta disponibilità
      • Tre o più nodi del piano di controllo per l'alta disponibilità
    • Nodi worker:

      • Uno o più nodi worker per non ad alta disponibilità
      • Due o più nodi worker per l'alta disponibilità e a seconda del tipo di carico di lavoro
  • Cluster utente: puoi configurare l'alta disponibilità per ciascun cluster utente in modo indipendente.

    • Nodi del piano di controllo:

      • Un nodo del piano di controllo per non ad alta disponibilità
      • Tre o più nodi del piano di controllo per l'alta disponibilità
    • Nodi worker:

      • Uno o più nodi worker per non ad alta disponibilità
      • Due o più nodi worker per l'alta disponibilità

Deployment di cluster autonomi

Questo modello di deployment ha un singolo cluster che funge da cluster utente e da cluster di amministrazione.

Diagramma del deployment di un cluster autonomo
Deployment di cluster autonomi ad alta disponibilità (fai clic per ingrandire)

Questo modello offre i seguenti vantaggi:

  • Non richiede un cluster di amministrazione separato
  • Supporta il profilo perimetrale, che ha ridotto in modo significativo i requisiti delle risorse di sistema ed è consigliato per i dispositivi periferici con vincoli relativi alle risorse elevati.

Questo modello presenta alcuni compromessi in termini di sicurezza, perché i carichi di lavoro vengono eseguiti su un cluster con i seguenti dati sensibili:

  • Credenziali SSH
  • Chiavi degli account di servizio Google Cloud

Utilizza questo modello se soddisfi una delle seguenti condizioni:

  • Puoi gestire ogni cluster in modo indipendente.
  • Hai un numero ridotto di nodi worker.
  • Tu supporti un solo team.
  • Esegui un singolo tipo di carico di lavoro.

Questo modello funziona bene nelle seguenti situazioni:

  • Ogni cluster è gestito in modo indipendente con chiavi SSH e credenziali Google Cloud diverse
  • I cluster vengono eseguiti in partizioni isolate di rete come le zone demilitarizzate (DMZ)
  • I cluster vengono eseguiti in località perimetrali

Impronta

Il deployment di un cluster autonomo richiede i seguenti nodi:

  • Nodi del piano di controllo:

    • Un nodo del piano di controllo per non ad alta disponibilità
    • Tre o più nodi del piano di controllo per l'alta disponibilità
  • Nodi worker:

    • Uno o più nodi worker per non ad alta disponibilità
    • Due o più nodi worker per l'alta disponibilità