Surveiller l'état

Les instances Vertex AI Workbench fournissent plusieurs méthodes de surveillance de l'état de vos notebooks. Cette page explique comment utiliser chaque méthode.

Méthodes de surveillance de l'état de fonctionnement

Vous pouvez surveiller l'état de vos instances Vertex AI Workbench de différentes manières. Cette page explique comment utiliser les méthodes suivantes :

Avant de commencer

  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.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

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

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Notebooks API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init

Utiliser les attributs d'invité pour signaler l'état du système

Vous pouvez utiliser les attributs d'invité pour signaler l'état du système des services principaux suivants :

  • Service Docker
  • Agent de proxy inverse Docker
  • Service Jupyter
  • API Jupyter

Les attributs d'invité sont un type spécifique de métadonnées personnalisées auxquelles vos applications peuvent accéder en écriture alors qu'elles sont en cours d'exécution sur votre instance Vertex AI Workbench. Pour en savoir plus sur les attributs d'invité, consultez la page À propos des métadonnées de VM.

Comment les instances utilisent les attributs d'invité pour signaler l'état du système

Le service notebooks-collection-agent exécute un processus Python en arrière-plan qui vérifie l'état des services principaux de l'instance Vertex AI Workbench et met à jour les attributs invités en tant que 1 si aucun problème n'est détecté ou -1 en cas de défaillance.

Pour utiliser le service notebooks-collection-agent afin de générer des rapports sur l'état de votre instance Vertex AI Workbench, vous devez activer les attributs d'invité suivants lors de la création d'une instance Vertex AI Workbench :

  • enable-guest-attributes=TRUE : active les attributs d'invité sur votre instance Vertex AI Workbench. Toutes les nouvelles instances activent cet attribut par défaut.
  • report-event-health=TRUE : enregistre les résultats de la vérification de l'état du système dans vos attributs d'invité.

Le service notebooks-collection-agent ne nécessite aucune autorisation spéciale pour écrire dans les attributs d'invité de l'instance.

Créer une instance Vertex AI Workbench avec les attributs d'invité de l'état du système activés

Pour utiliser les attributs d'invité de l'état du système pour générer des rapports sur l'état de l'instance Vertex AI Workbench, vous devez cocher la case Activer les rapports sur l'état du système lorsque vous créez une instance Vertex AI Workbench.

Vous pouvez activer les rapports d'état du système à l'aide de la console Google Cloud.

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur  Créer.

  3. Dans la boîte de dialogue Nouvelle instance, cliquez sur Options avancées.

  4. Dans la boîte de dialogue Créer une instance, dans la section Détails, fournissez les informations suivantes pour la nouvelle instance :

    • Nom : donnez un nom à la nouvelle instance.
    • Région et Zone : sélectionnez une région et une zone pour la nouvelle instance. Pour obtenir les meilleures performances réseau, sélectionnez la région la plus proche de vous géographiquement.
  5. Dans la section État du système, dans Création de rapports, sélectionnez Signaler l'état du système.

  6. Renseignez le reste de la boîte de dialogue de création d'instance, puis cliquez sur Créer.

Surveiller l'état du système via les attributs d'invité

Pour les instances Vertex AI Workbench sur lesquelles les attributs d'invité associés sont activés, vous pouvez récupérer les valeurs des attributs d'invité de l'état du système à l'aide de la console Google Cloud, Google Cloud CLI avec les commandes Compute Engine, ou Google Cloud CLI avec les commandes Vertex AI Workbench.

Console

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur le nom de l'instance pour laquelle vous souhaitez afficher l'état de fonctionnement du système.

  3. Sur la page Détails de l'instance, cliquez sur l'onglet État. Vérifiez l'état de votre instance et de ses services principaux.

gcloud avec Compute Engine

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

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance
  • ZONE : zone où se trouve votre instance

Si vos services principaux sont opérationnels, les résultats ressemblent à ceci : La valeur 1 signifie qu'aucune défaillance n'a été détectée.

 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

Si l'un des quatre services principaux échoue, l'état du système indique une valeur -1 pour indiquer la défaillance du système. Dans la plupart des cas, une défaillance du système signifie que JupyterLab n'est pas accessible.

