Monitorar o status de integridade

As instâncias do Workbench da plataforma de agentes do Gemini Enterprise oferecem vários métodos para monitorar a integridade dos notebooks. Nesta página, descrevemos como usar cada método.

Métodos para monitorar o status de integridade

Há várias maneiras de monitorar a integridade das instâncias do Agent Platform Workbench. Nesta página, descrevemos como usar os seguintes métodos:

Antes de começar

  1. Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. Instale a CLI do Google Cloud.

  6. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

  7. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  11. Instale a CLI do Google Cloud.

  12. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

  13. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init

Usar atributos de convidado para informar a integridade do sistema

Use atributos de convidado para informar a integridade do sistema dos seguintes serviços principais:

  • Serviço do Docker
  • Agente de proxy reverso do Docker
  • Serviço Jupyter
  • API Jupyter

Os atributos de convidado são um tipo específico de metadados personalizados em que os aplicativos podem gravar enquanto estão sendo executados na instância do Agent Platform Workbench. Para saber mais sobre atributos de convidado, consulte Sobre metadados de VM.

Como as instâncias usam atributos de convidado para relatar a integridade do sistema

O serviço notebooks-collection-agent executa um processo Python em segundo plano que verifica o status dos serviços principais da instância do Agent Platform Workbench e atualiza os atributos de convidado como 1 se nenhum problema for detectado ou -1 se for detectada uma falha.

Para usar o serviço notebooks-collection-agent para gerar relatórios sobre a integridade da instância do Workbench da Agent Platform, ative os seguintes atributos de convidado ao criar uma instância do Workbench da Agent Platform:

  • enable-guest-attributes=TRUE: isso permite atributos de convidado na instância do Agent Platform Workbench. Todas as instâncias novas ativam esse atributo por padrão.
  • report-event-health=TRUE: registra os resultados da verificação de integridade do sistema nos atributos de convidado.

O serviço notebooks-collection-agent não precisa de permissões especiais para gravar nos atributos de convidado da instância.

Criar uma instância do Agent Platform Workbench com atributos de convidado de integridade do sistema ativados

Para usar os atributos de convidado da integridade do sistema para gerar relatórios sobre a integridade da instância do Agent Platform Workbench, marque a caixa de seleção Ativar relatório de integridade do sistema ao criar uma instância do Agent Platform Workbench.

É possível ativar o relatório de integridade do sistema usando o console Google Cloud ou a Google Cloud CLI.

Console

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique em Criar.

  3. Na caixa de diálogo Nova instância, clique em Opções avançadas.

  4. Na caixa de diálogo Criar instância, na seção Detalhes, insira as seguintes informações sobre a nova instância:

    • Nome: forneça um nome para a nova instância.
    • Região e Zona: selecione uma região e zona para a nova instância. Para ter o melhor desempenho de rede, selecione a região mais próxima de você. Confira os locais disponíveis do Workbench da Agent Platform.
  5. Na seção Integridade do sistema, em Relatórios, selecione Informar integridade do sistema.

  6. Conclua o restante da caixa de diálogo de criação de instância e clique em Criar.

gcloud

  1. No Cloud Shell ou em qualquer ambiente em que a Google Cloud CLI esteja instalada, insira os comandos da Google Cloud CLI a seguir.

    gcloud workbench instances create INSTANCE_NAME \
        --vm-image-project=cloud-notebooks-managed \
        --vm-image-family=IMAGE_FAMILY \
        --machine-type=MACHINE_TYPE \
        --location=ZONE \
        --metadata=enable-guest-attributes=TRUE,report-event-health=TRUE
    

    Substitua:

    • INSTANCE_NAME: o nome da nova instância.
    • IMAGE_FAMILY: o nome da família de imagens que você quer usar para criar sua instância
    • MACHINE_TYPE: o tipo de máquina da VM da instância. Por exemplo, n1-standard-4
    • ZONE: a zona em que você quer que a nova instância esteja localizada, por exemplo, us-west1-a
  2. Acesse a instância no console doGoogle Cloud .

