Introduzione alla raccolta di dati gestita

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questo documento descrive come configurare Google Cloud Managed Service per Prometheus con la raccolta gestita. La configurazione è un esempio minimo di importazione di dati, utilizzando un deployment Prometheus che monitora un'applicazione di esempio e archivia le metriche raccolte in Monarch.

Questo documento illustra come procedere nel seguente modo:

  • Configurare l'ambiente e gli strumenti a riga di comando.
  • Configura la raccolta gestita per il tuo cluster.
  • Configura una risorsa per lo scraping di destinazione e l'importazione delle metriche.
  • Esegui la migrazione delle risorse personalizzate Operatore Prometheus.

Ti consigliamo di utilizzare la raccolta gestita, poiché riduce la complessità di deployment, scalabilità, sharding, configurazione e gestione dei raccoglitori. La raccolta gestita è supportata per GKE e per tutti gli altri ambienti Kubernetes.

La raccolta gestita esegue i raccoglitori basati su Prometheus come Daemonset e garantisce la scalabilità scalando i target solo sui nodi che si trovano nella stessa posizione. Configura i raccoglitori con risorse personalizzate leggere per eseguire il scraping degli esportatori utilizzando la raccolta pull, quindi i raccoglitori eseguono il push dei dati appresi al datastore centrale Monarch. Google Cloud non accede mai direttamente al tuo cluster per estrarre o eseguire il scraping dei dati delle metriche; i tuoi raccoglitori eseguono il push dei dati a Google Cloud. Per ulteriori informazioni sulla raccolta dei dati gestiti e di cui è stato eseguito il deployment in modo autonomo, consulta Raccolta di dati con Managed Service per Prometheus e Importazione e esecuzione di query con la raccolta gestita e di cui è stato eseguito il deployment autonomamente.

Prima di iniziare

Questa sezione descrive la configurazione necessaria per le attività descritte in questo documento.

Configurare progetti e strumenti

Per utilizzare Google Cloud Managed Service per Prometheus, devi disporre delle seguenti risorse:

  • Un progetto Google Cloud con l'API Cloud Monitoring abilitata.

    • Se non hai un progetto Cloud, procedi nel seguente modo:

      1. Nella console Google Cloud, vai a Nuovo progetto:

        Crea un nuovo progetto

      2. Nel campo Nome progetto, inserisci un nome per il progetto e fai clic su Crea.

      3. Vai a Fatturazione:

        Vai a Fatturazione

      4. Seleziona il progetto appena creato se non è già selezionato nella parte superiore della pagina.

      5. Ti viene chiesto di scegliere un profilo pagamenti esistente o di crearne uno nuovo.

      L'API Monitoring è abilitata per impostazione predefinita per i nuovi progetti.

    • Se hai già un progetto Cloud, assicurati che l'API Monitoring sia abilitata:

      1. Vai in API e servizi:

        Vai ad API e servizi

      2. Seleziona il progetto.

      3. Fai clic su Abilita API e servizi.

      4. Cerca "Monitoring".

      5. Nei risultati di ricerca, fai clic su "API Cloud Monitoring".

      6. Se "API abilitata" non viene visualizzata, fai clic sul pulsante Abilita.

  • un cluster Kubernetes. Se non hai un cluster Kubernetes, segui le istruzioni nella guida rapida per GKE.

Sono inoltre necessari i seguenti strumenti a riga di comando:

  • gcloud
  • kubectl

Gli strumenti gcloud e kubectl fanno parte di Google Cloud CLI. Per informazioni sull'installazione, consulta Gestione dei componenti dell'interfaccia a riga di comando di Google Cloud. Per vedere i componenti dell'interfaccia a riga di comando gcloud che hai installato, esegui il comando seguente:

gcloud components list

Configura l'ambiente

Per evitare di inserire ripetutamente l'ID progetto o il nome del cluster, esegui la seguente configurazione:

  • Configura gli strumenti a riga di comando come segue:

    • Configura gcloud CLI per fare riferimento all'ID del tuo progetto Cloud:

      gcloud config set project PROJECT_ID
      
    • Configura l'interfaccia a riga di comando di kubectl per utilizzare il cluster:

      kubectl config set-cluster CLUSTER_NAME
      

    Per ulteriori informazioni su questi strumenti, vedi quanto segue:

Configurare uno spazio dei nomi

Crea lo spazio dei nomi Kubernetes NAMESPACE_NAME per le risorse che crei nell'ambito dell'applicazione di esempio:

