Configurer un modèle d'instance Compute Engine dans App Design Center

Un modèle d'instance Compute Engine vous permet de décrire une instance de VM. Vous pouvez ensuite créer des groupes d'instances identiques sur la base du modèle. Pour en savoir plus, consultez les ressources suivantes :

Ce document décrit les connexions et les paramètres que vous pouvez configurer lorsque vous utilisez App Design Center pour créer un modèle d'instance Compute Engine. Les paramètres de configuration sont basés sur le module Terraform instance_template.

Connexions des composants

Le tableau suivant inclut les composants que vous pouvez connecter à un modèle d'instance Compute Engine, ainsi que les mises à jour apportées à votre application et à son code Terraform généré.

Composant connecté

Mises à jour des applications

Informations générales

Compte de service

  • Le modèle d'instance Compute Engine utilise le compte de service associé au lieu d'en créer un. Le compte de service associé est utilisé pour l'authentification et l'autorisation d'accès à d'autres services Google Cloud .
  • L'adresse e-mail du compte de service et les informations IAM sont ajoutées au modèle d'instance Compute Engine.
Créer une VM qui utilise un compte de service géré par l'utilisateur

AlloyDB pour PostgreSQL

  • Les instances Compute Engine peuvent se connecter à l'instance AlloyDB pour PostgreSQL.
  • Les informations sur les métadonnées des ressources AlloyDB pour PostgreSQL sont ajoutées au modèle d'instance.
  • Le rôle roles/alloydb.admin est ajouté au compte de service du modèle d'instance Compute Engine.
Se connecter depuis Compute Engine

BigQuery

  • Les instances Compute Engine peuvent lire et écrire des données dans l'ensemble de données BigQuery.
  • Les métadonnées de ressources BigQuery sont ajoutées au modèle d'instance Compute Engine.
  • Le rôle roles/bigquery.dataEditor est ajouté au compte de service du modèle d'instance Compute Engine.
Présentation de BigQuery

Bigtable

  • Les instances Compute Engine peuvent accéder à l'instance Bigtable.
  • Les informations sur les métadonnées de la ressource Bigtable sont ajoutées au modèle d'instance.
  • Le rôle roles/bigtable.admin est ajouté au compte de service du modèle d'instance Compute Engine.
Présentation de Bigtable

Cloud SQL (MySQL)

  • Les instances Compute Engine peuvent se connecter à l'instance Cloud SQL (MySQL) pour lire et écrire des données.
  • Les métadonnées de connexion Cloud SQL sont ajoutées au modèle d'instance Compute Engine.
  • Les rôles roles/cloudsql.instanceUser et roles/cloudsql.client sont ajoutés au compte de service du modèle d'instance Compute Engine.
  • Le compte de service Compute Engine est ajouté en tant qu'utilisateur IAM à l'instance Cloud SQL.
Se connecter depuis Compute Engine

Cloud SQL (PostgreSQL)

  • Les instances Compute Engine peuvent se connecter à l'instance Cloud SQL (PostgreSQL) et y lire et écrire des données.
  • Les métadonnées de connexion Cloud SQL sont ajoutées au modèle d'instance Compute Engine.
  • Les rôles roles/cloudsql.instanceUser et roles/cloudsql.client sont ajoutés au compte de service du modèle d'instance Compute Engine.
  • Les informations IAM du compte de service Compute Engine sont ajoutées à l'instance Cloud SQL.
Se connecter depuis Compute Engine

Cloud Storage

  • Les instances Compute Engine peuvent contrôler les objets de bucket (par exemple, les lister, les créer, les afficher et les supprimer).
  • Le rôle roles/storage.objectAdmin est attribué au compte de service du modèle d'instance Compute Engine.
Définir et gérer des stratégies IAM sur des buckets

Memorystore

  • Les instances Compute Engine peuvent gérer et mettre en cache les données dans l'instance Memorystore.
  • L'ID du sujet Pub/Sub est ajouté aux métadonnées du modèle d'instance Compute Engine.
Options de déploiement de Redis sur Google Cloud

Pub/Sub

  • Les instances Compute Engine peuvent publier des messages dans le sujet Pub/Sub et en recevoir.
  • L'ID du sujet Pub/Sub est ajouté aux métadonnées du modèle d'instance Compute Engine.
Présentation des abonnements