Monitorar a integridade do sistema por meio de atributos de convidado

Para instâncias do Agent Platform Workbench com os atributos de convidado relacionados ativados, é possível recuperar os valores dos atributos de convidado da integridade do sistema usando o console Google Cloud , a Google Cloud CLI com comandos do Compute Engine ou a Google Cloud CLI com comandos do Gemini Enterprise Agent Platform Workbench.

Console

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique no nome da instância da qual você quer visualizar o status de integridade do sistema.

  3. Na página Detalhes da instância, clique na guia Integridade. Revise o status da instância e os serviços principais.

gcloud com o Compute Engine

gcloud compute instances get-guest-attributes INSTANCE_NAME \
    --zone ZONE

Substitua:

  • INSTANCE_NAME: o nome da instância
  • ZONE: a zona em que a instância está localizada

Se os serviços principais estiverem íntegros, os resultados serão semelhantes aos mostrados a seguir. O valor 1 significa que nenhuma falha foi detectada.

 NAMESPACE   KEY                         VALUE
 notebooks   docker_proxy_agent_status   1
 notebooks   docker_status               1
 notebooks   jupyterlab_api_status       1
 notebooks   jupyterlab_status           1
 notebooks   system-health               1
 notebooks   updated                     2023-06-20 17:00:00.12345

Se algum dos quatro serviços principais falhar, a integridade do sistema informa um valor -1 para indicar falha no sistema. Na maioria dos casos, uma falha do sistema significa que o JupyterLab não está acessível.

Um exemplo de resultado de falha pode ser semelhante ao seguinte.

 NAMESPACE   KEY                         VALUE
 notebooks   docker_proxy_agent_status   -1
 notebooks   docker_status               -1
 notebooks   jupyterlab_api_status       1
 notebooks   jupyterlab_status           1
 notebooks   system-health               -1
 notebooks   updated                     2023-06-20 17:00:00.12345

Relatar métricas personalizadas para o Monitoring

As instâncias do Agent Platform Workbench permitem coletar o status do sistema e as métricas do JupyterLab e reportá-las ao Cloud Monitoring. Essas métricas personalizadas são diferentes das métricas padrão informadas quando você instala o Monitoring na instância do Agent Platform Workbench.

As métricas personalizadas informadas ao Monitoring incluem o seguinte:

  • A integridade do sistema destes serviços principais do Agent Platform Workbench:

    • Serviço do Docker
    • Agente de proxy reverso do Docker
    • Serviço Jupyter
    • API Jupyter
  • As métricas do JupyterLab a seguir:

    • Número de kernels
    • Número de terminais
    • Número de conexões
    • Número de sessões
    • Máximo de memória
    • Alta memória
    • Memória atual

Como as instâncias informam métricas personalizadas para o Monitoring

Para relatar métricas personalizadas ao Monitoring, é preciso ativar a configuração de metadados report-notebook-metrics ao criar uma instância do Agent Platform Workbench.

Verifique também se a conta de serviço da instância do Agent Platform Workbench tem as permissões de gravador de métricas do Monitoring (roles/monitoring.metricWriter). Para mais informações, consulte Gerenciar o acesso a projetos, pastas e organizações.

Criar uma instância do Workbench da Gemini Enterprise Agent Platform que informe métricas personalizadas ao Monitoring

Para relatar métricas personalizadas ao Monitoring, marque a caixa de seleção Informar métricas personalizadas ao Cloud Monitoring ao criar uma instância do Agent Platform Workbench.

É possível ativar a geração de relatórios de métricas personalizadas para o Cloud Monitoring usando o console Google Cloud ou a CLI gcloud.

Console

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique em Criar.

  3. Na caixa de diálogo Nova instância, clique em Opções avançadas.

  4. Na caixa de diálogo Criar instância, na seção Detalhes, insira as seguintes informações sobre a nova instância:

    • Nome: forneça um nome para a nova instância.
    • Região e Zona: selecione uma região e zona para a nova instância. Para ter o melhor desempenho de rede, selecione a região mais próxima de você. Confira os locais disponíveis do Workbench da Agent Platform.
  5. Na seção Integridade do sistema, em Relatórios, selecione Informar métricas personalizadas ao Cloud Monitoring.

  6. Conclua o restante da caixa de diálogo de criação de instância e clique em Criar.