kubectl create ns NAMESPACE_NAME

Configurare la raccolta gestita

Puoi utilizzare la raccolta gestita sia su cluster GKE che su cluster Kubernetes non GKE.

Dopo aver abilitato la raccolta gestita, i componenti nel cluster saranno in esecuzione, ma non è stata ancora generata alcuna metrica. Per visualizzare i dati nell'interfaccia utente di query, devi eseguire il deployment di una risorsa PodMonitoring che esegue il scraping di un endpoint delle metriche valide. Per informazioni sulla risoluzione dei problemi, consulta la sezione Problemi lato importazione.

Abilita la raccolta gestita: GKE

Se stai eseguendo un ambiente GKE, puoi abilitare la raccolta gestita utilizzando quanto segue:

  • La dashboard Cluster GKE in Cloud Monitoring.
  • La pagina Kubernetes Engine nella console Google Cloud.
  • Google Cloud CLI. Per utilizzare l'interfaccia a riga di comando gcloud, devi eseguire la versione GKE 1.21.4-gke.300 o successiva.
  • Terraform per Google Kubernetes Engine. Per utilizzare Terraform per abilitare Managed Service per Prometheus, devi eseguire GKE 1.21.4-gke.300 o versioni successive.

La raccolta gestita è attiva per impostazione predefinita nei cluster GKE Autopilot che eseguono GKE versione 1.25 o successive.

Dashboard dei cluster GKE

Puoi eseguire questa operazione utilizzando la dashboard GKE Cluster in Cloud Monitoring.

  • Stabilisci se Managed Service per Prometheus è abilitato sui tuoi cluster e se utilizzi una raccolta gestita o di cui è stato eseguito il deployment in modo autonomo.
  • Abilita la raccolta gestita nei cluster nel tuo progetto.
  • Visualizza altre informazioni sui tuoi cluster.

Per visualizzare la dashboard GKE Cluster, segui questi passaggi:

  1. Nella console Google Cloud, seleziona Monitoring o utilizza il seguente pulsante:

    Vai a Monitoring

  2. Seleziona la categoria G C P nella dashboard, quindi seleziona Cluster GKE.

La dashboard Cluster GKE in Cloud Monitoring.

Per abilitare la raccolta gestita su uno o più cluster GKE utilizzando la dashboard dei cluster GKE:

  1. Seleziona la casella di controllo per ogni cluster GKE su cui vuoi abilitare la raccolta gestita.

  2. Seleziona Attiva selezioni.

UI di Kubernetes Engine

Puoi utilizzare la console Google Cloud per:

  • Abilita la raccolta gestita su un cluster GKE esistente.
  • Crea un nuovo cluster GKE con la raccolta gestita abilitata.

Per aggiornare un cluster esistente, segui questi passaggi:

  1. Nella console Google Cloud, seleziona Kubernetes Engine oppure utilizza il seguente pulsante:

    Vai a Kubernetes Engine

  2. Seleziona Cluster.

  3. Fai clic sul nome del cluster.

  4. Nell'elenco Funzionalità, individua l'opzione Managed Service per Prometheus. Se è elencato come disattivato, fai clic su Modifica, quindi seleziona Abilita Managed Service per Prometheus.

  5. Fai clic su Salva modifiche.

Per creare un cluster in cui è abilitata la raccolta gestita, procedi nel seguente modo:

  1. Nella console Google Cloud, seleziona Kubernetes Engine oppure utilizza il seguente pulsante:

    Vai a Kubernetes Engine

  2. Seleziona Cluster.

  3. Fai clic su Crea.

  4. Fai clic su Configura per l'opzione Standard.

  5. Nel pannello di navigazione, fai clic su Funzionalità.

  6. Nella sezione Operazioni, seleziona Abilita Managed Service per Prometheus.

  7. Fai clic su Salva.

Interfaccia a riga di comando gcloud

Puoi utilizzare l'interfaccia a riga di comando gcloud:

  • Abilita la raccolta gestita su un cluster GKE esistente.
  • Crea un nuovo cluster GKE con la raccolta gestita abilitata.

Il completamento di questi comandi potrebbe richiedere fino a 5 minuti.

Per prima cosa, imposta il progetto:

gcloud config set project PROJECT_ID

Per aggiornare un cluster esistente, esegui uno dei seguenti comandi update a seconda che il cluster sia a livello di zona o di regione:

  • gcloud container clusters update CLUSTER_NAME --enable-managed-prometheus --zone ZONE
    
  • gcloud container clusters update CLUSTER_NAME --enable-managed-prometheus --region REGION
    

