Servizi multi-cluster


Questa pagina fornisce una panoramica di come GKE multi-cluster Services (MCS). Per scoprire come utilizzare MCS, consulta Configurazione di servizi multi-cluster.

Panoramica di MCS

Kubernetes familiare Servizio consente di scoprire e accedere a un Servizio all'interno ai confini di un singolo cluster Kubernetes. Tuttavia, a volte potresti voler suddividere le applicazioni in più cluster per gestire la gestione dello stato, requisiti di scalabilità, disponibilità e sovranità dei dati. Con MCS, puoi per creare applicazioni Kubernetes distribuite su più cluster.

MCS è un servizio di rilevamento e chiamata tra cluster meccanismo di attenzione per Google Kubernetes Engine (GKE) che sfrutta il servizio esistente . I servizi abilitati con questa funzionalità sono rilevabili e accessibili in cluster con un IP virtuale, in modo da rispecchiare il comportamento Servizio ClusterIP accessibili in un cluster. Proprio come i servizi esistenti, MCS è compatibile con le API aperte e basate sulla community, per garantire che i tuoi carichi di lavoro rimangano portabile.

MCS è una funzionalità di GKE. MCS configura zone e servizi Cloud DNS record per ogni servizio esportato nei tuoi cluster del parco risorse. Un parco risorse consente di raggruppare e normalizzare logicamente i cluster GKE, semplificando l'amministrazione dell'infrastruttura e consentendo l'uso di funzionalità multi-cluster come MCS. Per saperne di più sui vantaggi dei parchi risorse e su come crearli, consulta la documentazione sulla gestione del parco risorse.

I servizi esportati, indipendentemente dal tipo, hanno sempre un record Cloud DNS, mentre i servizi di tipo headless esportati hanno record per ogni pod di backend con un nome host, inclusi i pod negli oggetti StatefulSet. L'utilizzo di Cloud DNS comporta costi aggiuntivi. La fatturazione avviene in base a Prezzi di Cloud DNS.

Per esportare un servizio con MCS, crea una risorsa personalizzata ServiceExport utilizzando lo stesso e nome come servizio. MCS importa automaticamente il servizio in ogni nel parco risorse. Quando MCS importa un servizio, crea:

  • Una risorsa personalizzata ServiceImport che utilizza lo stesso spazio dei nomi e nome del servizio.
  • Un oggetto Endpoints che utilizza lo stesso spazio dei nomi del servizio e un nome casuale.

Vantaggi dell'utilizzo di MCS

L'utilizzo di MCS offre i seguenti vantaggi:

  • Disponibilità elevata: esecuzione dello stesso servizio su più cluster in in più regioni offre una maggiore tolleranza agli errori. Se un servizio in se un cluster non è disponibile, è possibile che il failover della richiesta venga eseguito da un altro cluster. Con MCS, è possibile gestire la comunicazione Servizi nei vari cluster, per migliorare la disponibilità dei servizi diverse applicazioni.
  • Servizi stateful e stateless: servizi stateful e stateless. hanno dipendenze e complessità operative diverse e presentano diversi compromessi operativi. In genere, l'assenza di una gestione degli stati semplifica la scalabilità, l'upgrade e la migrazione di un carico di lavoro con la disponibilità del servizio. MCS consente di separare i cluster per stateful e stateless carichi di lavoro indipendenti e li rendono indipendenti, isolati e più facili da gestire.
  • Servizi condivisi: capita di creare entità Kubernetes separate per ottenere una maggiore disponibilità, una migliore gestione stateless e semplifica la conformità alla sovranità dei dati i tuoi requisiti. Tuttavia, molti Servizi come di monitoraggio con Prometheus o utilizzando la gestione dei secret con Vault vengono spesso condivisi tra tutti i cluster. Invece di ogni cluster che richiede la sua alla replica del servizio locale, MCS semplifica la configurazione Servizi in un cluster separato utilizzato da tutti i cluster funzionali.
  • Migrazione: modernizzare un'applicazione esistente in un ambiente basata su microservizi, richiede spesso il deployment dei servizi in più cluster Kubernetes. MCS offre un meccanismo per è utile per collegare le comunicazioni tra questi Servizi, semplificando migrare le applicazioni. Ciò è particolarmente utile perché puoi eseguire lo stesso servizio a due cluster diversi e il traffico può essere spostato da un cluster o un'applicazione a un altro.

Passaggi successivi

  • Scopri di più su Ingress multi-cluster, che fornisce servizi per le indicazioni del traffico da nord-sud e da est-ovest.
  • Scopri di più su Cloud Service Mesh, che fornisce per avere un controllo più dettagliato su routing e formato di traffico.