Interface régionale Cloud Load Balancing

  • Les instances Compute Engine peuvent rediriger le trafic vers le frontend régional Cloud Load Balancing.
  • L'adresse Cloud Load Balancing est ajoutée au modèle d'instance Compute Engine.
Présentation des règles de transfert

Spanner

  • Les instances Compute Engine peuvent lire et écrire des données dans l'instance Spanner.
  • Le rôle roles/spanner.databaseAdmin est ajouté au compte de service du modèle d'instance Compute Engine.
  • Les informations IAM Compute Engine sont ajoutées à l'instance Spanner.
Utiliser Spanner dans une instance de machine virtuelle

Vertex AI

  • Les instances Compute Engine peuvent interagir avec les services Vertex AI.
  • Le rôle roles/aiplatform.user est ajouté au compte de service du modèle d'instance Compute Engine.
Contrôle des accès à Vertex AI avec IAM

Compute Engine (MIG)

  • Le modèle d'instance Compute Engine permet de créer des instances dans le groupe d'instances géré.
  • Le lien "self" du modèle d'instance est ajouté au MIG Compute Engine.
Scénarios de base pour la création de groupes d'instances gérés (MIG)

Paramètres de configuration requis

Si votre modèle inclut un composant de modèle d'instance Compute Engine, vous devez configurer les paramètres suivants avant de le déployer.

Nom du paramètre

Description et contraintes

Informations générales

ID du projet

Projet dans lequel vous souhaitez créer le modèle d'instance Compute Engine.

Configurer les composants

Région

Région dans laquelle le modèle d'instance est créé.

Modèles d'instances régionaux et mondiaux

Paramètres de configuration facultatifs

Les paramètres suivants sont facultatifs. Pour afficher les paramètres avancés, dans la zone Configuration, sélectionnez Afficher les champs avancés.

Fonctionnalité

Nom du paramètre

Description et informations sur les contraintes

Informations générales

Préfixe de nom

Préfixe du nom du modèle d'instance.

name_prefix

Type de machine

properties.machineType Guide des ressources de familles de machines et guide comparatif

Spot

spot Les VM Spot

Description

Description du modèle d'instance.

description

Description de l'instance

Description des instances générées par le modèle.

properties.description

Redémarrage automatique

properties.scheduling.automaticRestart Comportements de maintenance et de redémarrage

Threads par cœur

properties.advancedMachineFeatures.threadsPerCore Définir le nombre de threads par cœur

Image source

properties.disks[].initializeParams.sourceImage Images d'OS

Projet d'image source

Projet d'où provient l'image source. Le projet par défaut contient des images Rocky Linux.

Familles d'images

Taille du disque en Go

properties.disks[].initializeParams.diskSizeGb Créer un disque de démarrage personnalisé

Type de disque

properties.disks[].initializeParams.diskType Sélectionner un type de disque

Réseau

properties.networkInterfaces[].network Présentation de la mise en réseau pour les VM

Sous-réseau

properties.networkInterfaces[].subnetwork Réseaux et sous-réseaux

Créer un compte de service

create_service_account Comptes de service

Configuration minimale de la plate-forme du processeur

properties.minCPUPlatform Spécifier une configuration minimum de la plate-forme du processeur pour les instances de VM

Can IP Forward

properties.canIpForward Activer le transfert IP pour les instances

Tags

properties.tags Gérer les tags pour les ressources

Étiquettes

Clé

properties.labels Organiser des ressources à l'aide de libellés

Valeur

properties.labels Organiser des ressources à l'aide de libellés

Préemptif

properties.scheduling.preemptible Instances de VM préemptives

Intervalle de maintenance

Fréquence des événements de maintenance planifiée.

Activer le contrôle de maintenance avancé sur un nœud à locataire unique

Pendant la maintenance de l'hôte

properties.scheduling.onHostMaintenance Définir la stratégie de maintenance de l'hôte pour une instance de calcul

Action de résiliation de l'instance Spot

properties.scheduling.instanceTerminationAction Processus de préemption

Activer la virtualisation imbriquée

properties.advancedMachineFeatures.enableNestedVirtualization À propos de la virtualisation imbriquée

Règles relatives aux ressources

properties.resourcePolicies[] Ressource REST : resourcePolicies

Famille d'images sources