Per creare un cluster in cui è abilitata la raccolta gestita, esegui questo comando:

gcloud container clusters create CLUSTER_NAME --zone ZONE --enable-managed-prometheus

GKE Autopilot

La raccolta gestita è attiva per impostazione predefinita nei cluster GKE Autopilot che eseguono GKE versione 1.25 o successive. Non puoi disattivare la raccolta gestita.

Se il cluster non riesce ad abilitare automaticamente la raccolta gestita durante l'upgrade alla versione 1.25, puoi abilitarla manualmente eseguendo il comando update nella sezione dell'interfaccia a riga di comando gcloud.

Terraform

Per istruzioni sulla configurazione della raccolta gestita con Terraform, consulta il registro Terraform per google_container_cluster.

Per informazioni generali sull'utilizzo di Google Cloud con Terraform, vedi Terraform con Google Cloud.

Abilita la raccolta gestita: Kubernetes non GKE

Se stai eseguendo un ambiente non GKE, puoi abilitare la raccolta gestita nel seguente modo:

  • Interfaccia a riga di comando kubectl.
  • La soluzione in bundle inclusa nei deployment Anthos che eseguono la versione 1.12 o successive.

Interfaccia a riga di comando kubectl

Per installare i raccoglitori gestiti quando utilizzi un cluster Kubernetes non GKE, esegui questi comandi per installare la configurazione e i manifest degli operatori:

kubectl apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.5.0/manifests/setup.yaml

kubectl apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.5.0/manifests/operator.yaml

Anthos

Per informazioni sulla configurazione della raccolta gestita per i cluster Anthos, consulta la documentazione per la distribuzione:

Per la documentazione di riferimento sull'operatore Managed Service for Prometheus, consulta la pagina dei manifest.

Esegui il deployment dell'applicazione di esempio

Di seguito è riportato un manifest per un'applicazione di esempio che emette la metrica del contatore example_requests_total e la metrica dell'istogramma example_random_numbers sulla porta metrics. L'applicazione utilizza tre repliche.

Per il deployment dell'applicazione di esempio, esegui il comando seguente:

kubectl -n NAMESPACE_NAME apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.5.0/examples/example-app.yaml

Configura una risorsa PodMonitoring

Per importare i dati delle metriche emessi dall'applicazione di esempio, utilizza lo scraping di destinazione. Lo scraping di destinazione e l'importazione delle metriche sono configurati utilizzando le risorse personalizzate Kubernetes. Il servizio gestito utilizza le risorse personalizzate (CR) di PodMonitoring.

Una RP PodMonitoring esegue il scraping delle destinazioni solo nello spazio dei nomi in cui viene eseguito il deployment della RP. Per eseguire il scraping delle destinazioni in più spazi dei nomi, esegui il deployment della stessa RP PodMonitoring in ogni spazio dei nomi. Puoi verificare che la risorsa PodMonitoring sia installata nello spazio dei nomi previsto eseguendo kubectl get podmonitoring -A.

Per la documentazione di riferimento su tutte le CR di Managed Service per Prometheus, consulta la documentazione di riferimento di Prometheus-engine/doc/api.

Il manifest seguente definisce una risorsa PodMonitoring, prom-example, nello spazio dei nomi NAMESPACE_NAME. La risorsa utilizza un selettore di etichette Kubernetes per trovare tutti i pod nello spazio dei nomi che hanno l'etichetta app con valore prom-example. I pod corrispondenti vengono criptati su una porta denominata metrics, ogni 30 secondi, nel percorso HTTP /metrics.

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: prom-example
spec:
  selector:
    matchLabels:
      app: prom-example
  endpoints:
  - port: metrics
    interval: 30s

Per applicare questa risorsa, esegui il comando seguente:

kubectl -n NAMESPACE_NAME apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.5.0/examples/pod-monitoring.yaml

Il tuo raccoglitore gestito sta eseguendo lo scraping dei pod corrispondenti.

Per configurare la raccolta orizzontale che si applica a un intervallo di pod in tutti gli spazi dei nomi, utilizza la risorsa ClusterPodMonitoring. La risorsa ClusterPodMonitoring fornisce la stessa interfaccia della risorsa PodMonitoring, ma non limita i pod rilevati a uno specifico spazio dei nomi.

Se stai eseguendo GKE, puoi fare quanto segue:

