Microservizi

Questo documento introduce i microservizi e descrive i tipi di microservizi supportate da Cloud Monitoring.

Il termine microservizio ha un significato diverso a seconda dell'utente. Per alcuni il microservizio corrisponde alle "caselle" disegnati sulla lavagna quando parlando dell'architettura di sistema. Altri si riferiscono a una definizione definizione che descrive un endpoint con indirizzi di rete la cui funzionalità è determinata dall'API rivolta all'esterno, che può essere sviluppata, sottoposta a deployment e in modo indipendente da altri microservizi nel sistema. Altri ancora basano la propria la comprensione del concetto di microservizi offerto dal loro sviluppo Google Cloud, come Servizi App Engine o il servizio Cloud Service Mesh.

Il nostro obiettivo non è forzare la definizione di microservizio su di te. Invece, vogliamo aiutarti a monitorare i sistemi su larga scala durante la tua trasformazione fornendo strumenti di monitoraggio orientati ai servizi per supportarti e la tua architettura. Vogliamo lavorare con voi per adottare best practice per il monitoraggio dei sistemi senza modificare una sola riga di codice.

Per aiutarti a monitorare i microservizi, Cloud Monitoring svolge le seguenti operazioni:

  • Rileva automaticamente i microservizi quando possibile
  • Offre un'esperienza guidata per la definizione di Google Kubernetes Engine Microservizi basati su Cloud Run
  • Offre una soluzione completamente personalizzata per la massima flessibilità

Microservizi a scoperta automatica

Alcuni framework di sviluppo moderni offrono concetti basati su un microservizio. Nelle architetture che usano questi framework, Cloud Monitoring rileva automaticamente il deployment dei servizi, aggiornato o eliminato. Il monitoraggio consente di rilevare attraverso l'analisi costante del flusso di metadati prodotto da un progetto.

Cloud Monitoring può rilevare automaticamente i microservizi creati i seguenti framework di sviluppo:

  • App Engine: App Engine ha una forte nozione di microservizi. chiamato servizio App Engine (precedentemente noto come modulo). Ogni servizio si distingue per il proprio file di configurazione app.yaml.

  • Cloud Service Mesh: Cloud Monitoring supporta i mesh di servizi su un singolo cluster GKE. In questa configurazione, un servizio Cloud Service Mesh corrisponde direttamente Servizio GKE. Tutti i servizi Cloud Service Mesh, sia gestite dall'utente che gestite dal sistema, vengono rilevati automaticamente.

Dashboard per microservizi rilevati automaticamente

Viene automaticamente creata una dashboard dei servizi per tutti i tipi di dati rilevati automaticamente di microservizi. La dashboard contiene i dettagli dei metadati del servizio, la sequenza temporale degli avvisi, lo stato degli obiettivi del livello del servizio (SLO) e i log correlati al servizio. Ciascuno di questi componenti è descritto in per saperne di più in Utilizzo delle dashboard dei microservizi.

Dashboard dei servizi per microservizi rilevati automaticamente.

GKE, Cloud Run e servizi personalizzati

Cloud Monitoring può identificare servizi potenziali o candidati per i seguenti tipi:

  • Spazi dei nomi GKE
  • Servizi GKE
  • Carichi di lavoro GKE
  • Servizi Cloud Run

Tuttavia, potrebbero esserci molti candidati di questo tipo e non necessariamente creare SLO su ognuno di essi. Il monitoraggio crea di servizi candidati e identifichi i servizi che vuoi da considerare come servizi di Monitoring, selezionandoli dalla dall'elenco di lettura. Il monitoraggio crea quindi un'infrastruttura di servizi completamente gestita.

Se nessun tipo di servizio esistente supporta un'applicazione per la quale creare SLO, puoi definire un servizio personalizzato.

Per ulteriori informazioni sull'identificazione dei servizi candidati e sulla creazione di vedi Definire un microservizio.