Voici un exemple de résultat d'échec :

 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

Transmettre des métriques personnalisées à Monitoring

Les instances Vertex AI Workbench vous permettent de collecter l'état du système et les métriques JupyterLab, et de les transmettre à Cloud Monitoring. Ces métriques personnalisées sont différentes des métriques standards transmises lorsque vous installez Monitoring sur votre instance Vertex AI Workbench.

Les métriques personnalisées transmises à Monitoring incluent les éléments suivants :

  • L'état du système de ces services principaux Vertex AI Workbench :

    • Service Docker
    • Agent de proxy inverse Docker
    • Service Jupyter
    • API Jupyter
  • Les métriques JupyterLab suivantes :

    • Nombre de noyaux
    • Nombre de terminaux
    • Nombre de connexions
    • Nombre de sessions
    • Taille maximale de la mémoire
    • Haute capacité de mémoire
    • Mémoire actuelle

Transmettre des métriques personnalisées à Monitoring à l'aide d'instances

Pour transmettre des métriques personnalisées à Monitoring, vous devez activer le paramètre de métadonnées report-notebook-metrics lors de la création d'une instance Vertex AI Workbench.

Vous devez également vous assurer que le compte de service de l'instance Vertex AI Workbench dispose des autorisations du rôle "Rédacteur de métriques Monitoring" (roles/monitoring.metricWriter). Pour en savoir plus, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Créer une instance Vertex AI Workbench qui transmet des métriques personnalisées à Monitoring

Pour signaler des métriques personnalisées à Monitoring, vous devez cocher la case Signaler des métriques personnalisées à Cloud Monitoring lorsque vous créez une instance Vertex AI Workbench.

Vous pouvez activer la création de rapports personnalisés sur les métriques dans Cloud Monitoring à l'aide de la console Google Cloud.

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur  Créer.

  3. Dans la boîte de dialogue Nouvelle instance, cliquez sur Options avancées.

  4. Dans la boîte de dialogue Créer une instance, dans la section Détails, fournissez les informations suivantes pour la nouvelle instance :

    • Nom : donnez un nom à la nouvelle instance.
    • Région et Zone : sélectionnez une région et une zone pour la nouvelle instance. Pour obtenir les meilleures performances réseau, sélectionnez la région la plus proche de vous géographiquement.
  5. Dans la section État du système, dans Création de rapports, sélectionnez Transmettre des métriques personnalisées à Cloud Monitoring.

  6. Renseignez le reste de la boîte de dialogue de création d'instance, puis cliquez sur Créer.

Accorder les autorisations du rôle "Rédacteur de métriques Monitoring" au compte de service

Après avoir créé votre instance Vertex AI Workbench, accordez les autorisations du rôle "Rédacteur de métriques Monitoring" (roles/monitoring.metricWriter) au compte de service pour l'instance Vertex AI Workbench. Pour en savoir plus, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Surveiller des métriques personnalisées à l'aide de Monitoring

Pour les instances Vertex AI Workbench sur lesquelles les rapports sur les métriques personnalisées sont activés, vous pouvez surveiller les métriques personnalisées à l'aide de la console Google Cloud.

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur le nom de l'instance pour laquelle vous souhaitez afficher les métriques personnalisées.

  3. Sur la page Détails de l'instance, cliquez sur l'onglet Monitoring. Examinez les métriques personnalisées de votre instance.

Installer Monitoring sur une instance

Cette option installe automatiquement Monitoring. L'installation nécessite 256 Mo d'espace disque. Une connexion Internet est nécessaire pour la transmission des métriques à Monitoring.

Créer des métriques du système et des applications à l'aide d'instances

Pour créer des rapports sur les métriques du système et des applications en installant Cloud Monitoring sur votre instance Vertex AI Workbench, vous devez cocher la case Installer l'agent Cloud Monitoring lorsque vous créez une instance Vertex AI Workbench. Ces métriques sont différentes des métriques personnalisées qui sont transmises lorsque vous activez le paramètre de métadonnées report-notebook-metrics.

