Monitorize o estado de saúde

As instâncias do Vertex AI Workbench oferecem vários métodos para monitorizar o estado dos seus notebooks. Esta página descreve como usar cada método.

Métodos de monitorização do estado de saúde

Pode monitorizar o estado das suas instâncias do Vertex AI Workbench de várias formas. Esta página descreve como usar os seguintes métodos:

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  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 (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. Install the Google Cloud CLI.

  6. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a 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 (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. Install the Google Cloud CLI.

  12. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

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

    gcloud init
  14. Use atributos de convidados para comunicar o estado de funcionamento do sistema

    Pode usar atributos de convidado para comunicar o estado de funcionamento do sistema dos seguintes serviços principais:

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

    Os atributos de convidados são um tipo específico de metadados personalizados que as aplicações podem escrever enquanto são executadas na sua instância do Vertex AI Workbench. Para saber mais acerca dos atributos de convidados, consulte o artigo Acerca dos metadados da VM.

    Como as instâncias usam atributos de convidados para comunicar o estado de funcionamento do sistema

    O serviço notebooks-collection-agent executa um processo Python em segundo plano que verifica o estado dos serviços principais da instância do Vertex AI Workbench e atualiza os atributos do convidado como 1 se não forem detetados problemas ou -1 se for detetada uma falha.

    Para usar o serviço notebooks-collection-agent para criar relatórios sobre o estado da instância do Vertex AI Workbench, tem de ativar os seguintes atributos convidados durante a criação de uma instância do Vertex AI Workbench:

    • enable-guest-attributes=TRUE: isto ativa os atributos de convidado na sua instância do Vertex AI Workbench. Todas as novas instâncias ativam este atributo por predefinição.
    • report-event-health=TRUE: Este sistema regista os resultados da verificação do estado de funcionamento nos atributos de hóspedes.

    O serviço notebooks-collection-agent não precisa de autorizações especiais para escrever nos atributos de convidados da instância.

    Crie uma instância do Vertex AI Workbench com os atributos convidados do estado de funcionamento do sistema ativados

    Para usar os atributos convidados do estado de funcionamento do sistema para criar relatórios sobre o estado de funcionamento da instância do Vertex AI Workbench, tem de selecionar a caixa de verificação Ativar relatório do estado de funcionamento do sistema quando criar uma instância do Vertex AI Workbench.

    Pode ativar o relatório de estado de funcionamento do sistema através da Google Cloud consola.

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique em  Criar novo.

    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 secção Detalhes, faculte as seguintes informações para a sua nova instância:

      • Nome: indique um nome para a nova instância.
      • Região e Zona: selecione uma região e uma zona para a nova instância. Para o melhor desempenho da rede, selecione a região geograficamente mais próxima de si.
    5. Na secção Estado do sistema, em Relatórios, selecione Comunicar estado do sistema.

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

    Monitorize o estado do sistema através de atributos de hóspedes

    Para instâncias do Vertex AI Workbench que têm os atributos de convidado relacionados ativados, pode obter os valores dos atributos de convidado de estado do sistema através da Google Cloud consola, da CLI do Google Cloud com comandos do Compute Engine ou da CLI do Google Cloud com comandos do Vertex AI Workbench.

    Consola

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique no nome da instância cujo estado de funcionamento do sistema quer ver.

    3. Na página Detalhes da instância, clique no separador Estado. Reveja o estado da sua instância e dos respetivos serviços principais.

    gcloud com o Compute Engine

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

    Substitua o seguinte:

    • INSTANCE_NAME: o nome da sua instância
    • ZONE: a zona onde a sua instância está localizada

    Se os seus serviços principais estiverem em bom estado, os resultados têm o seguinte aspeto. Um valor de 1 significa que não foi detetada nenhuma falha.

     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, system-health comunica um valor -1 para indicar uma falha do sistema. Na maioria dos casos, uma falha do sistema significa que o JupyterLab não está acessível.

    Um exemplo de um resultado de falha pode ter o seguinte aspeto.

     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
    

    Comunique métricas personalizadas à monitorização

    As instâncias do Vertex AI Workbench permitem-lhe recolher o estado do sistema e as métricas do JupyterLab e comunicá-los ao Cloud Monitoring. Estas métricas personalizadas são diferentes das métricas padrão comunicadas quando instala a monitorização na sua instância do Vertex AI Workbench.

    As métricas personalizadas comunicadas à monitorização incluem o seguinte:

    • O estado de funcionamento do sistema destes serviços principais do Vertex AI Workbench:

      • Serviço Docker
      • Agente de proxy reverse do Docker
      • Serviço Jupyter
      • API Jupyter
    • As seguintes métricas do JupyterLab:

      • Número de núcleos
      • Número de terminais
      • Número de associações
      • Número de sessões
      • Memória máxima
      • Memória elevada
      • Memória atual

    Como as instâncias comunicam métricas personalizadas ao Monitoring

    Para comunicar métricas personalizadas ao Monitoring, tem de ativar a definição de metadados report-notebook-metrics ao criaruma instância do Vertex AI Workbench.

    Também tem de se certificar de que a conta de serviço da instância do Vertex AI Workbench tem autorizações de escritor de métricas de monitorização (roles/monitoring.metricWriter). Para mais informações, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Crie uma instância do Vertex AI Workbench que comunique métricas personalizadas ao Monitoring

    Para comunicar métricas personalizadas ao Monitoring, tem de selecionar a caixa de verificação Comunicar métricas personalizadas ao Cloud Monitoring quando cria uma instância do Vertex AI Workbench.

    Pode ativar a criação de relatórios de métricas personalizadas no Cloud Monitoring através da Google Cloud consola.

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique em  Criar novo.

    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 secção Detalhes, faculte as seguintes informações para a sua nova instância:

      • Nome: indique um nome para a nova instância.
      • Região e Zona: selecione uma região e uma zona para a nova instância. Para o melhor desempenho da rede, selecione a região geograficamente mais próxima de si.
    5. Na secção Estado do sistema, em Relatórios, selecione Comunicar métricas personalizadas ao Cloud Monitoring.

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

    Conceda autorizações de escritor de métricas de monitorização à conta de serviço

    Depois de criar a nova instância do Vertex AI Workbench, conceda autorizações de gravação de métricas de monitorização (roles/monitoring.metricWriter) à conta de serviço da instância do Vertex AI Workbench. Para mais informações, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Monitorize métricas personalizadas através da Monitorização

    Para instâncias do Vertex AI Workbench que têm a criação de relatórios de métricas personalizadas ativada, pode monitorizar as suas métricas personalizadas através da Google Cloud consola.

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique no nome da instância cujas métricas personalizadas quer ver.

    3. Na página Detalhes da instância, clique no separador Monitorização. Reveja as métricas personalizadas da sua instância.

    Instale a monitorização numa instância

    Esta opção instala automaticamente a funcionalidade Monitorização. A instalação requer 256 MB de espaço em disco. É necessária uma ligação à Internet para que as métricas sejam comunicadas ao Monitoring.

    Como as instâncias comunicam métricas do sistema e da aplicação

    Para comunicar métricas do sistema e da aplicação instalando o Cloud Monitoring na sua instância do Vertex AI Workbench, tem de selecionar a caixa de verificação Instalar agente do Cloud Monitoring quando criar uma instância do Vertex AI Workbench. Estas métricas são diferentes das métricas personalizadas comunicadas quando ativa a definição de metadados report-notebook-metrics.

    Crie uma instância do Vertex AI Workbench que comunique métricas do sistema e da aplicação ao Monitoring

    Para instalar a monitorização na sua instância do Vertex AI Workbench, pode usar a consola. Google Cloud

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique em  Criar novo.

    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 secção Detalhes, faculte as seguintes informações para a sua nova instância:

      • Nome: indique um nome para a nova instância.
      • Região e Zona: selecione uma região e uma zona para a nova instância. Para o melhor desempenho da rede, selecione a região geograficamente mais próxima de si.
    5. Na secção Estado de funcionamento do sistema, em Relatórios, selecione Instalar Cloud Monitoring.

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

    Monitorize as métricas do sistema e da aplicação através da Monitorização

    Para instâncias do Vertex AI Workbench que tenham o Monitoring instalado, pode monitorizar as métricas do sistema e da aplicação através da Google Cloud consola:

    1. Na Google Cloud consola, aceda à página Instâncias.

      Aceda a Instâncias

    2. Clique no nome da instância cujas métricas do sistema e da aplicação quer ver.

    3. Na página Detalhes da instância, clique no separador Monitorização. Reveja as métricas do sistema e da aplicação para a sua instância. Para saber como interpretar estas métricas, consulte Reveja as métricas de recursos.

    Use a ferramenta de diagnóstico para monitorizar o estado de funcionamento do sistema

    As instâncias do Vertex AI Workbench incluem uma ferramenta de diagnóstico integrada que pode ajudar a monitorizar o estado do sistema das suas instâncias.

    Tarefas realizadas pela ferramenta de diagnóstico

    A ferramenta de diagnóstico realiza as seguintes tarefas:

    • Valida o estado dos seguintes serviços principais do Vertex AI Workbench:

      • Serviço Docker
      • Agente de proxy reverse do Docker
      • Serviço Jupyter
      • API Jupyter
    • Verifica se o espaço em disco para discos de arranque e de dados é usado acima de um limite de 85%.

    • Instala lsof (é necessária uma ligação à Internet).

    • Recolhe os seguintes registos de instâncias:

      • Informações de rede (ifconfig, netstat)
      • Registos na pasta /var/log/
      • Informações de estado do Docker
      • Dados de lsof (abrir ficheiros)
      • Estado do serviço Docker
      • Estado do agente de proxy reverse
      • Estado do serviço Jupyter
      • Estado da API Jupyter
      • Ficheiro de configuração do agente de proxy
      • Processos Python
    • Executa os seguintes comandos e recolhe os resultados:

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

    Execute a ferramenta de diagnóstico

    Se a sua instância usar um contentor personalizado, consulte o artigo Execute a ferramenta de diagnóstico na documentação do contentor personalizado do Vertex AI Workbench.

    Para executar a ferramenta de diagnóstico numa instância que não usa um contentor personalizado, conclua os seguintes passos:

    1. Use o SSH para se ligar à sua instância do Vertex AI Workbench.

    2. No terminal SSH, execute os seguintes comandos:

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

      A ferramenta de diagnóstico recolhe os registos, comprime-os num ficheiro .tar.gz e coloca o ficheiro na pasta /tmp/.

    3. Extraia o ficheiro e, em seguida, avalie o conteúdo. Os conteúdos incluem:

      • log pasta: registos da pasta var/log/
      • report.log: saída para todos os comandos recolhidos
      • proxy-agent-config.json: Informações de configuração do proxy
      • Registo do Docker: um ficheiro -json.log que inclui registos de contentores Docker

    Pode usar as seguintes opções com a ferramenta de diagnóstico.

    Opção Descrição
    -r Uma opção de reparação que tenta restaurar o estado dos serviços principais do Vertex AI Workbench com falhas
    -s É executado sem confirmação
    -b Carrega o ficheiro .tar.gz para um contentor do Cloud Storage.
    -v Uma opção de depuração para resolver problemas da ferramenta em caso de falhas
    -c Captura 30 segundos de tráfego de pacotes na sua instância do Vertex AI Workbench, filtrando SSH
    -d Uma pasta de destino na qual guardar os registos
    -h Ajuda

    O que se segue?