Vertex AI propose deux types de notebooks : les notebooks Google-managed et les notebooks user-managed.
Les notebooks Google-managed s'arrêtent automatiquement après une période d'inactivité, ce qui permet de réduire les coûts et d'éviter les mauvaises surprises sur la facture. En revanche, il n'existait jusqu'ici aucune méthode intégrée pour arrêter automatiquement les notebooks user-managed — jusqu'à aujourd'hui.
Grâce à Jose Brache, vous pouvez désormais ajouter une fonctionnalité similaire aux notebooks user-managed en quelques étapes simples.
Attention, le fonctionnement diffère entre les notebooks Google-managed et la solution de Jose. Les notebooks managed s'arrêtent après une période d'inactivité, tandis que la solution de Jose les arrête après un délai défini, indépendamment de l'activité. Une nuance à garder en tête.

Mise en place
L'implémentation repose sur un Cloud Scheduler et une Cloud Function.
Le Cloud Scheduler s'exécute toutes les 5 minutes et appelle la Cloud Function pour identifier les notebooks ayant atteint leur délai d'arrêt.
Par défaut, la Cloud Function analyse les notebooks Vertex AI dans la région us-central1. Au besoin, ajoutez d'autres régions à la liste des régions.
Pour la mise en place, suivez les étapes décrites dans le dépôt GitHub. Installation soignée et rapide via Terraform.
Permissions et rôles requis
À noter : le compte de service de la Cloud Function doit disposer des permissions suivantes pour arrêter les notebooks et lister les projets.
roles/browserau niveau de l'organisation, afin de parcourir tous les projets d'une organisation donnée. Inutile si vous comptez l'exécuter dans le projet où la Cloud Function est déployée.roles/notebooks.serviceAgentpour lister et arrêter les notebooks dans les projets. Pour couvrir plusieurs projets, définissez ce rôle sur…