Panoramica di Cloud Service Mesh

Cloud Service Mesh è un service mesh disponibile su Google Cloud e sulle piattaforme GKE Enterprise supportate. Supporta i servizi in esecuzione su un intervallo le infrastrutture di computing. Cloud Service Mesh è controllato dalle API progettato per Google Cloud, per l'open source o per entrambi.

Questo documento è rivolto a te se sei un nuovo utente di Cloud Service Mesh o un cliente Anthos Service Mesh o Traffic Director di lunga data.

Che cos'è un'infrastruttura mesh di servizi?

Un mesh di servizi è un'architettura che consente una soluzione gestita, osservabile e sicura la comunicazione tra i servizi, semplificando la creazione di solide delle applicazioni aziendali composte da molti microservizi dell'infrastruttura. I mesh di servizi gestiscono i requisiti comuni di esecuzione come il monitoraggio, il networking e la sicurezza, con un servizio coerente e di sviluppo di servizi, permettendo a sviluppatori e operatori di servizi di concentrarsi più facilmente creando e gestendo applicazioni straordinarie per i propri utenti.

Dal punto di vista dell'architettura, un mesh di servizi è costituito da uno o più piani di controllo e da un piano dati. Il mesh di servizi monitora tutto il traffico in entrata e in uscita dai servizi. In Kubernetes, un proxy viene disegnato da un pattern sidecar per i microservizi nel mesh. Su Compute Engine, puoi eseguire il deployment dei proxy sulle VM o utilizzare gRPC senza proxy per il piano dati.

Questo pattern disaccoppia l'applicazione o l'attività logica dalle funzioni di rete e consente agli sviluppatori di concentrarsi sulle caratteristiche di cui l'azienda ha bisogno. I mesh di servizi consentono inoltre ai team operativi i team di sviluppo disaccoppiano il lavoro l'uno dall'altro.

L'architettura delle applicazioni come microservizi offre numerosi vantaggi. Tuttavia, i carichi di lavoro possono diventare più complessi e frammentati in funzione della scalabilità. Servizio aiuta a risolvere il problema di frammentazione e semplifica la gestione di microservizi.

Che cos'è Cloud Service Mesh?

Cloud Service Mesh è la soluzione di Google sia per Google Cloud sia per gli ambienti GKE Enterprise supportati.

  • Su Google Cloud: Cloud Service Mesh fornisce API specifiche per l'infrastruttura di calcolo su cui vengono eseguiti i carichi di lavoro.
  • Al di fuori di Google Cloud: con Distributed Cloud o GKE multicloud, Cloud Service Mesh supporta le API Istio per i carichi di lavoro Kubernetes.

Che tu sia su Google Cloud o meno, Cloud Service Mesh ti consente di gestire, osservare e proteggere i tuoi servizi senza dover modificare il codice dell'applicazione.

Cloud Service Mesh riduce il lavoro manuale per operazioni e sviluppo semplificando la fornitura dei servizi, dalla gestione del traffico alla rete per proteggere le comunicazioni tra i servizi. Il mesh di servizi completamente gestiti di Google ti consente di gestire ambienti complessi e di ottenere i vantaggi promessi.

Funzionalità

Cloud Service Mesh offre una suite di funzionalità per la gestione del traffico, l'osservabilità e la telemetria e la sicurezza.

Gestione del traffico

Cloud Service Mesh controlla il flusso di traffico tra i servizi all'interno del mesh, all'interno del mesh (ingress) e verso i servizi esterni (egress). Configura e implementa le risorse per gestire questo traffico a livello di applicazione (L7). Per Ecco un esempio:

  • Utilizza Service Discovery.
  • Configurare il bilanciamento del carico tra i servizi.
  • Crea deployment canary e blu/verde.
  • Controlla con precisione il routing per i tuoi servizi.
  • Configura gli interruttori di sicurezza.

Cloud Service Mesh gestisce un elenco di tutti i servizi nel mesh per nome e i rispettivi endpoint. Conserva questo elenco per gestire il flusso (ad esempio, indirizzi IP dei pod Kubernetes o indirizzi IP alle VM di Compute Engine in un gruppo di istanze gestite). Utilizzando questo registry dei servizi ed eseguendo i proxy insieme ai servizi, il mesh può indirizzare il traffico all'endpoint appropriato. I carichi di lavoro gRPC senza proxy possono essere utilizzati anche in parallelo con i carichi di lavoro che utilizzano i proxy Envoy.

Insight sull'osservabilità