properties.disks[].initializeParams.sourceImage Familles d'images

Libellés de disque

Clé

properties.disks[].initializeParams.labels Organiser des ressources à l'aide de libellés

Valeur

properties.disks[].initializeParams.labels Organiser des ressources à l'aide de libellés

Clé de chiffrement du disque

properties.disks[].diskEncryptionKey Chiffrer des disques avec des clés fournies par le client

Suppression automatique

properties.disks[].autoDelete Définir l'état de suppression automatique d'un volume de disque persistant

Disques supplémentaires

Boot

properties.disks[].boot Créer un disque de démarrage personnalisé

Nom de l'appareil

properties.disks[].deviceName Ajouter un disque non amorçable à votre VM

Nom du disque

properties.disks[].initializeParams.diskName Ajouter un disque non amorçable à votre VM

Interface

properties.disks[].interface Types d'interfaces de stockage

Mode

properties.disks[].mode Créer un disque régional

Source

properties.disks[].source Créer un disque régional

Image source

Image source à partir de laquelle créer ce disque.

properties.disks[].initializeParams.sourceImage

Instantané source

Instantané source à partir duquel créer ce disque.

properties.disks[].initializeParams.sourceSnapshot

Règles relatives aux ressources de disque

properties.disks[].initializeParams.resourcePolicies[] Ressource REST : resourcePolicy

Projet de sous-réseau

ID du projet auquel appartient le sous-réseau. Si elle n'est pas fournie, le projet du fournisseur est utilisé.

subnetwork_project

Adresse IP du réseau

properties.networkInterfaces[].networkIP Adresses IP internes

Type de carte d'interface réseau

properties.networkInterfaces[].nicType Utiliser la carte d'interface réseau virtuelle Google

Type de pile

properties.networkInterfaces[].stackType Types de piles

Réseaux supplémentaires

Réseau

properties.networkInterfaces[].network Présentation de la mise en réseau pour les VM

Sous-réseau

properties.networkInterfaces[].subnetwork Réseaux et sous-réseaux

Nombre de files d'attente

properties.networkInterfaces[].queueCount Allocation de file d'attente par défaut

Niveau de bande passante totale de sortie

properties.networkPerformanceConfig.totalEgressBandwidthTier Bande passante réseau

Script de démarrage

Script qui s'exécute au démarrage des instances.

À propos des scripts de démarrage

Métadonnées

Clé

properties.metadata À propos des métadonnées de VM

Valeur

properties.metadata À propos des métadonnées de VM

Compte de service

E-mail

email Comptes de service

Rôles du projet de compte de service

project_roles Gérer l'accès aux comptes de service

Activer les VM protégées

Cochez la case pour activer la VM protégée, si l'image d'instance sélectionnée est compatible.

À propos des VM protégées

Configuration d'instance protégée

Activer le démarrage sécurisé

properties.shieldedInstanceConfig.enableSecureBoot Démarrage sécurisé

Activer vTPM

properties.shieldedInstanceConfig.enableVtpm Module vTPM (Virtual Trusted Platform Module)

Activer la surveillance de l'intégrité

properties.shieldedInstanceConfig.enableIntegrityMonitoring Surveillance de l'intégrité

Activer Confidential VM

properties.confidentialInstanceConfig.enableConfidentialCompute À propos de Confidential VM

Type d'instance confidentielle

properties.confidentialInstanceConfig.confidentialInstanceType Configurations compatibles

Configuration des accès

Adresse IP NAT

properties.networkInterfaces[].accessConfigs[].natIP Adresses IP externes

Niveau de réseau

properties.networkInterfaces[].accessConfigs[].networkTier Niveaux de service réseau

Configuration de l'accès IPv6

Niveau de réseau

properties.networkInterfaces[].ipv6AccessConfigs[].networkTier Niveaux de service réseau

GPU

Type

properties.guestAccelerators[].acceleratorType Types de machines avec GPU

Nombre

properties.guestAccelerators[].acceleratorCount Types de machines avec GPU

Plage d'adresses IP d'alias

Plage CIDR d'adresses IP

properties.networkInterfaces[].aliasIpRanges[].ipCidrRange Adresses IP

Nom de la plage du sous-réseau

properties.networkInterfaces[].aliasIpRanges[].subnetworkRangeName Réseaux et sous-réseaux