Definizione di un microservizio

Questo documento descrive come creare servizi e servizi personalizzati per le risorse basate su GKE e Cloud Run.

In Cloud Monitoring, un servizio è un costrutto che puoi associare a SLO e criteri di avviso. Molte delle risorse per cui potresti creare servizi di Monitoring sono definite servizi, ma con significati diversi, ad esempio servizi GKE o servizi Cloud Run.

Monitoring è in grado di riconoscere i servizi basati su GKE e Cloud Run come candidati per il monitoraggio. Per creare i relativi servizi, devi indicare quali candidati devono essere trattati come servizi di Monitoring. Monitoring crea l'infrastruttura necessaria per te.

Puoi anche definire servizi personalizzati arbitrari.

Identificare o creare un servizio

Per identificare i servizi candidati o creare servizi personalizzati, vai al riquadro Definisci servizio:

  1. Nella console Google Cloud, vai alla pagina SLO :

    Vai a SLO

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato il cui sottotitolo è Monitoring.

  2. Nella pagina Panoramica dei servizi, esegui una delle seguenti operazioni:

    • Fai clic su Definisci servizio.

    • Nel riquadro Stato attuale, fai clic sul link Definisci servizio:

      Crea servizi personalizzati e identificati dall'utente utilizzando **Definisci servizio**.

Nel riquadro Definisci servizio puoi:

  • Creare servizi basati su GKE o Cloud Run da un elenco di servizi candidati.
  • Definire i servizi personalizzati.

Queste opzioni vengono descritte nelle sezioni seguenti.

Creazione di servizi basati su GKE e Cloud Run

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

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

Poiché potrebbero essere presenti molti di questi potenziali servizi, Monitoring non presuppone che vengano trattati tutti come servizi con SLO. Per indicare quali dei potenziali servizi Monitoring dovrebbe trattare come servizi, utilizza la console Google Cloud o l'API.

Utilizzare la console Google Cloud per creare servizi GKE e Cloud Run

Per identificare un servizio di monitoraggio basato su GKE o Cloud Run utilizzando la console Google Cloud:

  1. Nella pagina Panoramica dei servizi, fai clic su Definisci servizio.

  2. Seleziona Candidati per i servizi.

    I potenziali servizi sono elencati nella scheda **Candate servizio**.

    L'elenco potrebbe contenere un numero elevato di servizi candidati. Puoi filtrare l'elenco nel seguente modo:

    1. Fai clic su Filtra tabella. Viene visualizzato un elenco di opzioni di filtro.

    2. Seleziona una delle opzioni nell'elenco dei filtri. L'opzione selezionata viene visualizzata nella barra dei filtri.

    3. Fai clic accanto all'opzione nella barra dei filtri e inizia a digitare. I valori corrispondenti vengono forniti in un elenco. Seleziona un valore dall'elenco.

  3. Fai clic su un servizio candidato nell'elenco dei servizi potenziali.

    Quando fai clic su una voce, i seguenti campi vengono compilati automaticamente:

    • Il nome visualizzato è impostato sul nome della voce nell'elenco. Puoi modificare questo valore.

    • Dal candidato viene generato un blocco di codice JSON per la configurazione del nuovo servizio. Non modificare questo valore.

  4. Fai clic su Invia. Quando il servizio viene creato, viene visualizzata una notifica di Success (Operazione riuscita).

Utilizza l'API per creare servizi GKE e Cloud Run

I servizi basati su GKE e Cloud Run possono anche essere definiti utilizzando l'API SLO, parte dell'API Cloud Monitoring.

Per creare un servizio in modo programmatico, pubblica un oggetto di configurazione come uno dei seguenti nel metodo services.create:

Spazio dei nomi GKE

Utilizza la struttura GkeNamespace, ad esempio:

{
  "displayName": "test-kube-namespace",
  "gkeNamespace": {
    "location": "us-central1-c",
    "clusterName": "cluster-1",
    "namespaceName": "test-kube-namespace"
  }
}

Servizio GKE

Utilizza la struttura GkeService, ad esempio:

{
  "displayName": "test-kube-service",
  "gkeService": {
    "location": "us-central1-c",
    "clusterName": "cluster-1",
    "namespaceName": "kube-system",
    "serviceName": "test-kube-service"
  }
}

Carico di lavoro GKE

Utilizza la struttura GkeWorkload, ad esempio:

{
  "displayName": "frontend-a",
  "gkeWorkload": {
    "location": "us-central1-b",
    "clusterName": "cluster-2",
    "namespaceName": "default",
    "topLevelControllerType": "Deployment",
    "topLevelControllerName": "frontend-a"
  }
}

Cloud Run

Utilizza la struttura CloudRun, ad esempio:

{
  "displayName": "test-cloudrun-service",
  "cloudRun": {
    "serviceName": "test-cloudrun-service",
    "location": "us-central1"
  }
}

Per ulteriori informazioni sulla gestione dei servizi in modo programmatico, consulta Utilizzo dell'API.

Crea un servizio personalizzato

Se nessun altro tipo di servizio soddisfa le tue esigenze, creane uno personalizzato. Con un servizio personalizzato, puoi raggruppare arbitrariamente gli SLO in un modo significativo per il tuo ambiente o creare SLO su metriche aziendali che non corrispondono a un microservizio esistente.

Utilizzare la console Google Cloud per creare un servizio personalizzato

Per definire un servizio personalizzato utilizzando la console Google Cloud, segui questi passaggi:

  1. Fai clic su Definisci servizio nella pagina Panoramica dei servizi per visualizzare il riquadro Definisci servizio.

  2. Seleziona Custom Service (Servizio personalizzato).

    Utilizza la scheda **Servizio personalizzato** per definire i servizi arbitrari.

  3. Inserisci un nome visualizzato per il servizio personalizzato.

  4. Fai clic su Invia. Quando il servizio viene creato, viene visualizzata una notifica di Success (Operazione riuscita).

Utilizzare l'API per creare un servizio personalizzato

Per definire un servizio personalizzato utilizzando l'API SLO, pubblica un oggetto di configurazione Custom come segue nel metodo services.create:

{
  "displayName": "hello-world-service",
  "custom": {}
}

Per ulteriori informazioni sulla gestione dei servizi in modo programmatico, consulta Utilizzo dell'API.

Passaggi successivi

Dopo aver identificato o creato un nuovo servizio, puoi:

  • Crea uno SLO per il nuovo servizio. Devi definire almeno uno SLO per il nuovo servizio affinché il servizio sia utile. Per ulteriori informazioni, consulta la sezione Creazione di uno SLO.
  • Vai alla dashboard del nuovo servizio. Per un nuovo servizio, la dashboard è vuota, ma puoi definire gli SLO dalla dashboard. Per saperne di più, consulta Utilizzare le dashboard dei microservizi.