Une instance de VM peut passer par plusieurs états au cours de son cycle de vie. Lorsque vous créez une VM, l'appliance Google Distributed Cloud (GDC) isolée provisionne des ressources pour la démarrer. La VM passe ensuite à l'état de démarrage, où elle est préparée pour son premier démarrage. Pendant et après le démarrage, une VM est considérée comme en cours d'exécution. Une VM en cours d'exécution peut être arrêtée et redémarrée plusieurs fois tout au long de sa durée de vie.
Définitions des états des VM
État | Définition |
---|---|
Pending |
La VM est acceptée par le système et attend d'être attribuée. |
Provisioning
|
Les ressources associées à la VM, telles que VirtualMachineDisk , sont en cours de provisionnement et de préparation. |
Starting |
La VM est en cours de préparation pour l'exécution. |
Running |
La VM est en cours d'exécution. |
Stopping |
La VM est en cours d'arrêt. |
Stopped |
La VM est arrêtée et ne devrait pas démarrer. |
Paused
|
La VM est suspendue et à l'état figé, qui est conservé. Il est impossible d'accéder à la VM. |
Terminating
|
La VM et les ressources associées sont en cours de suppression. |
ErrorConfiguration
|
La VM présente une erreur de configuration. Les états de configuration non valides peuvent être dus aux problèmes suivants : |
MachineTypeNotFound : le type de VM auquel la VM fait référence est introuvable ou en cours de suppression. |
|
MachineDiskMisconfig : le disque de la VM est mal configuré. |
|
InterfaceCreationFailed : échec de la création de l'interface réseau. |
|
CrashLoopBackOff |
La VM est actuellement dans une boucle de plantage et attend une nouvelle tentative. |
PendingIPAllocation |
La VM attend que le système lui attribue une adresse IP. |
Unknown
|
L'état de la VM n'a pas pu être obtenu, généralement en raison d'une erreur de communication avec l'hôte sur lequel elle s'exécute. |
ErrorUnschedulable
|
Une erreur s'est produite lors de la planification de la VM, par exemple en raison de demandes de ressources ou de contraintes de planification qui ne peuvent pas être satisfaites ni prises en charge. |
DiskError |
Une erreur s'est produite au niveau d'un ou de plusieurs disques associés à la VM. |
WaitingForDisk |
La VM attend qu'un ou plusieurs VirtualMachineDisk associés soient prêts. |
CrashLoopBackoff |
La VM plante systématiquement pour une raison inconnue. |
Avant de commencer
Pour utiliser les commandes de l'interface de ligne de commande (CLI) gdcloud
, assurez-vous d'avoir téléchargé, installé et configuré la CLI gdcloud
.
Toutes les commandes pour l'appliance GDC isolée utilisent la CLI gdcloud
ou kubectl
et nécessitent un environnement de système d'exploitation (OS).
Obtenir le chemin d'accès au fichier kubeconfig
Pour exécuter des commandes sur le serveur de l'API Management, assurez-vous de disposer des ressources suivantes :
Localisez le nom du serveur de l'API Management ou demandez-le à votre administrateur de plate-forme.
Connectez-vous et générez le fichier kubeconfig pour le serveur d'API Management si vous n'en avez pas.
Utilisez le chemin d'accès pour remplacer
MANAGEMENT_API_SERVER{"</var>"}}
dans ces instructions.
Demander des autorisations et un accès
Pour effectuer les tâches listées sur cette page, vous devez disposer du rôle Administrateur VirtualMachine du projet. Suivez les étapes pour valider ou demandez à votre administrateur IAM de projet de vous attribuer le rôle Administrateur VirtualMachine du projet (project-vm-admin
) dans l'espace de noms du projet dans lequel réside la VM.
Pour les opérations sur les VM à l'aide de la console GDC ou de la CLI gdcloud, demandez à votre administrateur IAM de projet de vous attribuer le rôle Administrateur de machines virtuelles du projet et le rôle Lecteur du projet (project-viewer
).
Vérifier l'état de la VM
L'état de chaque VM est indiqué dans ses propriétés. Vérifiez l'état d'une VM pour l'une des raisons suivantes :
- En cas de problème avec la VM.
- Pour vérifier que la VM est en cours d'exécution après son démarrage.
- Pour vérifier que la VM est à l'état
Paused
ouStopped
.
Lister les VM pour vérifier leur état
La procédure suivante montre comment lister les VM, afficher leur état et obtenir des informations supplémentaires sur leur état.
Répertoriez toutes les VM et affichez l'état de chacune d'elles :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get virtualmachines.virtualmachine.gdc.goog -n PROJECT
Remplacez les variables dans les exemples de code par vos propres valeurs, conformément au tableau suivant.
Variable Définition MANAGEMENT_API_SERVER
Fichier kubeconfig
du serveur de l'API Management.PROJECT
Projet GDC dans lequel réside la VM. Exemple de résultat :
NAME STATUS AGE vm-1 Running 1d vm-2 Stopped 8d vm-3 ErrorConfiguration 1d
Obtenez des informations supplémentaires sur l'état d'une VM spécifique :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get virtualmachines.virtualmachine.gdc.goog VM_NAME -n PROJECT -o \ jsonpath='{"State:"}{.status.state}{"\n"}{"Reason:"}{.status.reason}{"\n"}{"Message:"}{.status.message}{"\n"}'
Remplacez les éléments suivants :
MANAGEMENT_API_SERVER
avec le fichierkubeconfig
du serveur de l'API Management que vous avez obtenu à l'aide de la commandegdcloud auth login
.VM_NAME
par le nom de la nouvelle VM.- Remplacez
PROJECT
par le projet GDC dans lequel réside la VM.
Exemple de résultat affichant les valeurs
Reason
etMessage
:State: ErrorConfiguration Reason: MachineDiskNotFound Message: VirtualMachineDisk disk-1 in namespace project-1 does not exist.
Vous pouvez également obtenir des champs vides pour
Reason
etMessage
. Cela signifie que le système n'a rien à signaler à leur sujet.Exemple de résultat avec
Reason
etMessage
vides :State: Running Reason: Message:
Arrêter ou redémarrer une VM
Au cours du cycle de vie d'une VM, vous devrez peut-être l'arrêter et la redémarrer, ou la supprimer pour répondre à un changement d'état ou pour la gérer de manière générale. Consultez les pages suivantes pour arrêter, réinitialiser ou supprimer une VM :