Monitora il numero di processi su una VM

Questo documento descrive come utilizzare la console Google Cloud per creare un criterio di avviso che monitora il numero di processi in esecuzione sulle tue macchine virtuali (VM) che soddisfano le condizioni da te specificate. Questo tipo di criterio di avviso viene talvolta chiamato criterio di avviso di integrità del processo. Ad esempio, puoi contare il numero di processi avviati dall'utente root. Puoi anche contare il numero di processi il cui comando di chiamata conteneva una stringa specifica. Un criterio di avviso può inviarti una notifica quando il numero di processi è superiore o inferiore a una soglia. Per informazioni su quali processi possono essere monitorati, consulta la sezione Processi monitorati.

Questi contenuti non si applicano ai criteri di avviso basati su log. Per informazioni sui criteri di avviso basati su log, che inviano una notifica quando un determinato messaggio viene visualizzato nei log, consulta Monitoraggio dei log.

Prima di iniziare

  1. Per ottenere le autorizzazioni necessarie per creare e modificare i criteri di avviso utilizzando la console Google Cloud, chiedi all'amministratore di concederti il ruolo IAM Editor Monitoring (roles/monitoring.editor) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

    Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

    Per ulteriori informazioni sui ruoli di Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.

  2. Assicurati di acquisire familiarità con i concetti generali dei criteri di avviso. Per informazioni su questi argomenti, consulta la Panoramica degli avvisi.

  3. Configura i canali di notifica che vuoi utilizzare per ricevere eventuali avvisi. Ai fini della ridondanza, consigliamo inoltre di creare più tipi di canali di notifica. Per informazioni su questi passaggi, vedi Creare e gestire canali di notifica.

  4. Assicurati di aver installato Ops Agent sulle VM da monitorare. Per maggiori informazioni, consulta Agenti di osservabilità Google Cloud.

Crea criterio di avviso

Per creare un criterio di avviso che monitori il numero di processi in esecuzione su una VM utilizzando l'API Cloud Monitoring, l'espressione di filtro deve specificare un selettore di serie temporali. Per un esempio di file JSON che specifica questo selettore, consulta Criterio di integrità del processo.

Per creare un criterio di avviso che monitori il numero di processi in esecuzione su una VM, segui questi passaggi:

  1. Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi  Avvisi:

    Vai ad Avvisi

  2. Seleziona Crea criterio.
  3. Selezionare ? sull'intestazione della sezione Seleziona metrica, quindi seleziona Modalità filtro diretto nella descrizione comando.

  4. Inserisci un filtro di Monitoring.

    Ad esempio, per conteggiare il numero di processi in esecuzione su istanze VM di Compute Engine il cui nome include nginx, inserisci quanto segue:

    select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
    resource.type="gce_instance"
    

    Per informazioni sulla sintassi, consulta le seguenti risorse:

  5. Completa il criterio di avviso. Devi configurare l'attivatore della condizione, le notifiche, la documentazione e il nome del criterio, quindi fai clic su Crea criterio.

    Per maggiori informazioni, consulta Creare criteri di avviso per soglia di metriche.

Processi monitorati

Non tutti i processi in esecuzione nel sistema possono essere monitorati da una condizione di integrità del processo. Questa condizione seleziona i processi da monitorare utilizzando un'espressione regolare che viene applicata alla riga di comando che ha richiamato il processo. Quando il campo della riga di comando non è disponibile, il processo non può essere monitorato.

Un modo per determinare se un processo può essere monitorato da una condizione di integrità del processo è esaminare i processi attivi. Ad esempio, su un sistema Linux, puoi utilizzare il comando ps:

    ps aux | grep nfs
    USER      PID  %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root      1598  0.0  0.0      0     0 ?        S<   Oct25   0:00 [nfsd4]
    root      1639  0.0  0.0      0     0 ?        S    Oct25   2:33 [nfsd]
    root      1640  0.0  0.0      0     0 ?        S    Oct25   2:36 [nfsd]

Quando una voce COMMAND viene racchiusa tra parentesi quadre, ad esempio [nfsd], le informazioni della riga di comando relative al processo non sono disponibili. In questo caso, non puoi utilizzare Cloud Monitoring per monitorare il processo.