Monitorar e otimizar recursos do job visualizando métricas

Neste documento, descrevemos como monitorar e tentar otimizar os recursos para um job em lote visualizando métricas no Cloud Monitoring. Para saber mais sobre os recursos em que um job é executado, consulte Recursos do job.

Para qualquer job, o Monitoring fornece métricas básicas, como utilização da CPU e tráfego de rede. No entanto, algumas métricas, como utilização de memória e processos, só poderão ser coletadas se um job instalar o Agente de operações. As métricas dos recursos de um job ajudam a avaliar o desempenho e a utilização de cada recurso. Essas informações podem ajudar a identificar melhorias para qualquer iteração futura do job. Por exemplo, é possível remover recursos não utilizados para otimizar os custos ou melhorar ou aumentar os recursos cansados para melhorar o desempenho.

Antes de começar

Conferir métricas de recursos do job

Observe e monitore as VMs na documentação do Compute Engine para ver informações conceituais relevantes sobre as métricas de VM. No entanto, métodos diferentes são recomendados para visualizar métricas de VM para jobs em lote. Especificamente, a documentação do Compute Engine explica como visualizar métricas usando os painéis predefinidos do Monitoring para páginas do Compute Engine ou do Compute Engine no console do Google Cloud. Porém, é importante ressaltar que esses métodos não exibem informações sobre as VMs que foram excluídas. Como resultado, não use esses métodos, a menos que você queira visualizar apenas métricas de jobs em lote enquanto eles estiverem em execução.

Veja as métricas de jobs em lote executados e concluídos usando os gráficos do Metrics Explorer, conforme explicado nesta seção. Os gráficos são temporários, a menos que você os salve em painéis personalizados.

Para criar um gráfico e visualizar uma ou mais métricas, faça o seguinte:

  1. Opcional: se você planeja salvar o gráfico, identifique ou crie um painel personalizado para ele.
  2. Crie um gráfico do Metrics Explorer para uma ou mais métricas.

    Sem filtros, cada métrica de VM em um gráfico inclui dados de todas as VMs no projeto. Opcionalmente, se você quiser filtrar o gráfico para incluir apenas métricas de todos os jobs do Batch ou específicos, adicione o seguinte filtro:

    group=RESOURCE_GROUP_NAME
    

    Substitua RESOURCE_GROUP_NAME pelo nome de um grupo de recursos para jobs em lote. Para mais informações, consulte Criar grupos de recursos para filtrar métricas neste documento.

Criar grupos de recursos para filtrar métricas

É possível usar grupos de recursos como filtros personalizáveis para os gráficos do Metrics Explorer. Para criar um grupo de recursos para todos os jobs do Batch ou para jobs específicos no projeto, faça o seguinte:

  1. Selecione um rótulo a ser usado como critério de associação com base nos jobs que você quer incluir no grupo:

    • Todos os jobs do Batch: use o rótulo predefinido batch-node, que é aplicado automaticamente a todos os recursos de todos os jobs do Batch e tem um valor nulo.
    • Jobs em lote específicos: use um rótulo aplicado aos recursos apenas para jobs em lote específicos.

      Por exemplo, se você quiser criar um grupo com base em nomes de jobs completos ou parciais, use o nome de rótulo batch-job-id predefinido com um valor específico. O rótulo batch-job-id é aplicado automaticamente a todos os recursos de todos os jobs em lote e definido com o nome do job.

      Como alternativa, se você usar um rótulo personalizado, aplique-o a todos os recursos dos jobs do Batch que você quer incluir no grupo ao criar os jobs.

  2. Verifique se o projeto tem pelo menos um job com o rótulo selecionado e se esse job está no estado RUNNING. Caso contrário, esse rótulo não vai aparecer como uma opção quando você tentar criar o grupo de recursos.

  3. Criar um grupo de recursos. Ao especificar os critérios de associação, faça o seguinte:

    1. Defina o Tipo como Tag.
    2. Defina o campo Tag com o nome do rótulo selecionado. Em seguida, defina os campos a seguir com base nos valores de rótulo que você quer que o grupo inclua.

      Por exemplo, se você quiser que esse grupo inclua todos os jobs do Batch, defina Tag como batch-node e Operator como Exists. Como alternativa, você quer que esse grupo inclua jobs em lote com nomes que começam com test, defina Tag como batch-job-id, defina Operador como Começa com e defina Valor como test.

A seguir