gcloud

  1. No Cloud Shell ou em qualquer ambiente em que a Google Cloud CLI esteja instalada, insira os comandos da Google Cloud CLI a seguir.

    gcloud workbench instances create INSTANCE_NAME \
        --vm-image-project=cloud-notebooks-managed \
        --vm-image-family=IMAGE_FAMILY \
        --machine-type=MACHINE_TYPE \
        --location=ZONE \
        --metadata=report-notebook-metrics=TRUE
    

    Substitua:

    • INSTANCE_NAME: o nome da nova instância.
    • IMAGE_FAMILY: o nome da família de imagens que você quer usar para criar sua instância
    • MACHINE_TYPE: o tipo de máquina da VM da instância, por exemplo, n1-standard-4;
    • ZONE: a zona em que você quer que a nova instância esteja localizada, por exemplo, us-west1-a
  2. Acesse a instância no console doGoogle Cloud .

Conceder permissões de gravador de métricas do Monitoring à conta de serviço

Depois de criar sua nova instância do Workbench da Plataforma de Agentes, conceda permissões de gravador de métricas do Monitoring (roles/monitoring.metricWriter) à conta de serviço da instância do Workbench da Plataforma de Agentes. Para mais informações, consulte Gerenciar o acesso a projetos, pastas e organizações.

Monitorar métricas personalizadas com o Monitoring

Para instâncias do Agent Platform Workbench que têm relatórios de métricas personalizadas ativadas, é possível monitorar suas métricas personalizadas usando o console Google Cloud .

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique no nome da instância cujas métricas personalizadas você quer visualizar.

  3. Na página Detalhes da instância, clique na guia Monitoramento. Revise as métricas personalizadas da instância.

Instalar o Monitoring em uma instância

Essa opção instala o Monitoring automaticamente. A instalação requer 256 MB de espaço em disco. É necessário ter uma conexão de Internet para que as métricas sejam informadas ao Monitoring.

Como as instâncias relatam métricas do sistema e do aplicativo

Para gerar relatórios de métricas do sistema e do aplicativo instalando o Cloud Monitoring na instância do Agent Platform Workbench, marque a caixa de seleção Instalar agente do Cloud Monitoring ao criar uma instância do Agent Platform Workbench. Elas são diferentes das métricas personalizadas informadas quando você ativa a configuração de metadados report-notebook-metrics.

Criar uma instância do Agent Platform Workbench que informe as métricas do sistema e do aplicativo ao Monitoring

Para instalar o Monitoring na instância do Agent Platform Workbench, use o console do Google Cloud ou a CLI gcloud.

Console

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique em Criar.

  3. Na caixa de diálogo Nova instância, clique em Opções avançadas.

  4. Na caixa de diálogo Criar instância, na seção Detalhes, insira as seguintes informações sobre a nova instância:

    • Nome: forneça um nome para a nova instância.
    • Região e Zona: selecione uma região e zona para a nova instância. Para ter o melhor desempenho de rede, selecione a região mais próxima de você. Confira os locais disponíveis do Workbench da Agent Platform.
  5. Na seção Integridade do sistema, em Relatórios, selecione Instalar Cloud Monitoring.

  6. Conclua o restante da caixa de diálogo de criação de instância e clique em Criar.

