Configura Cloud Monitoring con un agente autonomo

Cloud Monitoring consente di ottenere visibilità sullo le prestazioni, la disponibilità e l'integrità delle tue applicazioni e dell'infrastruttura. Puoi utilizzare Cloud Monitoring e altre parti dell'osservabilità di Google Cloud per monitorare, risolvere i problemi e gestire i servizi VMware Engine su larga scala.

La configurazione dell'inoltro delle metriche viene definita separatamente per ogni cloud privato utilizzando un agente autonomo. Ogni cloud privato richiede un agente separato, ospitato in una VM Compute Engine o in una VM VMware.

Dopo aver abilitato correttamente l'inoltro delle metriche, potrai visualizzare le metriche in Esplora metriche di Cloud Monitoring. Metriche e tipi di risorse VMware Engine inizia con external.googleapis.com/vmware/vcenter, e il nome di dominio completo vCenter è taggato come parte dello spazio dei nomi.

Prima di iniziare

I passaggi descritti in questo documento presuppongono che:

  1. Abilita l'API Cloud Monitoring
  2. Identifica l'account utente della soluzione da utilizzare con l'agente autonomo e impostare una password efficace per l'utente della soluzione .
  3. Crea una VM Compute Engine o una VM VMware da utilizzare come host per l'agente autonomo. Le VM di Compute Engine devono trovarsi Rete Virtual Private Cloud (VPC) in peering al cloud privato Rete VPC contenente le risorse da monitorare.

    Per un esempio di creazione di una VM Compute Engine, consulta il Guida rapida di Compute Engine mediante una VM Linux. Per un esempio di creazione di una VM VMware, consulta Creare una VM VMware.

Se utilizzi una VM di Compute Engine per ospitare l'agente autonomo, Google gestisce rotazione della chiave per l'account di servizio che colleghi. Tuttavia, può essere conveniente creare una VM VMware se hai capacità inutilizzata nel cloud privato e non ti dispiace gestire autonomamente rotazione della chiave.

Indipendentemente da dove viene creata la VM host dell'agente, deve soddisfare i seguenti requisiti requisiti:

Requisiti

La VM host dell'agente deve soddisfare i seguenti requisiti di sistema:

  • Sistemi operativi Linux supportati:
    • CentOS 6, 7 o 8
    • Red Hat Enterprise Linux 6, 7 o 8
    • SLES 12 o 15
    • Ubuntu 14, 16, 18 o 19
  • Almeno 4 GB di RAM
  • 300 MB di spazio di installazione disponibile
  • Directory di installazione impostata su /opt/bpagent
  • Utilità dell'interfaccia a riga di comando di curl installata

La VM host dell'agente deve inoltre accedere ai seguenti indirizzi per raccogli ed esegui il push di metriche e log:

  • Porta 443 (TCP) per la connessione HTTPS al server vCenter (predefinita)
  • monitoring.googleapis.com:443 (external access)
  • logging.googleapis.com:443 (external access)

Attivazione del forwarding delle metriche

Il processo di configurazione della VM host dell'agente e di abilitazione del forwarding delle metriche consiste nei seguenti passaggi:

  1. Installa l'agente sulla VM
  2. Specifica un account di servizio
  3. Configura l'agente per accedere al cloud privato per le metriche
  4. Configura l'agente affinché acceda all'account di servizio per i report
  5. Raccogli metriche e log
  6. Configura un cloud privato per l'inoltro di syslog

Installazione dell'agente autonomo

Per installare l'agente sulla VM host:

  1. Connettiti alla VM host dell'agente.
  2. Esegui lo script di installazione da remoto:

    sudo sh -c "$(curl -S https://storage.googleapis.com/gcve-observability-agent/latest/vmware-linux-amd64/installer/install.sh)"
    

Per i sistemi in cui la VM host dell'agente potrebbe non avere accesso alla rete esterna, puoi scaricare l'agente e lo script di installazione utilizzando i seguenti comandi:

  • Per ottenere l'agente autonomo, esegui questo comando:

    curl -S https://storage.googleapis.com/gcve-observability-agent/latest/vmware-linux-amd64/artifacts/bpagent-headless-vmware.tar.gz > agent.tar.gz
    
  • Per ottenere lo script di installazione, esegui quanto segue:

    curl -S https://storage.googleapis.com/gcve-observability-agent/latest/vmware-linux-amd64/installer/install.sh > install.sh
    
  • Per installare l'agente, esegui questo comando sulla VM host dell'agente:

    sudo sh install.sh agent.tar.gz
    

