Monitora il conteggio dei 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 specificate. Questo tipo di criterio di avviso è a volte chiamato criterio di avviso relativo allo stato del processo. Ad esempio, puoi conteggiare il numero di processi avviati dall'utente root. Puoi anche conteggiare 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 sui processi che possono essere monitorati, consulta 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 un messaggio specifico viene visualizzato nei log, consulta Monitorare i 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 di monitoraggio (roles/monitoring.editor) nel tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

    Potresti anche riuscire a 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 conoscere 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. Per motivi di ridondanza, ti consigliamo inoltre di creare diversi tipi di canali di notifica. Per informazioni su questi passaggi, consulta Creare e gestire i canali di notifica.

  4. Assicurati di aver installato l'Ops Agent sulle VM che vuoi monitorare. Per ulteriori informazioni, consulta Agenti di Google Cloud Observability.

Crea criterio di avviso

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

Per creare un criterio di avviso che monitora il conteggio dei processi in esecuzione su una VM:

  1. Nella console Google Cloud, 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 criterio.
  3. Seleziona ? nell'intestazione della sezione Seleziona metrica e poi seleziona Modalità di filtro diretto nella descrizione comando.

  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 l'attivatore della condizione, le notifiche, la documentazione e il nome del criterio, e poi fare clic su Crea criterio.

    Per ulteriori informazioni, consulta Creare criteri di avviso basati su soglie di metriche.

Processi monitorati

Non tutte le procedure in esecuzione nel sistema possono essere monitorate da una condizione di stato della procedura. 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 sulla riga di comando per il processo non sono disponibili. In questa situazione, non puoi utilizzare Cloud Monitoring per monitorare il processo.