Gérer les versions d'image

Cette page explique comment gérer les versions d'image pour les instances Gemini Enterprise Agent Platform Workbench, y compris comment effectuer les opérations suivantes :

  • Lister les noms d'image disponibles
  • Créer une instance avec un nom d'image spécifique
  • Mettre à niveau ou déplacer une instance entre des familles d'images

Pour en savoir plus sur le schéma de gestion des versions, le contenu des images et le cycle de vie, consultez la section Gestion des versions et cycle de vie des images.

Pour savoir ce qui a changé dans chaque version, consultez les notes de version des images.

Images de VM

Cette section explique comment lister les images de VM disponibles, créer une instance sur une image de VM spécifique et mettre à niveau l'image de VM d'une instance.

Lister les images de VM disponibles

Les images de VM sont stockées dans un dépôt privé. Pour lister les images de VM disponibles et leurs configurations compatibles, utilisez gcloud workbench instances get-config ou l'API GetConfig.

gcloud

gcloud workbench instances get-config --location=LOCATION

Remplacez LOCATION par la Cloud de Confiance by S3NS région, par exemple us-central1.

cURL

curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances:getConfig"

Remplacez les éléments suivants :

  • PROJECT_ID: ID de votre Cloud de Confiance by S3NS projet.
  • LOCATION : région dans laquelle vous souhaitez récupérer les configurations.

Créer une instance avec une image de VM spécifique

Pour créer une instance sur une image de VM spécifique, utilisez gcloud CLI ou Terraform. Vous pouvez spécifier une famille d'images pour obtenir le nom de sa dernière image ou spécifier un nom d'image pour obtenir la version exacte.

gcloud

# Using an image family
gcloud workbench instances create INSTANCE_NAME \
  --vm-image-project=cloud-notebooks-managed \
  --vm-image-family=IMAGE_FAMILY \
  --location=LOCATION

# Using a specific image name
gcloud workbench instances create INSTANCE_NAME \
  --vm-image-project=cloud-notebooks-managed \
  --vm-image-name=IMAGE_NAME \
  --location=LOCATION

Remplacez les éléments suivants :

Terraform

resource "google_workbench_instance" "vm_instance" {
  # ... other configurations
  gce_setup {
    vm_image {
      project = "cloud-notebooks-managed"
      family  = "IMAGE_FAMILY" # Or specify image name to get an exact version
    }
  }
  # ...
}

Mettre à niveau une image de VM

Par défaut, une instance est mise à niveau vers le dernier nom d'image de sa famille d'images actuelle. Pour utiliser un nom d'image plus ancien, créez une instance à partir d'un nom d'image spécifique.

gcloud

gcloud workbench instances upgrade INSTANCE_NAME --location=LOCATION

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • LOCATION : région dans laquelle se trouve l'instance.

Terraform

Dans la configuration Terraform, définissez le bloc vm_image dans la ressource google_workbench_instance.

resource "google_workbench_instance" "vm_instance" {
  # ... other configurations
  gce_setup {
    vm_image {
      project = "cloud-notebooks-managed"
      family  = "workbench-instances-2603" # Or use name = "workbench-instances-2603-20240315-1800-rc0"
    }
  }
  # ...
}

Pour en savoir plus sur la création d'une instance avec une version spécifique, consultez la section Créer une version spécifique.

Mettre à niveau entre des familles d'images

Pour remplacer une instance par le dernier nom d'image d'une autre famille d'images (par exemple, de workbench-instances à la version plus récente workbench-instances-2603), spécifiez la famille d'images cible lors de la mise à niveau. Il s'agit du chemin d'accès compatible pour passer d'une version majeure à une autre sans recréer l'instance.

gcloud

Utilisez l'option --image-family avec gcloud workbench instances upgrade pour spécifier la famille d'images cible. L'instance est mise à niveau vers la dernière image de la famille spécifiée.