Specifica un account di servizio personalizzato

Per inoltrare i dati dall'agente a Cloud Monitoring è necessario un account di servizio del tuo progetto Google Cloud. Questo l'account di servizio deve avere il ruolo Amministratore Monitoring per le metriche e Ruolo Writer log per i log.

Se non hai un account di servizio per le applicazioni di monitoraggio e logging, Creane uno:

  1. Nella console Google Cloud, vai a IAM e Amministratore > Account di servizio.

    Vai a Service account

  2. Fai clic su Crea account di servizio.

  3. Inserisci un nome, un ID e una descrizione per l'account di servizio. I nostri suggerimenti rilevando che l'account viene utilizzato per l'integrazione dell'agente.

  4. Fai clic su Crea e continua.

  5. In Ruolo, seleziona Amministratore Monitoring.

  6. In Ruolo, seleziona Writer log.

  7. Fai clic su Continua.

  8. Fai clic su Fine.

Se hai creato una VM VMware come VM host dell'agente, recupera l'account di servizio chiave privata in modo da poterla utilizzare per configurare l'agente:

  1. Nella console Google Cloud, vai a IAM e amministrazione > Account di servizio.

    Vai a Service account

  2. Individua il tuo account di servizio nell'elenco degli account di servizio.

  3. Nella colonna Azioni, fai clic sul menu azioni per l'account di servizio e seleziona Gestisci chiavi.

  4. Fai clic su Aggiungi chiave e seleziona Crea nuova chiave.

  5. Seleziona il tipo di chiave JSON e fai clic su Crea.

  6. Apri il file JSON generato e copia l'intero contenuto del file. La raccolta delle metriche e la raccolta dei log utilizzano entrambi lo stesso file della chiave JSON.

  7. Sulla VM host dell'agente, copia il file della chiave JSON Directory /opt/bpagent/config/destinations/google_cloud.

Configura l'agente per accedere al cloud privato per le metriche

L'agente autonomo deve accedere al cloud privato per raccogliere le metriche. Attivato la VM host dell'agente, imposta l'accesso copiando e configurando File vmware_vcenter.yaml:

  1. Copia vmware_vcenter.yaml nella directory config/metrics/sources:

    cp /opt/bpagent/config/metrics/examples/vmware_vcenter.yaml /opt/bpagent/config/metrics/sources
    
  2. Modifica il vmware_vcenter.yaml in modo che corrisponda alle informazioni nel tuo Ambiente VMware Engine:

    collection_interval: 1m0s
    connection_info:
    connection_timeout: "30"
    enable_performance_counters: "true"
    host: VCSA_FQDN
    password: SOLUTION_USER_PASSWORD
    performance_counter_end_time: ""
    performance_counter_query_timeout: "15"
    performance_counter_start_time: ""
    port: "443"
    sdk_path: ""
    ssl_config: "No Verify"
    username: SOLUTION_USER_ACCOUNT

    Sostituisci quanto segue:

    • VCSA_FQDN: il nome di dominio completo (FQDN) dell'appliance vCenter Server nel cloud privato
    • SOLUTION_USER_PASSWORD: la password corrisponde all'account utente della soluzione utilizzato
    • SOLUTION_USER_ACCOUNT: l'account utente della soluzione che l'agente utilizza per segnalare informazioni

Configura l'agente in modo che acceda all'account di servizio per i report

L'agente autonomo deve accedere a Google Cloud Observability per inviare metriche e log. Configura l'agente per accedere al progetto utilizzato per la generazione di report tramite il servizio che dispone delle autorizzazioni per il monitoraggio e il logging.

