Ce document explique comment arrêter ou redémarrer manuellement une instance Compute Engine. Pour automatiser l'arrêt ou le redémarrage d'une instance de calcul, consultez les ressources suivantes :
Il est possible d'arrêter manuellement une instance de calcul. Une fois l'opération d'arrêt terminée et l'état de l'instance de calcul passé à TERMINATED, vous pouvez redémarrer l'instance de calcul pour reprendre votre charge de travail ou la supprimer définitivement si vous n'en avez plus besoin. L'arrêt manuel d'une instance de calcul est utile lorsque vous souhaitez effectuer les opérations suivantes :
Réduire les coûts tout en conservant vos configurations : vous ne souhaitez plus exécuter de charges de travail sur l'instance de calcul. Toutefois, vous souhaitez conserver l'instance de calcul et ses disques associés, ses paramètres de configuration, ses adresses IP, ses adresses MAC et ses métadonnées. Si vous devez également conserver les données en mémoire et l'état de l'application, suspendez l'instance de calcul.
Mettre à jour les propriétés : vous souhaitez modifier une ou plusieurs propriétés qui nécessitent d'arrêter et de redémarrer l'instance de calcul avant que les modifications ne prennent effet (par exemple, vous souhaitez modifier le type de machine ou dissocier un disque). Pour en savoir plus, consultez la section Propriétés que vous pouvez mettre à jour.
Limites
Lorsque vous arrêtez une instance de calcul, les limites suivantes s'appliquent :
Vous ne pouvez arrêter ou redémarrer une instance de calcul que si l'état de l'instance de calcul le permet.
Vous ne pouvez redémarrer une instance de calcul que si les ressources sont suffisantes dans la zone où elle se trouve.
Vous ne pouvez pas redémarrer les instances de calcul TPU. Une fois que vous avez arrêté des instances de calcul TPU, vous ne pouvez que les supprimer.
Avant de commencer
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification permet de valider votre identité pour accéder aux services et aux API Cloud de Confiance by S3NS . Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :
Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :
Console
Lorsque vous utilisez la console Cloud de Confiance pour accéder aux services et aux API Cloud de Confiance by S3NS , vous n'avez pas besoin de configurer l'authentification.
gcloud
-
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée. Après vous être connecté, initialisez la Google Cloud CLI en exécutant la commande suivante :
gcloud init
-
- Définissez une région et une zone par défaut.
-
Installez la Google Cloud CLI.
-
Configurez la gcloud CLI afin d'utiliser votre identité fédérée.
Pour en savoir plus, consultez Se connecter à la gcloud CLI avec votre identité fédérée.
-
Créez des identifiants d'authentification locaux pour votre compte utilisateur :
gcloud auth application-default login
Si une erreur d'authentification est renvoyée, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.
-
Installez la Google Cloud CLI.
-
Configurez la gcloud CLI afin d'utiliser votre identité fédérée.
Pour en savoir plus, consultez Se connecter à la gcloud CLI avec votre identité fédérée.
-
Créez des identifiants d'authentification locaux pour votre compte utilisateur :
gcloud auth application-default login
Si une erreur d'authentification est renvoyée, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.
-
Installez la Google Cloud CLI.
-
Configurez la gcloud CLI afin d'utiliser votre identité fédérée.
Pour en savoir plus, consultez Se connecter à la gcloud CLI avec votre identité fédérée.
-
Créez des identifiants d'authentification locaux pour votre compte utilisateur :
gcloud auth application-default login
Si une erreur d'authentification est renvoyée, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.
-
Installez la Google Cloud CLI.
-
Configurez la gcloud CLI afin d'utiliser votre identité fédérée.
Pour en savoir plus, consultez Se connecter à la gcloud CLI avec votre identité fédérée.
-
Créez des identifiants d'authentification locaux pour votre compte utilisateur :
gcloud auth application-default login
Si une erreur d'authentification est renvoyée, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.
-
Installez la Google Cloud CLI.
-
Configurez la gcloud CLI afin d'utiliser votre identité fédérée.
Pour en savoir plus, consultez Se connecter à la gcloud CLI avec votre identité fédérée.
-
Créez des identifiants d'authentification locaux pour votre compte utilisateur :
gcloud auth application-default login
Si une erreur d'authentification est renvoyée, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.
Go
Pour utiliser les exemples Go de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour utiliser les exemples Java de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour utiliser les exemples Node.js de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
PHP
Pour utiliser les exemples PHP de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour utiliser les exemples Python de cette page dans un environnement de développement local, installez et initialisez la gcloud CLI, puis configurez les Identifiants par défaut de l'application avec vos identifiants utilisateur.
Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI, puis connectez-vous à la gcloud CLI avec votre identité fédérée.
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Cloud de Confiance .
Rôles requis
Pour obtenir les autorisations nécessaires pour arrêter ou redémarrer une instance de calcul, demandez à votre administrateur de vous accorder le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur le projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour arrêter ou redémarrer une instance de calcul. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour arrêter ou redémarrer une instance de calcul :
-
Pour arrêter une instance de calcul :
compute.instances.stopsur l'instance de calcul -
Pour arrêter une instance de calcul à partir de l'OS invité :
compute.instances.setMetadatasur l'instance de calcul si elle utilise des clés SSH publiques au niveau de l'instance. -
Pour redémarrer une instance de calcul :
compute.instances.startsur l'instance de calcul -
Pour redémarrer une instance de calcul qui utilise des clés de chiffrement :
compute.instances.startWithEncryptionKeysur l'instance de calcul
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Arrêter une instance de calcul
Pour arrêter votre instance de calcul, utilisez l'une des méthodes suivantes. La meilleure approche pour votre cas d'utilisation dépend de la présence ou non de disques SSD locaux associés à votre instance de calcul et de la manière dont vous souhaitez gérer les scripts d'arrêt :
Arrêter une instance de calcul à partir de Cloud de Confiance. Vous pouvez arrêter une ou plusieurs instances de calcul simultanément à partir de Cloud de Confiance. Si les instances de calcul sont associées à des disques SSD locaux, vous pouvez choisir d'ignorer ou de conserver (preview) les données des disques SSD locaux. Tous les scripts d'arrêt de l'instance de calcul doivent se terminer avant l'arrêt de l'instance de calcul. Pour obtenir des instructions, consultez l'une des pages suivantes :
Arrêter une instance de calcul à partir de l'OS invité. Cette approche garantit que l'exécution de vos scripts d'arrêt se termine avant l'arrêt de l'instance de calcul. Si vous avez activé l'arrêt progressif, vous pouvez l'ignorer ou y mettre fin. Toutefois, l'arrêt d'une instance de calcul à partir de l'OS invité supprime les données de tous les disques SSD locaux associés, sauf si vous les sauvegardez d'abord sur un stockage persistant. Pour obtenir des instructions, consultez Arrêter une instance de calcul à partir de l'OS invité.
Arrêter une instance de calcul sans disques SSD locaux
Pour arrêter une instance de calcul à laquelle aucun disque SSD local n'est associé, consultez les options suivantes :
Si vous avez activé l'arrêt progressif dans l'instance de calcul, vous pouvez réduire les coûts en ignorant ou en mettant fin à un arrêt progressif en cours. Pour ce faire, utilisez la console Cloud de Confiance , la gcloud CLI ou l'API REST.
Pour arrêter plusieurs instances de calcul simultanément, utilisez la consoleCloud de Confiance ou, pour les instances de calcul qui existent dans la même zone, la gcloud CLI.
Pour arrêter une ou plusieurs instances de calcul, sélectionnez l'une des options suivantes :
Console
Dans la console Cloud de Confiance , accédez à la page Instances de VM.
Sélectionnez les instances de calcul en cours d'exécution à arrêter.
Cliquez sur Arrêter. Si l'option Arrêter n'est pas disponible, cliquez sur Autres actions, puis sélectionnez Arrêter.
Dans la boîte de dialogue qui apparaît, procédez comme suit :
Facultatif : Pour arrêter les instances de calcul sans arrêt progressif ou pour mettre fin à un arrêt progressif en cours, cochez la case Ignorer l'arrêt progressif (le cas échéant).
Pour confirmer, cliquez sur Arrêter.
gcloud
Pour arrêter une ou plusieurs instances de calcul existant dans la même zone, utilisez la commande gcloud compute instances stop :
gcloud compute instances stop INSTANCE_NAMES \
--zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAMES: liste des noms des instances de calcul que vous souhaitez arrêter, séparés par des espaces. Par exemple, spécifiezinstance-01 instance-02 instance-03.ZONE: zone où se trouvent les instances de calcul.
Si vous souhaitez ignorer ou mettre fin à un arrêt progressif en cours, utilisez la même commande avec l'option --no-graceful-shutdown :
gcloud compute instances stop INSTANCE_NAMES \
--no-graceful-shutdown \
--zone=ZONE
Go
Java
Node.js
PHP
Python
REST
Pour arrêter une instance de calcul, envoyez une requête POST à la méthode instances.stop :
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
Remplacez les éléments suivants :
INSTANCE_NAME: nom de l'instance de calcul.PROJECT_ID: ID du projet dans lequel l'instance de calcul existe.ZONE: zone où se trouve l'instance de calcul.
Si vous souhaitez ignorer ou mettre fin à un arrêt progressif en cours, incluez le paramètre de requête noGracefulShutdown=true dans l'URL de la requête :
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop?noGracefulShutdown=true
Arrêter une instance de calcul avec des disques SSD locaux
La meilleure méthode pour arrêter une instance de calcul à laquelle sont associés des disques SSD locaux dépend de votre cas d'utilisation. Utilisez l'une des options suivantes :
Si vous avez activé l'arrêt progressif dans une instance de calcul, vous pouvez réduire les coûts en ignorant ou en mettant fin à un arrêt progressif en cours. Pour ce faire, utilisez la console Cloud de Confiance , la gcloud CLI ou l'API REST.
Pour conserver les données des disques SSD locaux (à l'exception des types de machines qui utilisent des Titanium SSD), utilisez la gcloud CLI ou l'API REST.
Pour arrêter plusieurs instances de calcul simultanément, utilisez la consoleCloud de Confiance ou, pour les instances de calcul qui existent dans la même zone, la gcloud CLI.
Pour arrêter une ou plusieurs instances de calcul auxquelles sont associés des disques SSD locaux, sélectionnez l'une des options suivantes :
Console
Dans la console Cloud de Confiance , accédez à la page Instances de VM.
Sélectionnez les instances de calcul en cours d'exécution à arrêter.
Cliquez sur Arrêter. Si l'option Arrêter n'est pas disponible, cliquez sur Autres actions, puis sélectionnez Arrêter.
Dans la boîte de dialogue qui apparaît, procédez comme suit :
Facultatif : Pour arrêter les instances de calcul sans arrêt progressif ou pour mettre fin à un arrêt progressif en cours, cochez la case Ignorer l'arrêt progressif (le cas échéant).
Pour confirmer, cliquez sur Arrêter.
gcloud
Lorsque vous arrêtez une ou plusieurs instances de calcul auxquelles sont associés des disques SSD locaux dans la même zone, spécifiez si vous souhaitez supprimer ou conserver les données des disques SSD locaux comme suit :
Pour supprimer les données des disques SSD locaux, utilisez la commande
gcloud compute instances stopavec l'option--discard-local-ssd=true:gcloud compute instances stop INSTANCE_NAMES \ --discard-local-ssd=true \ --zone=ZONEPour conserver les données des disques SSD locaux, utilisez la commande
gcloud beta compute instances stopavec l'option--discard-local-ssd=false:gcloud beta compute instances stop INSTANCE_NAMES \ --discard-local-ssd=false \ --zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAMES: liste des noms des instances de calcul que vous souhaitez arrêter, séparés par des espaces. Par exemple, spécifiezinstance-01 instance-02 instance-03.ZONE: zone où se trouvent les instances de calcul.
Si vous souhaitez ignorer ou mettre fin à un arrêt progressif en cours, incluez l'option --no-graceful-shutdown dans la commande :
gcloud compute instances stop INSTANCE_NAMES \
--discard-local-ssd=DISCARD_LOCAL_SSD \
--no-graceful-shutdown \
--zone=ZONE
Remplacez DISCARD_LOCAL_SSD par true pour supprimer les données des disques SSD locaux ou par false pour les conserver. Si vous spécifiez false, vous devez utiliser la commande gcloud beta compute instances stop.
REST
Lorsque vous arrêtez une ou plusieurs instances de calcul auxquelles sont associés des disques SSD locaux dans la même zone, spécifiez si vous souhaitez supprimer ou conserver les données des disques SSD locaux comme suit :
Pour supprimer les données des disques SSD locaux, envoyez une requête
POSTà la méthodeinstances.stop. Dans l'URL de la requête, incluez le paramètre de requêtediscardLocalSsddéfini surtrue:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=truePour conserver les données des disques SSD locaux, envoyez une requête
POSTà la méthodebeta.instances.stop. Dans l'URL de la requête, incluez le paramètre de requêtediscardLocalSsddéfini surfalse:POST https://compute.s3nsapis.fr/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=false
Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel l'instance de calcul existe.ZONE: zone où se trouve l'instance de calcul.INSTANCE_NAME: nom de l'instance de calcul.
Si vous souhaitez ignorer ou mettre fin à un arrêt progressif en cours, incluez le paramètre de requête noGracefulShutdown=true dans l'URL de la requête :
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop?discardLocalSsd=DISCARD_LOCAL_SSD&noGracefulShutdown=true
Remplacez DISCARD_LOCAL_SSD par true pour supprimer les données des disques SSD locaux ou par false pour les conserver. Si vous spécifiez false, vous devez envoyer une requête POST à la méthode beta.instances.stop.
Arrêter une instance de calcul à partir de l'OS invité
Si des disques SSD locaux sont associés à une instance de calcul, l'arrêt de l'OS invité supprime automatiquement les données des SSD locaux. Pour conserver ces données, copiez-les manuellement vers une option de stockage persistant avant d'arrêter l'instance de calcul.
Pour arrêter une instance de calcul à partir de l'OS invité, sélectionnez l'une des options suivantes :
Linux
Si ce n'est pas déjà fait, connectez-vous à l'instance de calcul.
Pour arrêter l'instance de calcul à partir de son OS invité, sélectionnez l'une des méthodes suivantes :
Pour arrêter correctement l'OS invité uniquement après l'exécution de tous les scripts d'arrêt, exécutez la commande suivante :
sudo shutdown -h nowPour forcer l'arrêt de l'OS invité, exécutez la commande suivante :
sudo poweroff
Windows
Si vous ne l'avez pas encore fait, connectez-vous à l'instance de calcul à l'aide de l'une des méthodes suivantes :
Pour arrêter l'instance de calcul à partir de son OS invité, sélectionnez l'une des méthodes suivantes :
Pour arrêter correctement l'OS invité uniquement après l'exécution de tous les scripts d'arrêt, exécutez la commande suivante :
shutdown /sPour forcer l'arrêt de l'OS invité, exécutez la commande suivante :
shutdown /f
Redémarrer une instance de calcul
Vous pouvez redémarrer une instance de calcul qui a été complètement arrêtée, c'est-à-dire lorsque l'état de l'instance de calcul est TERMINATED. Si vous avez choisi de conserver les données des disques SSD locaux lorsque vous avez arrêté votre instance de calcul, vous devrez peut-être réinstaller les disques SSD locaux après avoir redémarré l'instance de calcul. Pour en savoir plus, consultez Formater et installer un disque SSD local.
Pour redémarrer une instance de calcul, utilisez l'une des méthodes suivantes. La meilleure méthode pour votre cas d'utilisation dépend de la présence ou non de disques chiffrés avec des clés de chiffrement fournies par le client (CSEK) sur l'instance de calcul :
Redémarrer une instance de calcul qui n'est pas associée à des disques chiffrés par CSEK
Redémarrer une instance de calcul avec des disques chiffrés par CSEK
Redémarrer une instance de calcul qui n'est pas associée à des disques chiffrés par CSEK
Pour redémarrer plusieurs instances de calcul simultanément dans différentes zones, utilisez la console Cloud de Confiance . Pour les instances de calcul qui existent dans la même zone, vous pouvez utiliser la gcloud CLI. Sinon, pour les autres scénarios de redémarrage, sélectionnez l'une des options suivantes :
Console
Dans la console Cloud de Confiance , accédez à la page Instances de VM.
Sélectionnez les instances de calcul que vous souhaitez redémarrer.
Cliquez sur Démarrer/Réactiver.
gcloud
Pour redémarrer une ou plusieurs instances de calcul existant dans la même zone, utilisez la commande gcloud compute instances start :
gcloud compute instances start INSTANCE_NAMES \
--zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAMES: liste des noms des instances de calcul que vous souhaitez redémarrer, séparés par des espaces. Par exemple, spécifiezinstance-01 instance-02 instance-03.ZONE: zone où se trouvent les instances de calcul.
Go
Java
Node.js
PHP
Python
REST
Pour redémarrer une instance de calcul, envoyez une requête POST à la méthode instances.start :
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
Remplacez les éléments suivants :
INSTANCE_NAME: nom de l'instance de calcul.PROJECT_ID: ID du projet dans lequel l'instance de calcul existe.ZONE: zone où se trouve l'instance de calcul.
Redémarrer une instance de calcul avec des disques chiffrés par CSEK
Lorsque vous redémarrez une instance de calcul arrêtée à laquelle sont associés des disques chiffrés à l'aide de clés de chiffrement fournies par le client, vous devez fournir les informations de clé de chiffrement.
Pour redémarrer plusieurs instances de calcul simultanément dans différentes zones, utilisez la console Cloud de Confiance . Pour les instances de calcul qui existent dans la même zone, vous pouvez utiliser la gcloud CLI. Sinon, pour les autres scénarios de redémarrage, sélectionnez l'une des options suivantes :
Console
Dans la console Cloud de Confiance , accédez à la page Instances de VM.
Sélectionnez les instances de calcul que vous souhaitez redémarrer.
Cliquez sur Démarrer/Réactiver.
Dans la boîte de dialogue qui apparaît, procédez comme suit :
Spécifiez la clé de chiffrement de chaque disque chiffré associé aux instances de calcul.
Cliquez sur Démarrer.
gcloud
Pour redémarrer une ou plusieurs instances de calcul qui utilisent des disques chiffrés existant dans la même zone, utilisez la commande gcloud compute instances start avec l'option --csek-key-file. Si vous utilisez une clé encapsulée en RSA, exécutez la commande gcloud beta compute instances start avec l'option --csek-key-file à la place :
gcloud compute instances start INSTANCE_NAMES \
--csek-key-file=ENCRYPTION_KEY_FILE \
--zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAMES: liste des noms des instances de calcul que vous souhaitez redémarrer, séparés par des espaces. Par exemple, spécifiezinstance-01 instance-02 instance-03.ENCRYPTION_KEY_FILE: chemin relatif au fichier JSON contenant la clé de chiffrement fournie par le client. Vous ne pouvez redémarrer plusieurs instances de calcul simultanément que si elles utilisent la même clé de chiffrement fournie par le client. Le format du fichier est décrit dans Format de fichier de clé.ZONE: zone où se trouvent les instances de calcul.
Go
Java
Node.js
PHP
Python
REST
Pour redémarrer une instance de calcul qui utilise des disques chiffrés, envoyez une requête POST à la méthode instances.startWithEncryptionKey :
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/startWithEncryptionKey
{
"disks": [
{
"source": "DISK_URL",
"diskEncryptionKey": {
"ENCRYPTION_TYPE": "ENCRYPTION_KEY"
}
}
]
}
Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel l'instance de calcul existe.ZONE: zone où se trouve l'instance de calcul.INSTANCE_NAME: nom de l'instance de calcul.DISK_URL: URL de la ressource correspondant au nom complet de la ressource du disque associé qui est chiffré avec une clé de chiffrement fournie par le client.ENCRYPTION_TYPE: type de chiffrement de disque que vous utilisez, à savoirrawKey,kmsKeyNameoursaEncryptedKey. Si vous utilisez le typersaEncryptedKey, envoyez une requêtePOSTà la méthodebeta.instances.startWithEncryptionKey.ENCRYPTION_KEY: clé de chiffrement utilisée pour chiffrer les disques persistants associés à l'instance de calcul. Les clésrawKeyoursaEncryptedKeydoivent être encodées en base64. En outre, pour préparer une clérsaEncryptedKey, consultez la section Encapsuler une clé RSA.