Tutorial: gestisci i servizi con GKE Enterprise


Anthos Service Mesh fornisce agli utenti GKE Enterprise gli strumenti per monitorare e gestire applicazioni affidabili basate su microservizi. Questo tutorial utilizza il deployment di esempio Bank of Anthos su Google Cloud per presentare alcune funzionalità di gestione dei servizi di Anthos Service Mesh mostrando come definire un obiettivo del livello di servizio (SLO). Nell'esempio viene eseguito il deployment di un ambiente GKE Enterprise reale con un cluster GKE, un mesh di servizi e un'applicazione Bank of Anthos con più microservizi.

Cos'è uno SLO?

Secondo il libro di Google Site Reliability Engineering (SRE):

È impossibile gestire correttamente un servizio, figuriamoci meglio, senza capire quali sono i comportamenti davvero importanti per quel servizio e come misurarli e valutarli. A questo scopo, vorremmo definire e fornire un determinato livello di servizio ai nostri utenti, che utilizzino un'API interna o un prodotto pubblico.

I team SRE di Google utilizzano indicatori del livello del servizio (SLI), obiettivi sul livello del servizio (SLO) e accordi sul livello del servizio (SLA) per strutturare e guidare le metriche alla base del loro lavoro. Uno SLI è una misura quantitativa di alcuni aspetti delle prestazioni del servizio, come la latenza o la disponibilità, mentre uno SLO è un valore target ("questo dovrebbe avvenire il x% delle volte") per un livello di servizio misurato da uno SLI. Anthos Service Mesh semplifica la definizione e il perfezionamento degli SLO per i tuoi servizi. Fornisce le informazioni necessarie per identificare gli SLI e gli SLO appropriati e ti avvisa quando il tuo servizio non soddisfa gli SLO.

Per saperne di più su SLO e SLI in Anthos Service Mesh, consulta la panoramica su SLO e la progettazione degli SLO.

Obiettivi

In questo tutorial imparerai a gestire i servizi con Anthos Service Mesh in GKE Enterprise tramite le attività seguenti:

  • Identificare un indicatore del livello del servizio (SLI) per un servizio

  • Utilizza un obiettivo del livello di servizio (SLO) per monitorare eventuali comportamenti imprevisti.

Costi

Il deployment dell'applicazione Bank of Anthos comporta il pagamento a consumo per GKE Enterprise su Google Cloud come elencato nella nostra pagina dei prezzi, a meno che tu non abbia già acquistato un abbonamento.

Sei inoltre responsabile degli altri costi di Google Cloud sostenuti durante l'esecuzione dell'applicazione Bank of Anthos, ad esempio gli addebiti per le VM e i bilanciatori del carico di Compute Engine.

Ti consigliamo di pulire dopo aver completato il tutorial o aver esplorato il deployment per evitare ulteriori addebiti.

Prima di iniziare

Questo tutorial è successivo al tutorial di Esplora GKE Enterprise. Prima di iniziare questo tutorial, segui le istruzioni nella pagina per configurare il tuo progetto ed eseguire il deployment di Bank of Anthos.

Identificazione degli SLI

Anthos Service Mesh rende la raccolta degli SLI e la definizione degli SLO un'attività semplice e immediata. Nel nostro esempio, decidi di definire prima uno SLO per il servizio ledgerwriter della Bank of Anthos.

Innanzitutto, utilizza Anthos Service Mesh per trovare informazioni che puoi utilizzare per identificare uno SLI per il servizio.

  1. Vai alla pagina Anthos Service Mesh nel progetto in cui hai installato Bank of Anthos.

    Vai alla pagina Anthos Service Mesh

    La parte superiore di questa visualizzazione mostra lo stato corrente dei servizi dell'applicazione insieme agli indicatori per avvisi e SLO, incluso il numero di servizi senza SLO. Al momento, tutti i servizi sono in Nessun SLO impostato. Inoltre, nella colonna Stato, tutti i servizi hanno un indicatore cerchio nero. Se tieni premuto il puntatore sull'indicatore per un servizio qualsiasi, vieni informato che non è impostato alcuno SLO per il servizio.

  2. Tieni presente il valore in ms per la latenza del 99% per ledgerwriter (potrebbe essere necessario scorrere verso il basso e lateralmente per vederlo). Questa metrica indica che una richiesta su 100 subisce questo livello di ritardo. Utilizzerai questo valore nella prossima sezione.

Creazione di uno SLO

