Monitora il conteggio dei processi su una VM

Questo documento descrive come utilizzare la console Google Cloud per creare una policy di avviso che monitora il numero di processi in esecuzione sulle tue macchine virtuali (VM) che soddisfano le condizioni specificate. Questo tipo di criterio di avviso è talvolta chiamato criterio di avviso 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 invocazione 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 sui processi che possono essere monitorati, vedi Processi monitorati.

Questi contenuti non si applicano ai criteri di avviso basati su log. Per informazioni sui criteri di avviso basati su log, che ti avvisano quando nei log viene visualizzato un messaggio specifico, vedi Monitoraggio dei log.

Prima di iniziare

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

    Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

    Per saperne di più sui ruoli Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.

  2. Assicurati di avere familiarità con i concetti generali delle norme di avviso. Per informazioni su questi argomenti, consulta la sezione Panoramica degli avvisi.

  3. Configura i canali di notifica che vuoi utilizzare per ricevere gli avvisi. Per motivi di ridondanza, ti consigliamo anche di creare più tipi di canali di notifica. Per informazioni su questi passaggi, vedi Creare e gestire i canali di notifica.

  4. Assicurati di aver installato l'Ops Agent sulle VM che vuoi monitorare. Per saperne di più, consulta la pagina Agenti Google Cloud Observability.

Crea criterio di avviso

Per creare una criterio di avviso che monitora il conteggio dei 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 monitora il conteggio dei processi in esecuzione su una VM, segui questi passaggi:

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

    Vai ad Avvisi

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

  2. Seleziona Crea policy.
  3. Seleziona ? nell'intestazione della sezione Seleziona metrica e poi seleziona Modalità filtro diretto nel suggerimento.

  4. Inserisci un filtro di monitoraggio.

    Ad esempio, per conteggiare il numero di processi in esecuzione sulle 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 il trigger della condizione, le notifiche, la documentazione e il nome del criterio, quindi fai clic su Crea criterio.

    Per saperne di più, consulta Creare criteri di avviso basati su soglie delle 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 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 è racchiusa tra parentesi quadre, ad esempio [nfsd], le informazioni della riga di comando per il processo non sono disponibili. In questa situazione, non puoi utilizzare Cloud Monitoring per monitorare il processo.