Sulla VM host dell'agente, copia e configura il file log_agent.yaml:

  1. Copia log_agent.example.yaml in log_agent.yaml prima di modificare:

    cp /opt/bpagent/config/log_agent.example.yaml /opt/bpagent/config/log_agent.yaml
    
  2. In fondo a log_agent.yaml, inserisci il nome del progetto e il percorso completo al file della chiave JSON. Per le VM host degli agenti create in Compute Engine, rimuovi o commenta la riga credentials_file.

    ...
    - id: my_project_destination
      project_id: PROJECT_ID
      type: google_cloud_output
      credentials_file: /opt/bpagent/config/destinations/google_cloud/JSON_KEY_FILE

    Sostituisci quanto segue:

    • PROJECT_ID: ID del progetto in cui vuoi log di output
    • JSON_KEY_FILE: nome dell'account di servizio privato chiave. Rimuovi o commenta questa riga per le VM host dell'agente create in in Compute Engine.

    Se devi inoltrare il syslog da ESXi, nell'agente log autonomo, procedi procedi come segue per modificare la porta predefinita da 5142 a 514:

    1. Vai a /opt/bpagent/config.
    2. Aggiorna il numero di porta a 514 nel seguente modo:
    - id: vmware-vcenter-logs
        # A syslog address of the form `:`
        listen_address: 0.0.0.0:514
        # Enable TLS for the TCP listener
        enable_tls: false
    

Raccogli metriche e log

Per raccogliere metriche o log, l'agente autonomo deve essere in esecuzione sull'agente una VM host. Connettiti alla VM host dell'agente e utilizza i seguenti comandi per avviare o interrompi l'agente:

  • Per avviare l'agente sulla VM host, esegui quanto segue:

    systemctl start bpagent
    
  • Per interrompere l'agente sulla VM host, esegui quanto segue:

    systemctl stop bpagent
    

Configurare un cloud privato per l'inoltro syslog

VMware Engine si integra con Cloud Logging inoltrando syslog messaggi da vCenter e NSX-T all'agente autonomo. L'agente autonomo è configurato per analizzare i log di vCenter e NSX-T in modo che Cloud Logging possa leggerli.

Per inoltrare i messaggi syslog da VMware Engine, segui questi passaggi:

  • Per l'inoltro di syslog di vCenter, segui la procedura descritta in Inoltrare messaggi di syslog di vCenter. Nel campo Server, inserisci l'indirizzo IP o il nome host dell'host dell'agente VM. L'agente autonomo utilizza il protocollo di comunicazione TCP e rimane in ascolto sulla porta 5142. L'agente autonomo deve essere in esecuzione per syslog configurazione per stabilire la connessione.
  • Per l'inoltro di syslog NSX-T, segui la procedura descritta in Inoltrare messaggi syslog NSX-T. Nel campo FQDN o indirizzo IP, inserisci l'indirizzo IP o il nome host del tuo VM host dell'agente. L'agente autonomo utilizza il protocollo di comunicazione TCP e rimane in ascolto sulla porta 5142.

Se prevedi di inoltrare syslog dagli host ESXi, modifica la porta predefinita su cui l'agente di log rimane in ascolto da 5142 a 514. In tal caso, utilizza la stessa porta (514) per l'inoltro di syslog da vCenter e da NSX-T.

Disinstallazione dell'agente

Per rimuovere l'agente da una VM, connettiti alla VM dell'agente ed esegui questo comando: nella riga di comando:

  1. Arresta e disabilita l'agente autonomo:

    systemctl stop bpagent
    
    systemctl disable bpagent
    
  2. Esegui questi comandi per rimuovere il servizio agente autonomo:

    rm /etc/systemd/system/bpagent.service
    
    rm -rf /opt/bpagent
    
  3. Aggiorna la configurazione di sistema in base alle modifiche al servizio ed elimina unità con errori:

    systemctl daemon-reload
    
    systemctl reset-failed
    

Dashboard di Cloud Monitoring

Dopo aver abilitato l'inoltro delle metriche, puoi installare dashboard predefinite per con VMware Engine. Le dashboard seguenti forniscono dati aggregati informazioni provenienti da tutte le fonti specificate:

  • Dashboard della panoramica: visualizzazione generale che elenca risorse chiave come i dati di data center, cluster e VM.
  • Dashboard Concorrenza: utilizzo delle risorse per archiviazione, CPU, memoria e rete per aiutarti a individuare le VM e gli host principali in base alla domanda di risorse.
  • Dashboard prestazioni macchina virtuale: istanza della macchina virtuale (VM) di prestazioni che possono essere filtrati per nome istanza e usati per le prestazioni di più VM tra loro.