Ora crea uno SLO rispetto a uno SLI di latenza per il servizio. Per capire cosa succede quando un servizio supera il budget di errore, imposta una soglia deliberatamente bassa in base alle informazioni che hai visto nella sezione precedente. Per un servizio di produzione reale, proveresti a trovare un valore di latenza di soglia non inferiore a quello necessario per consentire agli utenti di avere un'esperienza positiva dalla tua applicazione.

  1. Nella visualizzazione tabella di Anthos Service Mesh, fai clic su ledgerwriter per accedere alla pagina della panoramica del servizio.

  2. In Stato del servizio, fai clic su Crea uno SLO.

  3. Nell'elenco Tipo di SLI, seleziona Latenza.

  4. Lascia il metodo di valutazione predefinito basato su richiesta e fai clic su Continua.

  5. Imposta la Soglia di latenza su un valore arbitrariamente basso, ad esempio 10 ms (qualcosa di molto inferiore al valore della latenza del 99% osservato in precedenza), e fai di nuovo clic su Continua.

  6. In Periodo di conformità, imposta Tipo di periodo su Rolling e Durata del periodo su 1 Day.

  7. In Obiettivo SLO, imposta il Target di conformità su 90%. Anthos Service Mesh utilizza questo valore per calcolare il budget di errore disponibile per questo SLO, ovvero la percentuale massima di richieste che devono superare la soglia di latenza specificata. Un'anteprima mostra il rendimento dello SLO nel periodo di un giorno più recente. Fai clic su Continua.

  8. La sezione Assegna un nome al tuo SLO suggerisce un nome predefinito per il nuovo SLO: puoi accettare quello predefinito consigliato o specificarne uno nuovo. Per creare lo SLO e andare alla pagina Salute per ledgerwriter, fai clic su Crea SLO.

Fai clic sulla freccia menu a discesa per visualizzare ulteriori dettagli sullo SLO. In base alle tue impostazioni, dovresti vedere che lo SLO è Fuori dal budget di errore. In questa visualizzazione puoi anche modificare o eliminare lo SLO.

Screenshot della visualizzazione dell'integrità del servizio Anthos Service Mesh

Ricontrolla SLO e indicatori di avviso

  1. Nella pagina Panoramica del servizio, fai clic sulla Freccia indietro per tornare alla visualizzazione tabella. Ora puoi vedere che il numero dei servizi per Nessun SLO impostato è stato ridotto di uno e che gli SLO non rientrati nel budget di errore non sono più pari a 0.

  2. Se scorri verso il basso fino a ledgerwriter, nota che l'indicatore adiacente è diventato un triangolo arancione. Se tieni il puntatore sull'indicatore, ti verrà chiesto di verificare l'affidabilità del servizio. Se fai clic sull'indicatore, tornerai alla pagina Integrità del servizio per esaminare i dettagli del tuo SLO. Lo stesso indicatore viene visualizzato anche per il servizio nella visualizzazione della topologia.

Screenshot dell'elenco di servizi Anthos Service Mesh con avviso SLO

Esplorare ulteriormente il deployment

C'è ancora molto da vedere e fare in GKE Enterprise con il nostro deployment. Prova un altro tutorial o continua a esplorare il deployment di Bank of Anthos su Google Cloud prima di seguire le istruzioni di pulizia riportate nella sezione successiva.

Esegui la pulizia

Dopo aver esplorato l'applicazione Bank of Anthos, puoi eseguire la pulizia delle risorse che hai creato su Google Cloud in modo che non occupino quota e non ti vengano addebitati costi in futuro.

  • Opzione 1. Puoi eliminare il progetto. Tuttavia, se vuoi mantenere il progetto, puoi utilizzare l'opzione 2 per eliminare il deployment.

  • Opzione 2. Se vuoi mantenere il progetto attuale, puoi utilizzare terraform destroy per eliminare l'applicazione e il cluster di esempio.

Elimina il progetto (opzione 1)

Il modo più semplice per evitare la fatturazione è eliminare il progetto che hai creato per questo tutorial.

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Elimina il deployment (opzione 2)

Questo approccio elimina l'applicazione Bank of Anthos e il cluster, ma non elimina il progetto. Esegui i comandi seguenti su Cloud Shell:

  1. Passa alla directory che ospita gli script di installazione:

    cd bank-of-anthos/iac/tf-anthos-gke
    
  2. Elimina l'esempio e il cluster:

    terraform destroy
    
  3. Inserisci l'ID progetto quando richiesto.

Se prevedi di eseguire nuovamente il deployment, verifica che tutti i requisiti siano soddisfatti come descritto nella sezione Prima di iniziare.

Passaggi successivi

C'è molto altro da esplorare nella nostra documentazione di GKE Enterprise.

Prova altri tutorial

  • Esplora le funzionalità di sicurezza di GKE Enterprise con Bank of Anthos in Secure GKE Enterprise.

  • Esplora le architetture di riferimento, i diagrammi e le best practice su Google Cloud. Visita il nostro Cloud Architecture Center.

Scopri di più su GKE Enterprise