Mettre à niveau l'environnement d'une instance de notebooks gérés par l'utilisateur
Les instances de notebooks gérées par l'utilisateur Vertex AI Workbench sont des instances Deep Learning VM Image dans lesquelles les environnements de notebook JupyterLab sont activés et prêts à être utilisés. Cette page explique comment mettre à niveau l'environnement d'une instance de notebooks gérés par l'utilisateur.
Motifs de la mise à niveau
Vous pouvez être amené à mettre à niveau l'environnement de votre instance de notebooks gérés par l'utilisateur pour l'une des raisons suivantes :
Pour utiliser les nouvelles fonctionnalités qui ne sont disponibles que dans une version plus récente de votre environnement.
Pour bénéficier des mises à jour de framework, des mises à jour de packages et des corrections de bugs intégrées dans une version plus récente de votre environnement.
Méthodes de mise à niveau
Deux méthodes permettent de mettre à niveau une instance de notebooks gérés par l'utilisateur :
Mise à niveau automatique : activez la mise à niveau automatique lorsque vous créez une instance de notebooks gérés par l'utilisateur. Pendant une période récurrente que vous spécifiez, Vertex AI Workbench vérifie si votre instance peut être mise à niveau et, le cas échéant, met à niveau votre instance.
Mise à niveau manuelle : si une instance de notebooks gérés par l'utilisateur existante respecte les conditions de la mise à niveau, vous pouvez mettre à niveau l'instance manuellement.
Conditions requises et limites
La rétrocompatibilité avec vos notebooks gérés par l'utilisateur n'est pas garantie. Effectuez une copie de vos données avant de mettre à niveau une instance de notebooks gérés par l'utilisateur.
Pour déterminer si vous pouvez mettre à niveau une instance de notebooks gérés par l'utilisateur spécifique, consultez les exigences et limitations suivantes :
L'API Notebooks doit être activée dans le projet Google Cloud de l'instance. Pour en savoir plus, consultez les sections Répertorier les services activés et Activer une API.
La version de l'environnement de l'instance de notebooks gérés par l'utilisateur doit être une version M54 ou ultérieure.
L'instance de notebooks gérés par l'utilisateur doit avoir été créée à l'aide de l'API Notebooks ou doit avoir été enregistrée avec l'API Notebooks.
Si votre instance de notebooks gérés par l'utilisateur est basée sur des conteneurs, Vertex AI Workbench met à niveau le système d'exploitation. La version d'image dépend de l'image spécifique extraite par votre fichier Dockerfile.
Pour vous assurer que la mise à niveau utilise la version la plus récente de l'image, envisagez d'utiliser le tag
latest
dans votre fichier Dockerfile.
Si la mise à niveau de votre instance n'est pas possible dans votre cas, envisagez de migrer vos données vers une nouvelle instance de notebooks gérés par l'utilisateur.
Fonctionnement de la mise à niveau
Les instances de notebooks gérés par l'utilisateur pouvant être mises à niveau sont des instances à deux disques, avec un disque de démarrage et un disque de données. Le processus met à niveau le disque de démarrage vers une nouvelle image tout en conservant les données sur le disque de données.
Quels composants sont mis à niveau ou conservés ?
Le tableau suivant indique les composants de votre instance de notebooks gérés par l'utilisateur qui sont mis à niveau et ceux qui sont conservés.
Composant | Résultat de la mise à niveau |
---|---|
Frameworks de machine learning | Mis à niveau |
Données de machine learning | Conservés |
Dépendances préinstallées | Mis à niveau |
Bibliothèques installées par l'utilisateur | Par défaut, doit être réinstallé (voir Bibliothèques installées par l'utilisateur). |
Fichiers locaux dans le répertoire /home/jupyter |
Conservés |
Fichiers locaux dans tout autre répertoire /home/ |
Aucune conservation |
Packages de système d'exploitation préinstallés | Mis à niveau |
Packages de système d'exploitation installés par l'utilisateur | Aucune conservation |
Pilotes de GPU | Mis à niveau |
Notebooks | Conservés |
Configurations utilisateur | Conservés |
Bibliothèques installées par l'utilisateur
Par défaut, les instances de notebooks gérées par l'utilisateur stockent les bibliothèques pip et Conda dans le disque de démarrage, qui est remplacé lors d'une mise à niveau.
Lorsque vous installez des bibliothèques pip, vous pouvez inclure l'option --user
pour les installer dans le répertoire /home/jupyter/
, où elles sont conservées lors d'une mise à niveau.
Par défaut, si vous installez des bibliothèques pip ou Conda dans un noyau créé à partir d'un conteneur personnalisé, les bibliothèques ne persistent que pendant l'exécution du noyau.
Chaque fois que le noyau est redémarré, ces bibliothèques doivent être réinstallées. Pour installer des bibliothèques persistantes dans un conteneur personnalisé, incluez les installations de bibliothèques dans votre fichier Dockerfile. Lorsque vous installez des bibliothèques pip dans un noyau créé à partir d'un conteneur personnalisé, vous pouvez inclure l'option --user
afin que les bibliothèques persistent jusqu'au redémarrage de l'instance.
Versions d'environnement
Vertex AI Workbench met régulièrement à jour les environnements (consultez les notes de version de Deep Learning VM), mais les environnements ne sont pas tous mis à jour à chaque nouvelle version. Vertex AI Workbench ne met à niveau une instance que s'il existe une version plus récente de l'environnement pour l'image de VM sur laquelle votre instance est basée.
Pour savoir comment créer une instance de notebooks gérés par l'utilisateur à l'aide d'une version spécifique, consultez la section Créer une version spécifique d'une instance de notebook gérés par l'utilisateur.
Avant la mise à niveau
Avant de mettre à niveau, procédez comme suit :
Consultez les notes de version pour en savoir plus sur les mises à jour vers des versions plus récentes.
Créer une copie de vos données en tant que sauvegarde.
Mise à niveau automatique
Vertex AI Workbench peut automatiquement mettre à niveau les instances en cours d'exécution. Si votre instance est arrêtée, elle n'est pas automatiquement mise à niveau, même si vous avez activé la mise à niveau automatique lors de sa création.
Lorsque vous activez les mises à niveau automatiques de l'environnement, vous spécifiez une période récurrente pendant laquelle Vertex AI Workbench vérifie si l'instance peut être mise à niveau et, le cas échéant, met à niveau l'instance.
La période que vous spécifiez est stockée sous la forme d'une entrée de métadonnées notebook-upgrade-schedule
, au format unix-cron, à l'heure du méridien de Greenwich (GMT).
Pour vérifier si une instance peut être mise à niveau, Vertex AI Workbench utilise la méthode API isUpgradeable
.
Cette méthode recherche une version plus récente de l'image sur le disque de démarrage de l'instance.
Si l'instance peut être mise à niveau, Vertex AI Workbench utilise une méthode de mise à niveau interne pour mettre à niveau l'instance.
Créer une instance de notebooks gérés par l'utilisateur avec la mise à niveau automatique activée
Pour créer une instance de notebooks gérés par l'utilisateur avec la mise à niveau automatique activée, cochez la case Activer la mise à niveau automatique de l'environnement et définissez le calendrier de mise à niveau au moment de créer l'instance.
Vous pouvez spécifier une mise à niveau automatique à l'aide de la console Google Cloud ou de Google Cloud CLI.
Avant de commencer
Avant de pouvoir créer une instance de notebooks gérés par l'utilisateur, vous devez disposer d'un projet Google Cloud et activer l'API Notebooks pour ce projet.- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Si vous prévoyez d'utiliser des GPU avec votre instance de notebooks gérés par l'utilisateur, consultez la page des quotas dans la console Google Cloud pour vous assurer que vous disposez de suffisamment de GPU dans votre projet. Si les GPU ne figurent pas sur la page "Quotas" ou que vous avez besoin d'un quota de GPU supplémentaire, demandez une augmentation de quota. Consultez la section Demander une augmentation de quota de la page Quotas de ressources Compute Engine.
Rôles requis
Si vous avez créé le projet, vous disposez du rôle IAM Propriétaire (roles/owner
) sur le projet, qui inclut toutes les autorisations requises. Ignorez cette section et commencez à créer votre instance de notebooks gérés par l'utilisateur. Si vous n'avez pas créé le projet vous-même, continuez dans cette section.
Pour vous assurer que votre compte utilisateur dispose des autorisations nécessaires pour créer une instance de notebooks gérés par l'utilisateur Vertex AI Workbench, demandez à votre administrateur d'attribuer les rôles IAM suivants à votre compte utilisateur sur le projet :
-
Administrateur Notebooks (
roles/notebooks.admin
) -
Utilisateur du compte de service (
roles/iam.serviceAccountUser
)
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Votre administrateur peut également attribuer à votre compte utilisateur les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Créer l'instance
Console
Dans Google Cloud Console, accédez à la page Notebooks gérés par l'utilisateur. Vous pouvez également accéder à notebook.new (https://notebook.new) et ignorer l'étape suivante.
Sélectionnez
Nouveau notebook, puis Personnaliser.Dans la section Détails de la page Créer un notebook géré par l'utilisateur, fournissez les informations suivantes pour votre nouvelle instance :
- Nom : nom de 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. Découvrez les emplacements de notebooks gérés par l'utilisateur disponibles.
Dans la section État du système, sélectionnez Mise à niveau automatique de l'environnement.
Vous pouvez choisir de mettre à niveau votre notebook toutes les semaines ou tous les mois.
Dans le champ Jour de la semaine, sélectionnez l'option de votre choix.
Dans le champ Heure, sélectionnez une heure de la journée.
Renseignez le reste de la boîte de dialogue de création d'instance, puis cliquez sur Créer.
gcloud
Dans Cloud Shell ou dans tout environnement dans lequel Google Cloud CLI est installé, saisissez la commande suivante de Google Cloud CLI :
gcloud notebooks instances create INSTANCE_NAME --metadata=notebook-upgrade-schedule=SCHEDULE --vm-image-project=deeplearning-platform-release --vm-image-family=VM_IMAGE_FAMILY --machine-type=MACHINE_TYPE --location=LOCATION
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de votre nouvelle instance.SCHEDULE
: programmation hebdomadaire ou mensuelle que vous définissez, au format unix-cron. Par exemple, "00 19 * * MON" signifie toutes les semaines, le lundi à 19 h (heure du méridien de Greenwich)VM_IMAGE_FAMILY
: nom de la famille d'images que vous souhaitez utiliser pour créer votre instance.MACHINE_TYPE
: type de machine de la VM de votre instanceLOCATION
: emplacement Google Cloud dans lequel vous souhaitez que votre nouvelle instance se trouve
Accédez à votre instance à partir de la console Google Cloud.
Modifier le calendrier de mise à niveau automatique
Pour modifier le calendrier de mise à niveau automatique après avoir créé votre instance de notebooks gérés par l'utilisateur, procédez comme suit :
Dans Google Cloud Console, accédez à la page Notebooks gérés par l'utilisateur.
Cliquez sur le nom de l'instance qui nécessite une modification de la programmation.
Dans la section Mise à niveau automatique des environnements de la page Détails du notebook, modifiez la planification.
Cliquez sur Soumettre pour enregistrer les modifications.
Mise à niveau manuelle
Vous pouvez mettre à niveau manuellement les instances de notebooks gérés par l'utilisateur qui répondent à ces conditions.
Rechercher une version plus récente de l'environnement de votre instance
Pour vérifier si une version plus récente de l'environnement de votre instance est disponible, accédez à votre instance à partir de la console Google Cloud.
Dans Google Cloud Console, accédez à la page Notebooks gérés par l'utilisateur.
Si votre instance n'est pas en cours d'exécution, démarrez-la. Vertex AI Workbench ne peut mettre à niveau des instances que lorsqu'elles sont en cours d'exécution.
Cliquez sur le nom de l'instance pour laquelle vous souhaitez vérifier la disponibilité d'une version plus récente de l'environnement.
Sur la page Détails du notebook, à côté de Détails de la VM, cliquez sur Afficher dans Compute Engine.
Si une version plus récente de l'environnement est disponible, le message "Cette instance doit être mise à niveau" s'affiche.
Mettre à niveau l'environnement de votre instance vers une version plus récente
Vous pouvez mettre à jour manuellement une instance de notebook gérée par l'utilisateur dans la console Google Cloud ou à l'aide de Google Cloud CLI.
Console
Dans Google Cloud Console, accédez à la page Notebooks gérés par l'utilisateur.
Si votre instance n'est pas en cours d'exécution, démarrez-la. Vertex AI Workbench ne peut mettre à niveau des instances que lorsqu'elles sont en cours d'exécution.
Cliquez sur le nom de l'instance que vous souhaitez mettre à niveau.
Sur la page Détails du notebook, cliquez sur Mettre à niveau.
Assurez-vous d'avoir effectué une copie des données sur votre instance avant de continuer.
Une fois vos données sauvegardées, cliquez sur Mettre à niveau. Vertex AI Workbench met à niveau et démarre votre instance.
gcloud
Pour vérifier si une instance peut être mise à niveau, utilisez la méthode API
isUpgradeable
. Cette méthode recherche une version plus récente de l'image sur le disque de démarrage de l'instance.gcloud notebooks instances is-upgradeable INSTANCE_NAME \ --location=LOCATION
Remplacez l'élément suivant :
INSTANCE_NAME
: nom de l'instanceLOCATION
: zone Google Cloud dans laquelle se trouve votre instance.
Si l'instance peut être mise à niveau, la réponse est
true
. Si la réponse estfalse
, l'instance ne peut pas être mise à niveau, mais vous pouvez toujours tenter de migrer vos données vers une nouvelle instance.Si votre instance n'est pas en cours d'exécution, démarrez-la. Vertex AI Workbench ne peut mettre à niveau des instances que lorsqu'elles sont en cours d'exécution.
Assurez-vous d'avoir effectué une copie des données sur votre instance avant de continuer.
Si l'instance peut être mise à niveau, utilisez la méthode API
upgrade
pour mettre à niveau l'instance.gcloud notebooks instances upgrade INSTANCE_NAME \ --location=LOCATION
Vertex AI Workbench met à niveau l'instance.
Effectuer le rollback d'une mise à niveau
Pour effectuer le rollback d'une mise à niveau, procédez comme suit :
Dans Google Cloud Console, accédez à la page Notebooks gérés par l'utilisateur.
Cliquez sur le nom de l'instance à restaurer.
Sur la page Détails du notebook, sous Mettre à niveau l'historique, cliquez sur Rollback.
Vertex AI Workbench restaure la version précédente de votre instance.