gcloud workbench instances upgrade INSTANCE_NAME \
  --location=LOCATION \
  --image-family=projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.
  • LOCATION : région dans laquelle se trouve l'instance.
  • IMAGE_PROJECT : projet qui héberge la famille d'images (par exemple, cloud-notebooks-managed).
  • IMAGE_FAMILY : nom de la famille d'images cible (par exemple, workbench-instances-2603).

Par exemple, pour mettre à niveau une instance vers la dernière image de la famille workbench-instances-2603 :

gcloud workbench instances upgrade example-instance \
  --location=us-central1 \
  --image-family=projects/cloud-notebooks-managed/global/images/family/workbench-instances-2603

Si l'option --image-family est omise, l'instance est mise à niveau vers la dernière image de sa famille d'images actuelle.

Image de conteneur personnalisé

Les conteneurs personnalisés sur les instances Agent Platform Workbench suivent un modèle de versionnement strictement séquentiel, sans aucune ramification d'image ni maintenance parallèle. Un tag de versionnement de date est utilisé. Il est partagé avec toutes les images utilisées pour gérer les conteneurs personnalisés sur les instances Agent Platform Workbench pour une version donnée. Le tag de versionnement suit le format YYYYMMDD-HHMM-rcX.

La section Créer une instance basée sur un conteneur personnalisé explique comment créer et utiliser des conteneurs personnalisés sur les instances Agent Platform Workbench.

Image hôte

Famille d'images : workbench-container-host

L'hôte de conteneur utilise Container-Optimized OS (COS) de Google. La version ne peut pas être spécifiée lors de la création d'une instance de conteneur personnalisé Agent Platform Workbench. Au lieu de cela, les nouvelles instances utilisent la dernière image COS comme hôte de conteneur. L'image sous-jacente suit la dernière version stable du système d'exploitation de COS. Consultez les notes de version de Container-Optimized OS.

Instances de conteneurs personnalisés

Cette section explique comment créer et mettre à niveau des instances qui utilisent des conteneurs personnalisés. Pour créer un conteneur personnalisé, consultez la section Créer une instance à l'aide d'un conteneur personnalisé. Pour connaître les images de conteneur de base et leurs spécifications, consultez la section Gestion des versions et cycle de vie des images.

Créer une instance avec un conteneur personnalisé

Pour créer une instance Agent Platform Workbench à l'aide d'un conteneur personnalisé, utilisez gcloud CLI ou Terraform.

gcloud

gcloud workbench instances create INSTANCE_NAME \
  --project=PROJECT_ID \
  --location=ZONE \
  --container-repository=REGION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/IMAGE_NAME \
  --container-tag=TAG

Remplacez les éléments suivants :

  • INSTANCE_NAME : nom de l'instance.

  • PROJECT_ID : Cloud de Confiance by S3NS projet dans lequel vous souhaitez créer l'instance.

  • ZONE: zone dans laquelle vous souhaitez créer l'instance (par exemple, us-central1-a).

  • REGION: région du dépôt Artifact Registry (par exemple, us).

  • REPOSITORY_NAME: nom de votre dépôt Artifact Registry.

  • IMAGE_NAME : nom d'image spécifique. Pour trouver les noms d'image disponibles, consultez les notes de version des images ou exécutez gcloud workbench instances get-config. Pour en savoir plus, consultez la section Lister les images de VM disponibles.

  • TAG : tag de l'image, par exemple latest.

Terraform

resource "google_workbench_instance" "container_instance" {
  # ... other configurations
  gce_setup {
    container_image {
      repository = "REGION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/IMAGE_NAME"
      tag        = "TAG"
    }
  }
  # ...
}

Mettre à niveau un conteneur personnalisé

Une instance de conteneur personnalisé s'exécute sur deux images, qui sont mises à niveau différemment :

  • Image hôte de conteneur : gérée par Google. Elle suit le chemin de mise à niveau de la VM.
  • Image de conteneur de base : image que vous créez et sélectionnez. Pour la mettre à niveau, référencez un tag mutable tel que :latest (l'instance récupère les modifications apportées à ce tag au redémarrage) ou mettez à jour l'instance vers un autre tag.

Étape suivante