Monitorar a contagem de processos em uma VM

Neste documento, descrevemos como usar o console do Google Cloud para criar uma política de alertas que monitora o número de processos em execução nas máquinas virtuais (VMs) que atendem às condições especificadas. Esse tipo de política de alertas às vezes é chamado de política de alertas process-health. Por exemplo, é possível contar o número de processos iniciados pelo usuário raiz. Também é possível contar o número de processos que tiveram uma string específica no comando de invocação. Uma política de alertas pode notificar você quando o número de processos for maior ou menor que um limite. Para mais informações sobre quais processos podem ser monitorados, consulte Processos monitorados.

Este conteúdo não se aplica a políticas de alertas baseadas em registros. Para informações sobre políticas de alertas com base em registros, que informam quando uma mensagem específica aparece nos registros, consulte Como monitorar os registros.

Antes de começar

  1. Se quiser ter as permissões necessárias para criar e modificar políticas de alertas usando o console do Google Cloud, peça ao administrador para conceder a você o papel de Editor do Monitoring (roles/monitoring.editor) do IAM no projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

    Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

    Para mais informações sobre os papéis do Cloud Monitoring, consulte Controlar o acesso com o Identity and Access Management.

  2. Conheça os conceitos gerais de políticas de alertas. Para informações sobre esses tópicos, consulte Visão geral de alertas.

  3. Configure os canais de notificação que você quer usar para receber alertas. Para fins de redundância, também recomendamos a criação de vários tipos de canais de notificação. Para saber mais sobre essas etapas, consulte Criar e gerenciar canais de notificação.

  4. Verifique se você instalou o Agente de operações nas VMs que quer monitorar. Para mais informações, consulte os agentes de observabilidade do Google Cloud.

Criar política de alertas

Para criar uma política de alertas que monitore a contagem de processos em execução em uma VM usando a API Cloud Monitoring, a expressão de filtro precisa especificar um seletor de série temporal. Para ver um exemplo de arquivo JSON que especifica esse seletor, consulte Política de integridade do processo.

Para criar uma política de alertas que monitore a contagem de processos em execução em uma VM, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Monitoramento e  Alertas:

    Acessar Alertas

  2. Selecione Criar política.
  3. Selecione ? no cabeçalho da seção Selecionar métrica e, em seguida, selecione Modo de filtro direto na dica.

  4. Insira um filtro do Monitoring.

    Por exemplo, para contar o número de processos em execução em instâncias de VM do Compute Engine com um nome que inclua nginx, digite o seguinte:

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

    Para saber mais, acesse os recursos a seguir:

  5. Conclua a política de alertas. Configure o acionador da condição, as notificações, a documentação e o nome da política e, em seguida, clique em Criar política.

    Para mais informações, consulte Criar políticas de alertas de limite de métrica.

Processos monitorados

Nem todos os processos em execução no sistema podem ser monitorados por uma condição de integridade do processo. Essa condição seleciona processos a serem monitorados usando uma expressão regular aplicada à linha de comando que invocou o processo. Quando o campo de linha de comando não está disponível, o processo não pode ser monitorado.

Uma maneira de determinar se um processo pode ser monitorado por uma condição de integridade é analisar os processos ativos. Por exemplo, em um sistema Linux, use o 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 uma entrada COMMAND é colocada entre colchetes, por exemplo, [nfsd], as informações de linha de comando para o processo não estão disponíveis. Nessa situação, não é possível usar o Cloud Monitoring para monitorar o processo.