Per accedere a una dashboard di VMware Engine:

  1. Nella console Google Cloud, vai a Monitoring > Dashboard.

    Accedi a Dashboard

  2. Nella scheda Sample Library, seleziona la categoria VMware.

  3. Seleziona la dashboard che ti interessa e fai clic su Importa.

Le definizioni di queste dashboard sono anche archiviate su GitHub. Per la procedura di installazione o visualizzazione delle definizioni come dashboard personalizzate, consulta Installa dashboard di esempio.

Avvisi di Cloud Monitoring

Puoi utilizzare le metriche dell'integrazione per attivare avvisi e notifiche in base a soglie e incidenti personalizzati. Ad esempio, puoi avere Cloud Monitoring ti invia una notifica SMS quando qualcuno crea una nuova VM nel tuo cloud privato.

Per maggiori dettagli, consulta la sezione Introduzione agli avvisi.

Elenco delle metriche raccolte

Dopo aver attivato correttamente l'inoltro delle metriche, puoi visualizzarle in Metrics Explorer di Cloud Monitoring. I tipi di risorse e di metriche di VMware Engine iniziano con il prefisso external.googleapis.com/vmware/vcenter. in Metrics Explorer.

Ecco l'elenco completo delle metriche raccolte per VMware Engine, con prefisso omesso:

Tipo di risorsa e metrica Descrizione
cluster.cpu.available CPU disponibile in un cluster, in megahertz
cluster.memory.available Memoria disponibile in un cluster, in byte
cluster.cpu.threads Numero di thread della CPU in un cluster
cluster.cpu.effective CPU effettiva in un cluster da tutti gli host in esecuzione. Host che che non risponde o è in modalità di manutenzione non vengono conteggiate.
cluster.effective_hosts Numero di host effettivi in un cluster. Gli host non in ascolto o in modalità di manutenzione non vengono conteggiati.
cluster.memory.effective Memoria effettiva in un cluster da tutti gli host in esecuzione. Host che che non risponde o è in modalità di manutenzione non vengono conteggiate.
cluster.hosts Numero di host in un cluster
cluster.vsan.latency Latenza vSAN di un cluster, in microsecondi
cluster.vsan.throughput Velocità effettiva di lettura/scrittura vSAN di un cluster, in byte
cluster.vsan.iops IOPS vSAN di un cluster
cluster.vsan.congestions Valore di congestione vSAN di un cluster
cluster.vsan.oio I/O (oio) vSAN in sospeso in un cluster
datacenter.cpu.average_host_utilization Utilizzo medio dell'host di un data center, in percentuale
datacenter.clusters Numero di cluster in un data center
datacenter.datastores Numero di datastore in un data center
datacenter.hosts Numero di host in un data center
datacenter.host_systems Numero di sistemi host in un data center
datacenter.hosts/powered_on Numero di host accesi in un data center
datacenter.hosts/powered_off Numero di host spenti in un data center
datacenter.disk/space Spazio totale su disco in un data center, in terabyte
datastore.capacity_bytes Capacità di un datastore, in byte
datastore.capacity_utilization Utilizzo della capacità di un datastore, in percentuale
host_system.network.transmitted_packets Numero di pacchetti di rete trasmessi dal sistema host
host_system.network.received_packets Numero di pacchetti di rete ricevuti dal sistema host
host_system.dropped_packets Numero di pacchetti di rete eliminati dal sistema host
host_system.network.adapters Numero di adattatori di rete del sistema host
host_system.memory.utilization Utilizzo della memoria del sistema host, in percentuale
host_system.memory.utilization_ratio Rapporto di utilizzo della memoria del sistema host
host_system.memory.used Memoria utilizzata dal sistema host, in megabyte
host_system.disk.read Lettura del disco del sistema host, in kilobyte al secondo
host_system.disk_latency Latenza del disco del sistema host, in millisecondi
host_system.cpu.usage Utilizzo della CPU del sistema host, in percentuale
host_system.cpu.utilization_ratio Rapporto di utilizzo della CPU del sistema host
host_system.cpu.capacity Capacità della CPU del sistema host, in megahertz
host_system.cpu.reserved_capacity Capacità della CPU riservata del sistema host, in megahertz
host_system.cpu.average_speed Velocità media della CPU del sistema host, in megahertz
host_system.cpu.used CPU utilizzata dal sistema host, in megahertz
host_system.vsan.throughput Velocità effettiva di lettura e scrittura vSAN del sistema host, in byte
host_system.vsan.iops IOPS vSAN del sistema host
host_system.vsan.latency Latenza vSAN del sistema host, in microsecondi
host_system.vsan.client_cache_hits Hit della cache client vSAN del sistema host
host_system.vsan.client_cache_hit_rate Percentuale di successo della cache del client vSAN del sistema host, in percentuale
host_system.vsan.congestions Valore di congestione vSAN del sistema host
resource_pool.memory.swapped_bytes Memoria scambiata con vCenter, in megabyte
resource_pool.memory.shared_bytes Memoria condivisa vCenter, in megabyte
resource_pool.memory.private_bytes Memoria privata vCenter, in megabyte
resource_pool.memory.shares Numero di condivisioni della memoria vCenter
resource_pool.memory.overhead_usage_bytes Utilizzo overhead della memoria vCenter, in megabyte
resource_pool.memory.host_usage_bytes Utilizzo host memoria vCenter, in megabyte
resource_pool.memory.active_guest_usage_bytes Utilizzo da parte di ospiti attivi della memoria vCenter, in megabyte
resource_pool.memory.balloon_size Dimensioni della memoria del fumetto vCenter, in megabyte
resource_pool.cpu.usage CPU utilizzata da vCenter, in megahertz
resource_pool.cpu.shares Numero di condivisioni della CPU nel pool di risorse, in megabyte
vm.memory.ballooned Dimensioni della memoria del fumetto della VM, in megabyte
vm.network.throughput_bytes Velocità effettiva di rete della VM, in kilobyte al secondo
vm.memory.used_percent Memoria utilizzata dalla VM, in percentuale della memoria disponibile
vm.memory.usage_bytes Memoria utilizzata dalla VM, in megabyte
vm.disk.throughput_bytes Velocità effettiva di lettura e scrittura del disco della VM, in kilobyte al secondo
vm.disk.used_percent Utilizzo del disco della VM, in percentuale dello spazio di archiviazione disponibile
vm.disk.usage_bytes Utilizzo del disco della VM, in byte
vm.disk.free_bytes Spazio su disco disponibile della VM, in byte
vm.cpu.used_percent Utilizzo della CPU della VM, come percentuale della CPU disponibile
vm.cpu.usage Utilizzo della CPU della VM, in megahertz
vm.cpu.ready_percent CPU della VM pronta, ma non in esecuzione, in percentuale
vm.vsan.throughput Velocità effettiva di lettura e scrittura vSAN della VM, in byte
vm.vsan.iops IOPS vSAN della VM
vm.vsan.latency Latenza vSAN della VM, in microsecondi
vm.vsan.readCount Conteggio delle operazioni di lettura vSAN della VM
vm.vsan.writeCount Conteggio delle scritture vSAN della VM
vsphere.cpu.available CPU disponibile nei cluster gestiti da vSphere, in gigahertz
vsphere.memory.available Memoria disponibile in gigabyte nei cluster gestiti da vSphere
vsphere.clusters.total Numero di cluster gestiti da vSphere
vsphere.clusters Numero di cluster gestiti da vSphere con il colore di stato del cluster codice (ad esempio verde, grigio, rosso o giallo)
vsphere.cpu.cpus Numero totale di core CPU del sistema host gestiti da vSphere
vsphere.datacenters Numero di data center gestiti da vSphere
vsphere.datastores.total Numero di datastore in vSphere
vsphere.datastores Numero di datastore gestiti da vSphere con lo stato del datastore codice colore (ad esempio verde, grigio, rosso o giallo)
vsphere.disk.space Spazio totale su disco collegato in vSphere, in terabyte
vsphere.host_systems Numero di sistemi host in vSphere
vsphere.hosts Numero di sistemi host gestiti da vSphere con lo stato del sistema host codice colore (ad esempio verde, grigio, rosso o giallo)
vsphere.network.adapters Numero di schede di rete in vSphere
vsphere.hosts.powered_off Numero di host spenti in vSphere
vsphere.hosts.powered_on Numero di host attivati in vSphere
vsphere.virtual_machines.total Numero di VM in tutti i cluster vSphere
vsphere.virtual_machines Numero di VM gestite da vSphere con il codice colore dello stato della VM (come verde, grigio, rosso o giallo)