Créer une instance Vertex AI Workbench qui transmet les métriques du système et des applications à Monitoring

Pour installer Monitoring sur votre instance Vertex AI Workbench, vous pouvez utiliser la console Google Cloud.

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur  Créer.

  3. Dans la boîte de dialogue Nouvelle instance, cliquez sur Options avancées.

  4. Dans la boîte de dialogue Créer une instance, dans la section Détails, fournissez les informations suivantes pour la nouvelle instance :

    • Nom : donnez un nom à la nouvelle instance.
    • Région et Zone : sélectionnez une région et une zone pour la nouvelle instance. Pour obtenir les meilleures performances réseau, sélectionnez la région la plus proche de vous géographiquement.
  5. Dans la section État du système, dans Création de rapports, sélectionnez Installer Cloud Monitoring.

  6. Renseignez le reste de la boîte de dialogue de création d'instance, puis cliquez sur Créer.

Surveiller les métriques du système et des applications à l'aide de Monitoring

Pour les instances Vertex AI Workbench sur lesquelles Monitoring est installé, vous pouvez surveiller les métriques du système et des applications à l'aide de la console Google Cloud :

  1. Dans la console Google Cloud, accédez à la page Instances.

    Accéder à la page "Instances"

  2. Cliquez sur le nom de l'instance pour laquelle vous souhaitez afficher les métriques du système et de l'application.

  3. Sur la page Détails de l'instance, cliquez sur l'onglet Monitoring. Examinez les métriques du système et des applications de votre instance. Pour apprendre à interpréter ces métriques, consultez la page Examiner les métriques de ressources.

Surveiller l'état du système à l'aide de l'outil de diagnostic

Vertex AI Workbench inclut un outil de diagnostic intégré qui permet de surveiller l'état du système de vos instances.

Tâches effectuées par l'outil de diagnostic

L'outil de diagnostic effectue les tâches suivantes :

  • Il vérifie l'état des services principaux Vertex AI Workbench suivants :

    • Service Docker
    • Agent de proxy inverse Docker
    • Service Jupyter
    • API Jupyter
  • Cet attribut permet de vérifier si l'espace disque des disques de démarrage et de données est utilisé au-delà d'un seuil de 85 %.

  • Il installe lsof (connexion Internet requise).

  • Il collecte les journaux d'instance suivants :

    • Informations sur le réseau (ifconfig, netstat)
    • Journaux dans le dossier /var/log/
    • Informations sur l'état de Docker
    • Données lsof (ouvrir les fichiers)
    • État du service Docker
    • État de l'agent de proxy inverse
    • État du service Jupyter
    • État de l'API Jupyter
    • Fichier de configuration de l'agent de proxy
    • Processus Python
  • Exécute les commandes suivantes et collecte les résultats :

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

Lancer l'outil de diagnostic

Pour exécuter l'outil de diagnostic, procédez comme suit :

  1. Utilisez le protocole ssh pour vous connecter à votre instance Vertex AI Workbench.

  2. Dans le terminal SSH, exécutez les commandes suivantes :

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

    L'outil de diagnostic collecte les journaux, les compresse dans un fichier .tar.gz, puis place le fichier dans le dossier /tmp/.

  3. Extrayez le fichier, puis évaluez le contenu. Contenu :

    • Dossier log : journaux du dossier var/log/
    • report.log : sortie de toutes les commandes collectées
    • proxy-agent-config.json : informations de configuration du proxy
    • Journal Docker : fichier -json.log incluant les journaux de conteneurs Docker

Vous pouvez utiliser les options suivantes avec l'outil de diagnostic.

Option Description
-r Option de réparation qui tente de restaurer l'état des services principaux Vertex AI Workbench ayant échoué
-s S'exécute sans confirmation
-b Importe le fichier .tar.gz dans un bucket Cloud Storage
-v Option de débogage de l'outil en cas d'échec
-c Capture 30 secondes de trafic de paquets dans votre instance Vertex AI Workbench avec filtrage SSH
-d Dossier de destination dans lequel enregistrer les journaux
-h Aide

Étapes suivantes