Cette page décrit les propriétés de machine virtuelle (VM) que vous pouvez modifier pour une VM existante et comment effectuer cette modification.
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 Distributed Cloud 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 :
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 au fichier kubeconfig du serveur de l'API Management pour remplacer
MANAGEMENT_API_SERVER
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 vérifier que vous disposez du 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
).
Propriétés modifiables
Vous ne pouvez modifier que les propriétés qui se trouvent dans l'spec
de la VM.
Afficher les propriétés modifiables
Recherchez les propriétés que vous souhaitez modifier à l'aide de la console GDC ou de kubectl
.
Console
Dans le menu de navigation, cliquez sur Machines virtuelles > Instances.
Dans la liste des VM, cliquez sur le nom d'une VM pour afficher ses propriétés.
Les propriétés modifiables sont associées à une icône edit Modifier.
kubectl
Affichez la liste des propriétés de la VM
spec
et les valeurs valides correspondant à chaque propriété :kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec
Le résultat ressemble à ce qui suit :
KIND: VirtualMachine VERSION: virtualmachine.gdc.goog/v1 RESOURCE: spec <Object> DESCRIPTION: Defines the specification of the Virtual Machine. FIELDS: compute <Object> Specifies the CPU and Memory of the VM. CPU and Memory can be defined directly or through the VirtualMachineType. Changes to Compute require a reboot to take effect. Compute is immutable when the VM is in `Unknown` state. disks <[]Object> -required- Specifies the list of disks attached to this vm. There must be exactly one boot disk. Changes to disk attachments require a reboot to take effect. ...
Affichez de manière récursive les sous-propriétés de chaque propriété. Ces exemples montrent le retour pour les sous-propriétés
compute
etvcpus
:Cet exemple de commande renvoie les champs de la sous-propriété
compute
:kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec.compute
Le résultat ressemble à ce qui suit :
KIND: VirtualMachine VERSION: virtualmachine.gdc.goog/v1 RESOURCE: compute <Object> DESCRIPTION: Specifies the CPU and Memory of the VM. CPU and Memory can be defined directly or through the VirtualMachineType. Changes to Compute require a reboot to take effect. Compute is immutable when the VM is in `Unknown` state. FIELDS: memory <> Specifies the amount of physical memory available to the instance. memory must have a minimum value of `1G`, and can be up to (including) `400G`. vcpus <integer> Specifies the number of VCPUs that are available to the instance. Specify `vcpus` as an integer. This value must be a multiple of 2, with 2 as the minimum and 128 as the maximum allowed. ...
Cet exemple de commande renvoie les champs de la sous-propriété
vcpus
:kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec.compute.vcpus
Le résultat ressemble à ce qui suit :
KIND: VirtualMachine VERSION: virtualmachine.gdc.goog/v1 FIELD: vcpus <integer> DESCRIPTION: Specifies the number of VCPUs that are available to the instance. Specify `vcpus` as an integer. This value must be a multiple of 2, with 2 as the minimum and 128 as the maximum allowed.
Toutes les propriétés peuvent être mises à jour sur une VM en cours d'exécution, mais nécessitent souvent le redémarrage de la VM pour prendre effet.
Ces mises à jour des propriétés nécessitent le redémarrage de la VM pour que les modifications prennent effet :
- calcul
- disques
- micrologiciel
- startupScripts
Ces modifications de propriétés prennent effet immédiatement :
- guestEnvironment
- runningState
Mettre à jour les propriétés d'une VM
Mettez à jour les propriétés de la VM à l'aide de la console GDC ou de kubectl
.
Console
Dans le menu de navigation, cliquez sur Machines virtuelles > Instances.
Dans la liste des VM, cliquez sur le nom d'une VM pour afficher ses propriétés.
Cliquez sur edit Modifier à côté de la propriété que vous souhaitez modifier, puis effectuez les modifications.
Si vous souhaitez remplacer le disque de démarrage ou ajouter un disque, consultez Remplacer un disque de démarrage ou Ajouter un disque à une VM.
Cliquez sur Enregistrer.
kubectl
Exécutez la commande suivante :
kubectl --kubeconfig MANAGEMENT_API_SERVER \ edit virtualmachines.virtualmachine.gdc.goog VM_NAME \ -n PROJECT
Remplacez les variables comme indiqué dans le tableau suivant.
Variable Définition MANAGEMENT_API_SERVER
Fichier kubeconfig du serveur de l'API Management. VM_NAME
Nom de la VM. PROJECT
Nom du projet Modifiez le
spec
pour mettre à jour les champs et les valeurs requis pour les propriétés modifiables.Enregistrez le fichier.
Si la mise à jour de la propriété nécessite le redémarrage de la VM, suivez les instructions de la section Redémarrer une VM.