Actualizar las propiedades de la VM

En esta página, se describen las propiedades de la máquina virtual (VM) que puedes actualizar para una VM existente y cómo realizar dicha actualización.

Antes de comenzar

Para usar los comandos de la interfaz de línea de comandos (CLI) de gdcloud, asegúrate de haber descargado, instalado y configurado la CLI de gdcloud. Todos los comandos de Distributed Cloud usan la CLI de gdcloud o kubectl y requieren un entorno de sistema operativo (SO).

Obtén la ruta de acceso del archivo kubeconfig

Para ejecutar comandos en el servidor de la API de Management, asegúrate de tener los siguientes recursos:

  1. Accede y genera el archivo kubeconfig para el servidor de la API de Management si no tienes uno.

  2. Usa la ruta de acceso al archivo kubeconfig del servidor de la API de administración para reemplazar MANAGEMENT_API_SERVER en estas instrucciones.

Solicita permisos y acceso

Para realizar las tareas que se indican en esta página, debes tener el rol de administrador de la VM del proyecto. Sigue los pasos para verificar que tienes el rol de administrador de máquinas virtuales del proyecto (project-vm-admin) en el espacio de nombres del proyecto en el que reside la VM.

Para las operaciones de VM con la consola de GDC o la CLI de gdcloud, solicita a tu administrador de IAM del proyecto que te asigne el rol de administrador de máquinas virtuales del proyecto y el rol de visualizador del proyecto (project-viewer).

Propiedades actualizables

Solo puedes cambiar las propiedades que se encuentran en el spec de la VM.

Cómo ver las propiedades que se pueden actualizar

Busca las propiedades que deseas cambiar con la consola de GDC o kubectl.

Console

  1. En el menú de navegación, haz clic en Virtual Machines > Instances.

  2. En la lista de VMs, haz clic en el nombre de una VM para ver sus propiedades.

  3. Las propiedades editables tienen un ícono de Editar.

kubectl

  1. Consulta la lista de propiedades de la VM spec y los valores válidos correspondientes a cada propiedad:

    kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec
    

    El resultado es similar a este:

    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.
    
       ...
    
  2. Consulta de forma recursiva las subpropiedades de cada propiedad. En estos ejemplos, se muestra el valor de devolución de las subpropiedades compute y vcpus:

    • Este comando de ejemplo devuelve los campos de la subpropiedad compute:

      kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec.compute
      

      El resultado es similar a este:

      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.
      
         ...
      
    • Este comando de ejemplo devuelve los campos de la subpropiedad vcpus:

      kubectl --kubeconfig MANAGEMENT_API_SERVER explain virtualmachines.virtualmachine.gdc.goog.spec.compute.vcpus
      

      El resultado es similar a este:

      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.
      

Todas las propiedades se pueden actualizar en una VM en ejecución, pero, a menudo, requieren que se reinicie la VM para que surtan efecto.

Estas actualizaciones de propiedades requieren que se reinicie la VM para que los cambios surtan efecto:

Estas actualizaciones de propiedades entran en vigencia de inmediato:

  • guestEnvironment
  • runningState

Actualizar las propiedades de la VM

Actualiza las propiedades de la VM con la consola de GDC o kubectl.

Console

  1. En el menú de navegación, haz clic en Virtual Machines > Instances.

  2. En la lista de VMs, haz clic en el nombre de una VM para ver sus propiedades.

  3. Haz clic en Editar junto a la propiedad que deseas editar y realiza los cambios.

  4. Si deseas reemplazar el disco de arranque o agregar un disco nuevo, consulta Reemplaza un disco de arranque o Agrega un disco a una VM.

  5. Haz clic en Guardar.

kubectl

  1. Ejecuta el siguiente comando:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
       edit virtualmachines.virtualmachine.gdc.goog VM_NAME \
       -n PROJECT
    

    Reemplaza las variables como se definen en la siguiente tabla.

    VariableDefinición
    MANAGEMENT_API_SERVEREs el archivo kubeconfig del servidor de la API de Management.
    VM_NAMENombre de la VM.
    PROJECTEs el nombre del proyecto.
  2. Edita el spec para actualizar los campos y valores obligatorios de las propiedades actualizables.

  3. Guarda el archivo.

  4. Si la actualización de la propiedad requiere que se reinicie la VM, sigue las instrucciones para reiniciar una VM.