Interfaccia utente di Cloud Service Mesh nella console Google Cloud fornisce insight sulla tua rete mesh di servizi. Queste metriche vengono generate automaticamente per i carichi di lavoro configurati tramite le API Istio.

  • Metriche di servizio e log per il traffico HTTP all'interno dell'infrastruttura GKE del tuo mesh vengono importati automaticamente in Google Cloud.
  • Le dashboard di servizio preconfigurate ti forniscono le informazioni di cui hai bisogno a comprendere i tuoi servizi.
  • Telemetria approfondita basata su Cloud Monitoring, Cloud Logging e Cloud Trace: analizzare in dettaglio le metriche e i log dei tuoi servizi. Puoi filtrare e segmentare i dati in base a una vasta gamma di attributi.
  • Le relazioni tra servizi ti aiutano a comprendere a colpo d'occhio le dipendenze tra servizi e chi si connette a ciascun servizio.
  • Potete vedere rapidamente il livello di sicurezza della comunicazione, non solo ma le sue relazioni con altri servizi.
  • Gli obiettivi del livello di servizio (SLO) ti offrono insight sull'integrità i servizi di machine learning. Puoi definire uno SLO e un avviso in base ai tuoi standard di salute del servizio.

Scopri di più sulle funzionalità di osservabilità di Cloud Service Mesh nella nostra guida all'osservabilità.

Vantaggi per la sicurezza

Cloud Service Mesh offre numerosi vantaggi in termini di sicurezza.

  • Minimizza il rischio di attacchi di ripetizione o di impersonificazione che utilizzano le credenziali rubate. Cloud Service Mesh si basa su certificati TLS reciproci (mTLS) per autenticare i peer, anziché su token bearer come i token web JSON (JWT).
  • Assicura la crittografia in transito. L'utilizzo di mTLS per l'autenticazione garantisce inoltre che tutte le comunicazioni TCP siano criptate in transito.
  • Riduce il rischio che clienti non autorizzati possano accedere a un servizio con dati sensibili, indipendentemente dalla località di rete del client e a livello di applicazione e credenziali.
  • Riduce il rischio di violazione dei dati utente all'interno della tua rete di produzione. Puoi garantire che gli addetti ai lavori possano accedere ai dati sensibili solo tramite client autorizzati.
  • Identifica i client che hanno eseguito l'accesso a un servizio con dati sensibili. Cloud Service Mesh il logging degli accessi acquisisce l'identità mTLS del client, oltre al Indirizzo IP.
  • Tutti i componenti del piano di controllo nel cluster utilizzano moduli di crittografia convalidati FIPS 140-2.

Scopri di più sui vantaggi e sulle funzionalità di sicurezza di Service Mesh nel Guida alla sicurezza.

Opzioni di implementazione

In Cloud Service Mesh hai le seguenti opzioni di deployment:

  • Su Google Cloud
    • Cloud Service Mesh gestito - piano dati e controllo gestito per GKE (consigliato)
    • Managed Cloud Service Mesh - Piano dati e controllo gestito per Compute Engine con VM (consigliato)
    • Piano di controllo nel cluster per GKE con API Istio (sconsigliato)
  • Fuori da Google Cloud
    • Piano di controllo nel cluster per Kubernetes con API Istio

Cloud Service Mesh gestito

Managed Cloud Service Mesh è costituito dal piano di controllo gestito tutte le infrastrutture e il piano dati gestito per GKE. Con Cloud Service Mesh gestito, Google gestisce gli upgrade, la scalabilità e la sicurezza al posto tuo, riducendo al minimo la manutenzione manuale da parte dell'utente. Questo copre il controllo il piano dati, il piano dati e le risorse correlate.

Implementazione del piano dati

Se utilizzi le API Google Cloud, il tuo piano dati può essere fornito da Envoy da proxy o da applicazioni gRPC senza proxy. Se stai aggiornando un modello esistente un'applicazione, l'approccio basato su sidecar consente l'integrazione nel mesh senza modificare l'applicazione. Se vuoi evitare il sovraccarico della gestione puoi aggiornare l'applicazione in modo che utilizzi gRPC.

I proxy Envoy e gRPC senza proxy utilizzano entrambi l'API xDS per connettersi al piano di controllo. Se utilizzi gRPC senza proxy, hai la possibilità di scegliere tra le lingue supportate le tue applicazioni, tra cui Go, C++, Java e Python.

Se utilizzi le API Istio open source, il tuo piano dati viene fornito dai proxy Envoy.

Implementazione del piano di controllo

Il control plane di Cloud Service Mesh dipende dal fatto che la configurazione sia attiva o meno su Google Cloud e se sei un nuovo cliente.

Implementazione del piano di controllo per gli utenti esistenti

Per determinare il piano di controllo attuale, vedi Identificare l'implementazione del piano di controllo. Per maggiori informazioni sui control plane e sulla migrazione del control plane, consulta la Panoramica del control plane gestito per i clienti di lunga data.

Implementazione del piano di controllo per i nuovi utenti

Migrazione del piano di controllo

Se sei un cliente Anthos Service Mesh e utilizzi le API Istio, inizierai a eseguire la migrazione dei tuoi cluster al piano di controllo di Traffic Director. Puoi continuerà a utilizzare le API Istio per la configurazione.

Per determinare se i tuoi cluster utilizzano ancora il piano di controllo Istio o se è stata eseguita la migrazione al nuovo piano di controllo globale, consulta Identificare l'implementazione del piano di controllo.

Passaggi successivi