Scelta di un modello di deployment

Google Distributed Cloud 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. È composto dai nodi del piano di controllo e dai nodi worker. Google Distributed Cloud supporta uno o più cluster utente. I cluster utente devono contenere uno o più nodi worker che eseguono i 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 attività seguenti:

  • 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 Google Distributed Cloud 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 Google Distributed Cloud vengono eseguiti sui nodi del piano di controllo.

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

  • Credenziali SSH: utilizzate per abilitare 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à alta disponibilità (HA). Questa modalità richiede tre o più nodi del piano di controllo (numeri 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

Google Distributed Cloud supporta i seguenti modelli di deployment per soddisfare diversi requisiti:

Deployment dei cluster di amministrazione e degli utenti

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 di un deployment di cluster amministratore e cluster utente
Deployment di 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 gestire i 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 utente.

Questo modello soddisfa i seguenti requisiti:

  • Fornisce un piano di controllo centralizzato e un'API per gestire i cicli di vita dei cluster utente.
  • Permette di isolare i vari team.
  • Isolamento dei carichi di lavoro di sviluppo e produzione.
  • Non è necessario condividere le credenziali SSH e le chiavi degli account di servizio con i proprietari del cluster.
  • Puoi integrare il tuo deployment con i tuoi piani di controllo

Impronta

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

  • Cluster di amministrazione

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

    • Nodi del piano di controllo:

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

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

Deployment di cluster ibrido

Questo modello di deployment è un deployment multi-cluster specializzato. Un cluster ibrido è un cluster di amministrazione che può eseguire carichi di lavoro utente. Il tuo cluster ibrido gestisce ancora 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 un numero relativamente ridotto di risorse. Il deployment del cluster ibrido ti consente di recuperare la capacità inutilizzata su queste macchine perché ti consente di eseguire i 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 su 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 ibridi dei cluster eseguono i carichi di lavoro degli utenti all'interno del cluster di amministrazione e ciò potenzialmente espone i dati sensibili del cluster di amministrazione ai carichi di lavoro degli utenti.

Impronta

Un deployment di cluster ibrido richiede i seguenti nodi:

  • Cluster ibrido

    • Nodi del piano di controllo:

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

      • Uno o più nodi worker per gli ambienti 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 ogni cluster utente in modo indipendente.

    • Nodi del piano di controllo:

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

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

Deployment del cluster autonomo

Questo modello di deployment include un unico 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 presenta 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 elevati delle risorse.

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 dell'account di servizio Google Cloud

Utilizza questo modello se soddisfi una delle seguenti condizioni:

  • Gestisci ogni cluster in modo indipendente.
  • Hai un numero limitato di nodi worker.
  • 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 in rete come le zone demilitarizzate (DMZ)
  • I cluster vengono eseguiti in località perimetrali

Impronta

Un deployment di cluster autonomo richiede i seguenti nodi:

  • Nodi del piano di controllo:

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

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