Se stai eseguendo al di fuori di GKE, devi creare un account di servizio e autorizzarlo a scrivere i dati di metrica, come descritto nella sezione seguente.

Fornisci le credenziali in modo esplicito

Durante l'esecuzione su GKE, il server di raccolta Prometheus recupera automaticamente le credenziali dall'ambiente in base all'account di servizio del nodo. Nei cluster Kubernetes non GKE, le credenziali devono essere fornite esplicitamente tramite la risorsa OperatorConfig nello spazio dei nomi gmp-public.

  1. Imposta il contesto per il progetto di destinazione:

    gcloud config set project PROJECT_ID
    
  2. Crea un account di servizio:

    gcloud iam service-accounts create gmp-test-sa
    

  3. Concedi le autorizzazioni richieste all'account di servizio:

    gcloud projects add-iam-policy-binding PROJECT_ID\
      --member=serviceAccount:gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com \
      --role=roles/monitoring.metricWriter
    

  4. Crea e scarica una chiave per l'account di servizio:

    gcloud iam service-accounts keys create gmp-test-sa-key.json \
      --iam-account=gmp-test-sa@PROJECT_ID.iam.gserviceaccount.com
    
  5. Aggiungi il file della chiave come secret al tuo cluster non GKE:

    kubectl -n gmp-public create secret generic gmp-test-sa \
      --from-file=key.json=gmp-test-sa-key.json
    

  6. Apri la risorsa OperatorConfig per modificare:

    kubectl -n gmp-public edit operatorconfig config
    

  7. Aggiungi il testo in grassetto alla risorsa:

    apiVersion: monitoring.googleapis.com/v1
    kind: OperatorConfig
    metadata:
      namespace: gmp-public
      name: config
    collection:
      credentials:
        name: gmp-test-sa
        key: key.json
    
    Assicurati anche di aggiungere queste credenziali alla sezione rules in modo che la valutazione delle regole gestite funzioni.

  8. Salva il file e chiudi l'editor. Dopo l'applicazione della modifica, i pod vengono ricreati e iniziano l'autenticazione nel backend della metrica con l'account di servizio specificato.

Argomenti aggiuntivi per la raccolta gestita

Questa sezione descrive come:

  • Configura lo scraping di destinazione utilizzando Terraform.
  • Filtra i dati che esporti nel servizio gestito.
  • Scrape Kubelet e metriche di cAdvisor.
  • Converti le tue risorse esistenti di operatore di ballo da utilizzare con il servizio gestito.
  • Esegui la raccolta gestita all'esterno di GKE.

Configurazione dello scraping di destinazione con Terraform

Puoi automatizzare la creazione e la gestione delle risorse PodMonitoring e ClusterPodMonitoring utilizzando il tipo di risorsa Terraform kubernetes_manifest o il kubectl_manifest tipo di risorsa Terraform, che ti consente di specificare risorse personalizzate arbitrarie.

Per informazioni generali sull'utilizzo di Google Cloud con Terraform, vedi Terraform con Google Cloud.

Filtra metriche esportate

Se raccogli molti dati, potresti voler impedire che alcune serie temporali vengano inviate a Managed Service per Prometheus per ridurre i costi. A tale scopo, utilizza le regole di etichettatura di Prometheus con un'azione keep per una lista consentita o un'azione drop per una lista bloccata. Per la raccolta gestita, questa regola va nella sezione metricRelabeling della risorsa PodMonitoring o ClusterPodMonitoring.

Ad esempio, la seguente regola di rietichettatura delle metriche escluderà qualsiasi metrica che inizia con foo_bar_, foo_baz_ o foo_qux_:

  metricRelabeling:
  - action: drop
    regex: foo_(bar|baz|qux)_.+
    sourceLabels: [__name__]

Per ulteriori suggerimenti su come ridurre i costi, consulta Controllo dei costi e attribuzione.

Scrap di metriche Kubelet e cAdvisor

Il Kubelet espone le metriche su se stesso e le metriche di cAdvisor sui container in esecuzione sul suo nodo. Puoi configurare la raccolta gestita per recuperare le metriche Kubelet e cAdvisor modificando la risorsa OperatorConfig. Per istruzioni, consulta la documentazione dell'esportatore relativa a Kubelet e cAdvisor.

Converti le risorse esistenti dell'operatore del Prometheus

Di solito puoi convertire le risorse Operatore Prometheus esistenti in risorse Managed Service per Prometheus raccolte da PodMonitoring e ClusterPodMonitoring.