gcloud

  1. No Cloud Shell ou em qualquer ambiente em que a Google Cloud CLI esteja instalada, insira os comandos da Google Cloud CLI a seguir.

    gcloud workbench instances create INSTANCE_NAME \
        --vm-image-project=cloud-notebooks-managed \
        --vm-image-family=IMAGE_FAMILY \
        --machine-type=MACHINE_TYPE \
        --location=ZONE \
        --metadata=install-monitoring-agent=TRUE
    

    Substitua:

    • INSTANCE_NAME: o nome da nova instância.
    • IMAGE_FAMILY: o nome da família de imagens que você quer usar para criar sua instância
    • MACHINE_TYPE: o tipo de máquina da VM da instância. Por exemplo, n1-standard-4
    • ZONE: a zona em que você quer que a nova instância esteja localizada, por exemplo, us-west1-a
  2. Acesse a instância no console doGoogle Cloud .

Monitorar as métricas do sistema e do aplicativo com o Monitoring

Para instâncias do Agent Platform Workbench que têm o Monitoring instalado, é possível monitorar as métricas do sistema e do aplicativo usando o console do Google Cloud :

  1. No console do Google Cloud , acesse a página Instâncias.

    Acesse "Instâncias"

  2. Clique no nome da instância em que você quer ver as métricas do sistema e do aplicativo.

  3. Na página Detalhes da instância, clique na guia Monitoramento. Analise as métricas do sistema e do aplicativo para a instância. Para saber como interpretar essas métricas, consulte Analisar as métricas de recursos.

Usar a ferramenta de diagnóstico para monitorar a integridade do sistema

As instâncias do Agent Platform Workbench incluem uma ferramenta de diagnóstico integrada para monitorar a integridade do sistema das instâncias.

Tarefas realizadas pela ferramenta de diagnóstico

A ferramenta de diagnóstico realiza as seguintes tarefas:

  • Verifica o status dos seguintes serviços principais do Agent Platform Workbench:

    • Serviço do Docker
    • Agente de proxy reverso do Docker
    • Serviço Jupyter
    • API Jupyter
  • Verifica se o espaço em disco de discos de inicialização e dados é usado além de um limite de 85%.

  • Instala o lsof (conexão de Internet necessária).

  • Coleta os seguintes registros de instância:

    • Informações da rede (ifconfig, netstat)
    • Registros na pasta /var/log/
    • Informações de status do Docker
    • Dados de lsof (arquivos abertos)
    • Status de serviço do Docker
    • Status do agente reverso do proxy
    • Status de serviço do Jupyter
    • Status da API Jupyter
    • Arquivo de configuração do agente proxy
    • Processos Python
  • Executa os seguintes comandos e coleta os resultados:

    • pip freeze
    • conda list
    • gcloud compute instances describe INSTANCE_NAME
    • gcloud config list

Executar a ferramenta de diagnóstico

Se a instância usar um contêiner personalizado, consulte Executar a ferramenta de diagnóstico na documentação de contêiner personalizado do Agent Platform Workbench.

Para executar a ferramenta de diagnóstico em uma instância que não usa um contêiner personalizado, siga estas etapas:

  1. Use ssh para se conectar à sua instância do Workbench da Agent Platform.

  2. No terminal SSH, execute os seguintes comandos:

    sudo -i
    cd /opt/deeplearning/bin/
    ./diagnostic_tool.sh

    A ferramenta de diagnóstico coleta os registros, os compacta em um arquivo .tar.gz e coloca o arquivo na pasta /tmp/.

  3. Extraia o arquivo e avalie o conteúdo. O conteúdo inclui o seguinte:

    • Pasta log: registros da pasta var/log/
    • report.log: saída de todos os comandos coletados
    • proxy-agent-config.json: informações de configuração de proxy
    • Registro do Docker: um arquivo -json.log que inclui registros de contêiner do Docker

Use as opções a seguir com a ferramenta de diagnóstico.

Opção Descrição
-r Uma opção de reparo que tenta restaurar o status dos serviços principais do Workbench da Agent Platform
-s Executado sem uma confirmação
-b Faz upload do arquivo .tar.gz em um bucket do Cloud Storage.
-v Uma opção de depuração para solucionar problemas da ferramenta em caso de falhas
-c Captura 30 segundos de tráfego de pacotes na instância do Agent Platform Workbench, filtrando o SSH
-d Uma pasta de destino em que os registros serão salvos
-h Ajuda

A seguir