Questo documento descrive come creare servizi personalizzati e servizi per alcune risorse come GKE e Cloud Run.
In Cloud Monitoring, un servizio è un costrutto che puoi associare a SLO e criteri di avviso. Molte delle risorse per le quali potresti creare servizi di monitoraggio sono chiamate anche servizi, ma con significati diversi, ad esempio servizi GKE o servizi Cloud Run.
Monitoring può riconoscere i servizi basati su GKE e Cloud Run come candidati per il monitoraggio. Per creare servizi per questi candidati, indica quali vuoi che vengano trattati come servizi di monitoraggio. Il monitoraggio creerà l'infrastruttura necessaria per te.
Puoi anche definire servizi personalizzati arbitrari.
Identifica o crea un servizio
Per identificare i servizi candidati o per creare servizi personalizzati, vai al riquadro Definisci servizio:
-
Nella console Google Cloud, vai alla pagina SLOs:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Nella pagina Panoramica dei servizi, esegui una delle seguenti operazioni:
Fai clic su add Definisci servizio.
Nel riquadro Stato corrente, fai clic sul link Definisci servizio:
Nel riquadro Definisci servizio, puoi:
- Crea servizi da un elenco di servizi candidati.
- Definisci i servizi personalizzati.
Le sezioni seguenti descrivono queste opzioni.
Creare servizi
Cloud Monitoring può identificare potenziali servizi dei seguenti tipi:
- Servizi Cloud Service Mesh
- Istio sui servizi Google Kubernetes Engine
- Servizi App Engine
- Spazi dei nomi GKE
- Servizi GKE
- Carichi di lavoro GKE
- Servizio Cloud Run
Poiché potrebbero esserci molti di questi potenziali servizi, monitoring non presume che tu voglia che vengano trattati tutti come servizi con SLO. Per indicare quali potenziali servizi deve trattare come servizi, utilizza la console Google Cloud o l'API.
Utilizzare la console Google Cloud per creare servizi
Per creare un servizio utilizzando la console Google Cloud, segui questi passaggi:
Nella pagina Panoramica dei servizi, fai clic su Definisci servizio.
Seleziona Candidati per i servizi.
L'elenco potrebbe contenere un numero elevato di servizi idonei. Puoi filtrare l'elenco nel seguente modo:
Fai clic su filter_list Filtra tabella. Viene visualizzato un elenco di opzioni di filtro.
Seleziona una delle opzioni nell'elenco dei filtri. L'opzione selezionata viene visualizzata nella barra dei filtri.
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.
Fai clic su un servizio candidato dall'elenco dei potenziali servizi.
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.
Fai clic su Invia. Quando il servizio viene creato, viene visualizzata una notifica Ok.
Utilizzare l'API per creare un servizio
Puoi anche creare servizi utilizzando l'API SLO, che fa 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" } }
Workload 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" } }
Cloud Service Mesh
Utilizza la struttura MeshIstio
, ad esempio:
{ "displayName": "test-mesh-istio-service", "meshIstio": { "meshUid": "mesh-identifier" "serviceName": "test-mesh-istio-service", "serviceNamespace": "default" } }
Istio su GKE
Utilizza la struttura clusterIstio
, ad esempio:
{ "displayName": "test-cluster-istio-service", "clusterIstio": { "serviceName": "test-cloud-service", "clusterName": "cluster-2", "serviceNamespace": "default", "location": "us-central1" } }
App Engine
Utilizza la struttura AppEngine
, ad esempio:
{ "displayName": "test-mesh-istio-service", "appEngine": { ""moduleId": "id-of-the-service" } }
Per ulteriori informazioni sulla gestione dei servizi tramite programmazione, consulta i seguenti documenti:
Creare un servizio personalizzato
Se nessun altro tipo di servizio soddisfa le tue esigenze, crea un servizio personalizzato. Con un servizio personalizzato, puoi raggruppare arbitrariamente gli SLO in un modo significativo per il tuo ambiente o creare SLO in base a 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:
Fai clic su Definisci servizio nella pagina Panoramica dei servizi per visualizzare il riquadro Definisci servizio.
Seleziona Servizio personalizzato.
Inserisci un nome visualizzato per il servizio personalizzato.
Fai clic su Invia. Quando il servizio viene creato, viene visualizzata una notifica Ok.
Utilizzare l'API per creare un servizio personalizzato
Per definire un servizio personalizzato utilizzando l'API SLO,
pubblica un oggetto di configurazione Custom
come il seguente
nel metodo services.create
:
{ "displayName": "hello-world-service", "custom": {} }
Per saperne di più sulla gestione dei servizi in modo programmatico, consulta Lavori con l'API.
Passaggi successivi
Dopo aver identificato o creato un nuovo servizio, puoi:
- Crea uno SLO per il nuovo servizio. Affinché il nuovo servizio sia utile, devi definire almeno un SLO. Per ulteriori informazioni, consulta Creare un SLO.
- Vai alla dashboard del nuovo servizio. Per un nuovo servizio, la dashboard è vuota, ma puoi definire gli SLO dalla dashboard. Per ulteriori informazioni, vedi Utilizzare le dashboard dei microservizi.