Ad esempio, la risorsa ServiceMonitor definisce il monitoraggio per un insieme di servizi. La risorsa PodMonitoring gestisce un sottoinsieme dei campi serviti dalla risorsa ServiceMonitor. Puoi convertire una RP ServiceMonitor in una RP di PodMonitoring mappando i campi come descritto nella seguente tabella:

Monitoring.coreos.com/v1
ServiceMonitor
Compatibilità
Monitoring.googleapis.com/v1
PodMonitoring
.ServiceMonitorSpec.Selector Identici .PodMonitoringSpec.Selector
.ServiceMonitorSpec.Endpoints[] .TargetPort mappa a .Port
.Path: compatible
.Interval: compatible
.Timeout: compatible
.PodMonitoringSpec.Endpoints[]
.ServiceMonitorSpec.TargetLabels Il PodMonitor deve specificare:
.FromPod[].From etichetta del pod
.FromPod[].To etichetta di destinazione
.PodMonitoringSpec.TargetLabels

Di seguito è riportato un esempio di ServiceMonitor CR; i contenuti in grassetto vengono sostituiti nella conversione e i contenuti in corsivo vengono mappati direttamente:

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: example-app
spec:
  selector:
    matchLabels:
      app: example-app
  endpoints:
  - targetPort: web
    path: /stats
    interval: 30s
  targetLabels:
  - foo

Di seguito è riportata la risposta predefinita di PodMonitoring, supponendo che il servizio e i relativi pod siano etichettati con app=example-app. In caso contrario, devi utilizzare i selettori delle etichette della risorsa di servizio sottostante.

I contenuti in grassetto sono stati sostituiti nella conversione:

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: example-app
spec:
  selector:
    matchLabels:
      app: example-app
  endpoints:
  - port: web
    path: /stats
    interval: 30s
  targetLabels:
    fromPod:
    - from: foo # pod label from example-app Service pods.
      to: foo

Puoi sempre continuare a utilizzare le risorse dell'operatore del prometheus e le configurazioni di deployment esistenti utilizzando i raccoglitori self-deploy anziché i raccoglitori gestiti. Puoi eseguire query sulle metriche inviate da entrambi i tipi di raccoglitori, per cui puoi utilizzare raccoglitori con deployment autonomo per i tuoi deployment Prometheus esistenti e allo stesso tempo utilizzare i raccoglitori gestiti per i nuovi deployment Prometheus.

Etichette prenotate

Managed Service per Prometheus aggiunge automaticamente le seguenti etichette a tutte le metriche raccolte:

  • project_id: l'identificatore del progetto Google Cloud associato alla metrica.
  • location: la località fisica (area geografica Google Cloud) in cui sono archiviati i dati. Questo valore corrisponde in genere all'area geografica del tuo cluster GKE. Se vengono raccolti dati da un deployment AWS o on-premise, il valore potrebbe essere l'area geografica di Google Cloud più vicina.
  • cluster: il nome del cluster Kubernetes associato alla metrica.
  • namespace: il nome dello spazio dei nomi Kubernetes associato alla metrica.
  • job: l'etichetta del job per il target di Prometheus, se nota; potrebbe essere vuota per i risultati della valutazione delle regole.
  • instance: l'etichetta di istanza del target di Prometheus, se nota; potrebbe essere vuota per i risultati della valutazione delle regole.

Sebbene non sia consigliabile durante l'esecuzione su Google Kubernetes Engine, puoi sostituire le etichette project_id, location e cluster aggiungendole come args alla risorsa di deployment all'interno di operator.yaml. Se utilizzi etichette riservate come etichette delle metriche, Managed Service per Prometheus le etichetta automaticamente aggiungendo il prefisso exported_. Questo comportamento corrisponde al modo in cui Prometheus a monte gestisce i conflitti con le etichette riservate.

Eliminazione

Per disabilitare la raccolta gestita di cui è stato eseguito il deployment utilizzando gcloud o la UI di GKE, puoi eseguire una delle seguenti operazioni:

  • Esegui questo comando:

    gcloud container clusters update CLUSTER_NAME --disable-managed-prometheus
    
  • Utilizza l'interfaccia utente di GKE:

    1. Seleziona Kubernetes Engine nella console Google Cloud, quindi seleziona Cluster.

    2. Individua il cluster per cui vuoi disabilitare la raccolta gestita e fai clic sul relativo nome.

    3. Nella scheda Dettagli, scorri verso il basso fino a Funzionalità e imposta lo stato su Disattivato utilizzando il pulsante Modifica.

Per disabilitare la raccolta gestita di cui è stato eseguito il deployment utilizzando Terraform, specifica enabled = false nella sezione managed_prometheus della risorsa google_container_cluster.

Per disabilitare la raccolta gestita con il deployment kubectl, esegui questo comando:

kubectl delete -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/v0.5.0/manifests/operator.yaml

Se disattivi la raccolta gestita, il cluster smetterà di inviare nuovi dati a Managed Service per Prometheus. Questa operazione non elimina i dati delle metriche esistenti già memorizzati nel sistema.

La disattivazione della raccolta gestita elimina anche lo spazio dei nomi gmp-public e le eventuali risorse al suo interno, inclusi eventuali esportatori installati in quello spazio dei nomi.

Esegui la raccolta gestita all'esterno di GKE

Negli ambienti GKE puoi eseguire una raccolta gestita senza ulteriori configurazioni. In altri ambienti Kubernetes, devi fornire esplicitamente le credenziali, un valore project-id per contenere le metriche, un valore location (area geografica Google Cloud) in cui verranno archiviate le metriche e un valore cluster per salvare il nome del cluster in cui è in esecuzione il raccoglitore.

Poiché gcloud non funziona al di fuori degli ambienti Google Cloud, devi eseguire il deployment utilizzando kubectl. A differenza di gcloud, il deployment della raccolta gestita mediante kubectl non esegue automaticamente l'upgrade del cluster quando è disponibile una nuova versione. Ricordati di guardare la pagina delle release per le nuove versioni e di eseguire manualmente l'upgrade eseguendo di nuovo i comandi kubectl con la nuova versione.

Puoi fornire una chiave dell'account di servizio modificando la risorsa OperatorConfig in operator.yaml come descritto nella sezione Fornire le credenziali in modo esplicito. Puoi fornire i valori project-id, location e cluster aggiungendoli come args alla risorsa di deployment all'interno di operator.yaml.

Ti consigliamo di scegliere project-id in base al modello di locazione pianificato per gli annunci. Scegli un progetto in cui archiviare le metriche in base a come prevedi di organizzare gli annunci in un secondo momento tramite gli ambiti delle metriche. Se non ti interessa, puoi inserire tutto in un unico progetto.

Per location, consigliamo di scegliere la regione Google Cloud più vicina al deployment. Più l'area geografica Google Cloud scelta proviene dal tuo deployment, maggiore sarà la latenza di scrittura di cui disponi e più saranno interessati da potenziali problemi di rete. Consulta questo elenco di regioni in più cloud. Se non ti interessa, puoi inserire tutto in un'unica area geografica Google Cloud. Non puoi utilizzare global come località.

Per cluster, consigliamo di scegliere il nome del cluster in cui è stato eseguito il deployment dell'operatore.

Se configurato correttamente, la configurazione dell'operatore dovrebbe essere simile alla seguente:

    apiVersion: monitoring.googleapis.com/v1
    kind: OperatorConfig
    metadata:
      namespace: gmp-public
      name: config
    collection:
      credentials:
        name: gmp-test-sa
        key: key.json
    rules:
      credentials:
        name: gmp-test-sa
        key: key.json

La tua risorsa di deployment dovrebbe avere il seguente aspetto:

apiVersion: apps/v1
kind: Deployment
...
spec:
  ...
  template:
    ...
    spec:
      ...
      containers:
      - name: operator
        ...
        args:
        - ...
        - "--project-id=PROJECT_ID"
        - "--cluster=CLUSTER_NAME"
        - "--location=REGION"

Questo esempio presuppone che tu abbia impostato la variabile REGION su un valore come us-central1.

L'esecuzione di Managed Service per Prometheus all'esterno di Google Cloud comporta tariffe per il traffico dati in entrata e può essere addebitata per l'esecuzione su un altro cloud. Nelle versioni 0.5.0 e successive, puoi ridurre al minimo questi costi attivando la compressione gzip tramite OperatorConfig. Aggiungi il testo in grassetto alla risorsa:

    apiVersion: monitoring.googleapis.com/v1
    kind: OperatorConfig
    metadata:
      namespace: gmp-public
      name: config
    collection:
      compression: gzip
      ...

Ulteriore lettura sulle risorse personalizzate per la raccolta gestita

Per la documentazione di riferimento su tutte le risorse personalizzate di Managed Service per Prometheus, consulta la documentazione di riferimento di Prometheus-engine/doc/api.

Passaggi successivi