Crear y poner en marcha una instancia de VM

En este documento se explica cómo crear e iniciar una instancia de máquina virtual (VM) mediante una imagen o una captura del disco de arranque. Puedes realizar esta tarea con la CLI aislada de Google Distributed Cloud (GDC), la consola de GDC o la API.

Puedes crear una VM con uno o varios discos. También puedes añadir discos a tu VM después de crearla. Distributed Cloud inicia automáticamente la instancia de VM después de la creación.

También puedes añadir secuencias de comandos de inicio a una máquina virtual, ya sea antes o después de crearla. Para obtener más información, consulta Usar una secuencia de comandos de inicio con una instancia de VM.

Este documento está dirigido a desarrolladores de grupos de administradores de plataformas u operadores de aplicaciones que crean y gestionan máquinas virtuales en un entorno aislado de Google Distributed Cloud (GDC). Para obtener más información, consulta Audiencias de la documentación aislada de GDC.

Antes de empezar

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

Obtener la ruta del archivo kubeconfig

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

  1. Inicia sesión y genera el archivo kubeconfig del servidor de la API Management si no tienes uno.

  2. Usa la ruta al archivo kubeconfig del servidor de la API Management para sustituir MANAGEMENT_API_SERVER en estas instrucciones.

Directrices de nomenclatura de VMs

Sigue estas directrices de nomenclatura al crear instancias de VM:

  • Los nombres de las VMs solo pueden contener caracteres alfanuméricos y guiones.
  • Si se usan símbolos que no sean caracteres alfanuméricos ni guiones, como un punto, se producirán errores de conexión a la VM.
  • El nombre de la VM no puede tener más de 53 caracteres.

Solicitar roles de gestión de identidades y accesos

Para realizar las tareas que se indican en esta página, debes tener asignados los roles de gestión de identidades y accesos necesarios:

  • Administrador de proyectos de máquinas virtuales (project-vm-admin): crea, modifica, enumera y elimina VMs en el espacio de nombres del proyecto.

  • Visor de proyectos (project-viewer): consulta todos los recursos de los espacios de nombres del proyecto.

  • Administrador de proyectos de imágenes de máquina virtual (project-vm-image-admin): crea, enumera y elimina imágenes de máquina virtual personalizadas y proporcionadas por GDC en el espacio de nombres del proyecto.

Todos los roles de VM deben enlazarse al espacio de nombres del proyecto en el que reside la VM. Sigue los pasos para verificar tu acceso.

Crear una instancia de VM a partir de una imagen

En esta sección se describe cómo crear una VM a partir de una imagen de SO proporcionada por GDC o de una imagen de SO personalizada.

Ver una lista de imágenes proporcionadas por GDC

Antes de crear una VM con una imagen proporcionada por GDC, consulta la lista de imágenes disponibles. Consulta las imágenes de VM compatibles para obtener más información sobre las imágenes proporcionadas por GDC.

gdcloud

  • Lista todas las imágenes disponibles y su tamaño de disco mínimo:

    gdcloud compute images list
    

    Este comando incluye imágenes proporcionadas por GDC e imágenes personalizadas. Elige una de las imágenes del espacio de nombres vm-system.

API

  1. Lista de todas las imágenes proporcionadas por GDC:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n vm-system \
      get virtualmachineimage.virtualmachine.gdc.goog
    
  2. Obtener el minimumDiskSize de una imagen concreta proporcionada por GDC:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n vm-system \
      get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \
      -ojsonpath='{.spec.minimumDiskSize}{"\n"}'
    

    Haz los cambios siguientes:

    • MANAGEMENT_API_SERVER: el archivo kubeconfig del servidor de la API Management.
    • BOOT_DISK_IMAGE_NAME: el nombre de la imagen.

Crear una instancia de VM a partir de una imagen proporcionada por GDC

De forma predeterminada, todos los proyectos de GDC pueden crear VMs a partir de imágenes de SO proporcionadas por GDC.

Consola

  1. En el menú de navegación, selecciona Máquinas virtuales > Instancias.
  2. Haz clic en Crear instancia.
  3. En el campo Nombre, especifica un nombre para la VM.
  4. Selecciona la zona en la que quieres crear la VM.
  5. Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
  6. Selecciona la configuración de la máquina que quieras usar en la VM:
    1. Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
    2. Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
  7. Haz clic en Siguiente.
  8. Si quieres habilitar el acceso externo, selecciona Permitir acceso externo.
  9. Haz clic en Siguiente.
  10. En la sección Disco de arranque, se añade automáticamente un disco de arranque con las configuraciones predeterminadas. Puedes mantener esta configuración tal cual o hacer clic en Cambiar para modificar las configuraciones predeterminadas:
    1. En la sección Detalles del disco, modifique el Nombre del disco.
    2. En la sección Configuración del disco, modifica el valor de Tamaño.
    3. En la sección Imagen de origen, haz clic en el menú Nombre de la imagen y selecciona una de las imágenes.
    4. Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
    5. Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
    6. Haz clic en Guardar.
  11. Haz clic en Crear para crear la instancia de VM.

gdcloud

  1. Selecciona una imagen proporcionada por GDC para crear la instancia de VM en tu zona de destino:

    gdcloud compute instances create VM_NAME \
      --machine-type=MACHINE_TYPE \
      --image=BOOT_DISK_IMAGE_NAME \
      --image-project=vm-system \
      --boot-disk-size=BOOT_DISK_SIZE \
      --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE
    

    Haz los cambios siguientes:

    VariableDefinición
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20GB.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    NO_BOOT_DISK_AUTO_DELETE true o false, que indica el valor inverso de si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    gdcloud compute machine-types list

API

  1. Selecciona una imagen proporcionada por GDC para crear la instancia de VM en tu zona de destino:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n PROJECT \
      apply -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: VM_BOOT_DISK_NAME
    spec:
      source:
        image:
          name: BOOT_DISK_IMAGE_NAME
          namespace: vm-system
      size: BOOT_DISK_SIZE
    ---
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachine
    metadata:
      name: VM_NAME
    spec:
      compute:
        virtualMachineType: MACHINE_TYPE
      disks:
      - virtualMachineDiskRef:
          name: VM_BOOT_DISK_NAME
        boot: true
        autoDelete: BOOT_DISK_AUTO_DELETE
    EOF
    

    Haz los cambios siguientes:

    VariableDefinición
    MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
    PROJECT El proyecto de GDC para crear la VM.
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachineimage.virtualmachine.gdc.goog --namespace vm-system
  2. Verifica que la VM se haya creado y espera a que se muestre el estado Running. El estado Running no indica que el SO esté totalmente listo y accesible.

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

    Sustituye VM_NAME y PROJECT por el nombre y el proyecto de la VM.

    Para añadir una secuencia de comandos de inicio a la creación de tu instancia de VM, sigue los pasos que se indican en la página Usar una secuencia de comandos de inicio con una instancia de VM. Asegúrate de apagar la máquina virtual antes de añadir la secuencia de comandos.

Crear una instancia de VM a partir de una imagen personalizada

Una imagen personalizada pertenece exclusivamente a tu proyecto. Para crear una VM con una imagen personalizada, primero debes crear una imagen personalizada en el mismo proyecto.

Consola

  1. En el menú de navegación, selecciona Máquinas virtuales > Instancias.
  2. Haz clic en Crear instancia.
  3. En el campo Nombre, especifica un nombre para la VM.
  4. Selecciona la zona en la que quieres crear la VM.
  5. Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
  6. Selecciona la configuración de la máquina que quieras usar en la VM:
    1. Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
    2. Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
  7. Haz clic en Siguiente.
  8. Marca la casilla Permitir el acceso externo para habilitar el acceso externo a tu instancia de VM.
  9. Haz clic en Siguiente.
  10. En la sección Disco de arranque, se añade automáticamente un disco de arranque con las configuraciones predeterminadas. Puedes mantener esta configuración tal cual o hacer clic en Cambiar para modificar las configuraciones predeterminadas:
    1. En la sección Detalles del disco, modifique el Nombre del disco.
    2. En la sección Configuración del disco, modifica el valor de Tamaño.
    3. En la sección Imagen de origen, haz clic en el menú Nombre de la imagen y selecciona una de las imágenes con el subtítulo Creada por el cliente.
    4. Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
    5. Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
    6. Haz clic en Guardar.
  11. Haz clic en Crear para crear la instancia de VM.

gdcloud

  1. Lista todas las imágenes personalizadas:

    gdcloud compute images list --no-standard-images=true
    
  2. Crea la instancia de VM:

    gdcloud compute instances create VM_NAME \
      --machine-type=MACHINE_TYPE \
      --image=BOOT_DISK_IMAGE_NAME \
      --boot-disk-size=BOOT_DISK_SIZE \
      --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE
    

    Haz los cambios siguientes:

    VariableDefinición
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20GB.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    NO_BOOT_DISK_AUTO_DELETE true o false, que indica el valor inverso de si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    gdcloud compute machine-types list

API

  1. Lista todas las imágenes personalizadas:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n PROJECT \
      get virtualmachineimage.virtualmachine.gdc.goog
    

    Obtén el minimumDiskSize de una imagen concreta para crear una instancia de VM:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n PROJECT \
      get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \
      -ojsonpath='{.spec.minimumDiskSize}{"\n"}'
    

    Haz los cambios siguientes:

    VariableDefinición
    MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
    BOOT_DISK_IMAGE_NAME El nombre de la imagen elegida en el comando para listar todas las imágenes personalizadas.
    PROJECT El proyecto de la imagen.
  2. Crea la instancia de VM:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n PROJECT \
      apply -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: VM_BOOT_DISK_NAME
    spec:
      source:
        image:
          name: BOOT_DISK_IMAGE_NAME
      size: BOOT_DISK_SIZE
    ---
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachine
    metadata:
      name: VM_NAME
    spec:
      compute:
        virtualMachineType: MACHINE_TYPE
      disks:
      - virtualMachineDiskRef:
          name: VM_BOOT_DISK_NAME
        boot: true
        autoDelete: BOOT_DISK_AUTO_DELETE
    EOF
    

    Haz los cambios siguientes:

    VariableDefinición
    MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
    PROJECT El proyecto de GDC para crear la VM.
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
  3. Verifica que se haya creado la VM y espera a que muestre el estado Running. Estar en el estado Running no significa que el SO esté totalmente listo y accesible.

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

    Sustituye VM_NAME y PROJECT por el nombre y el proyecto de la VM.

Crear una instancia de VM con discos adicionales que no sean de arranque

Puedes crear discos que no sean de arranque al crear una VM. Cada disco adicional puede especificar una fuente de imagen o no. Este último caso se utiliza para crear un disco en blanco.

Consola

  1. En el menú de navegación, selecciona Máquinas virtuales > Instancias.
  2. Haz clic en Crear instancia.
  3. En el campo Nombre, especifica un nombre para la VM.
  4. Selecciona la zona en la que quieres crear la VM.
  5. Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
  6. Selecciona la configuración de la máquina que quieras usar en la VM:
    1. Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
    2. Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
  7. Haz clic en Siguiente.
  8. Marca la casilla Permitir el acceso externo para habilitar el acceso externo a tu instancia de VM.
  9. Haz clic en Siguiente.
  10. En la sección Disco de arranque, se añade automáticamente un disco de arranque con las configuraciones predeterminadas. Puedes mantener esta configuración tal cual o hacer clic en Cambiar para modificar las configuraciones predeterminadas:
    1. En la sección Detalles del disco, modifique el Nombre del disco.
    2. En la sección Configuración del disco, modifica el valor de Tamaño.
    3. En la sección Imagen de origen, haz clic en el menú Nombre de la imagen y selecciona una de las imágenes.
    4. Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
    5. Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
    6. Haz clic en Guardar.
  11. Para añadir más discos a tu instancia de VM, selecciona Añadir disco nuevo:
    1. Asigna un nombre al disco de la VM.
    2. Configura el tamaño del disco y los ajustes de los archivos adjuntos.
    3. Haz clic en Guardar.
  12. Haz clic en Crear para crear la instancia de VM.

gdcloud

  1. Crea un disco a partir de una imagen:

    gdcloud compute disks create NON_BOOT_DISK_FROM_IMAGE \
      --size=NON_BOOT_DISK_SIZE \
      --image=NON_BOOT_DISK_IMAGE_NAME \
      --image-project=NON_BOOT_DISK_IMAGE_NAMESPACE
    
  2. Crea un disco a partir de una imagen en blanco:

    gdcloud compute disks create NON_BOOT_BLANK_DISK \
      --size=NON_BOOT_BLANK_DISK_SIZE
    
  3. Crea una instancia con los discos del paso anterior:

    gdcloud compute instances create VM_NAME \
      --machine-type=MACHINE_TYPE \
      --image=BOOT_DISK_IMAGE_NAME \
      --image-project=NON_BOOT_DISK_IMAGE_NAMESPACE \
      --boot-disk-size=BOOT_DISK_SIZE \
      --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE \
      --disk=name=NON_BOOT_DISK_FROM_IMAGE \
      --disk=name=NON_BOOT_BLANK_DISK
    

    Haz los cambios siguientes:

    VariableDefinición
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_IMAGE_NAMESPACE El espacio de nombres de la imagen que se va a usar para el disco de arranque de la nueva VM. Usa vm-system para una imagen proporcionada por GDC o deja el campo en blanco para usar una imagen personalizada.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20GB.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    NO_BOOT_DISK_AUTO_DELETE true o false, que indica el valor inverso de si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    gdcloud compute machine-types list

    En el caso de los discos adicionales, sustituya lo siguiente:

    • NON_BOOT_DISK_FROM_IMAGE y NON_BOOT_BLANK_DISK: el nombre del disco adicional.
    • NON_BOOT_DISK_SIZE y NON_BOOT_BLANK_DISK_SIZE: el tamaño de los discos adicionales. Por ejemplo, 20GB.
    • NON_BOOT_DISK_IMAGE_NAME: el nombre de la imagen que se va a usar como disco que no es de arranque.
    • NON_BOOT_DISK_IMAGE_NAMESPACE: el espacio de nombres de la imagen que se va a usar como disco que no es de arranque. Usa vm-system para una imagen proporcionada por GDC o deja el campo en blanco para usar una imagen personalizada.

API

  1. Crea una VM con un disco que no sea de arranque:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      -n PROJECT \
      apply -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: NON_BOOT_DISK_FROM_IMAGE
    spec:
      source:
        image:
          name: NON_BOOT_DISK_IMAGE_NAME
          namespace: NON_BOOT_DISK_IMAGE_NAMESPACE
      size: NON_BOOT_DISK_SIZE
    ---
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: NON_BOOT_BLANK_DISK
    spec:
      size: NON_BOOT_BLANK_DISK_SIZE
    ---
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: VM_BOOT_DISK_NAME
    spec:
      source:
        image:
          name: BOOT_DISK_IMAGE_NAME
          namespace: BOOT_DISK_IMAGE_NAMESPACE
      size: BOOT_DISK_SIZE
    ---
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachine
    metadata:
      name: VM_NAME
    spec:
      compute:
        virtualMachineType: MACHINE_TYPE
      disks:
      - virtualMachineDiskRef:
          name: VM_BOOT_DISK_NAME
        boot: true
        autoDelete: BOOT_DISK_AUTO_DELETE
      - virtualMachineDiskRef:
          name: NON_BOOT_DISK_FROM_IMAGE
      - virtualMachineDiskRef:
          name: NON_BOOT_BLANK_DISK
    EOF
    

    Haz los cambios siguientes:

    VariableDefinición
    MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
    PROJECT El proyecto de GDC que se va a crear en la VM.
    VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
    VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
    BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
    BOOT_DISK_IMAGE_NAMESPACE El espacio de nombres de la imagen que se va a usar para el disco de arranque de la nueva VM. Usa el espacio de nombres vm-system para una imagen proporcionada por GDC o déjalo en blanco para una imagen personalizada.
    BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
    Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
    BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
    MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
    kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system

    En el caso de los discos adicionales, sustituya lo siguiente:

    • NON_BOOT_DISK_FROM_IMAGE y NON_BOOT_BLANK_DISK: el nombre del disco adicional.
    • NON_BOOT_DISK_SIZE y NON_BOOT_BLANK_DISK_SIZE: el tamaño de los discos adicionales. Por ejemplo, 20Gi.
    • NON_BOOT_DISK_IMAGE_NAME: el nombre de la imagen que quieras usar como disco no de arranque.
    • NON_BOOT_DISK_IMAGE_NAMESPACE: el espacio de nombres de la imagen que quieras usar como disco no de arranque. Usa el espacio de nombres vm-system para una imagen proporcionada por GDC o déjalo en blanco para una imagen personalizada.

    Formatea y monta los discos antes de usarlos.

Crear una VM a partir de una copia de seguridad o una instantánea

Puedes crear una máquina virtual a partir de una captura de las siguientes formas:

  • Restaurar un disco de arranque de una VM: si has creado una copia de seguridad de un disco de arranque de una VM con una captura, utiliza esa captura para crear una VM. Para obtener más información, consulta Restaurar una instantánea.
    • Restaurar un disco no de arranque: si has creado una copia de seguridad de un disco no de arranque con una captura, también puedes restaurar la captura en un disco no de arranque nuevo al crear una VM siguiendo las mismas instrucciones.

Para crear más de una VM con el mismo disco de arranque, sigue estos pasos:

  1. Crea una imagen personalizada.
  2. Crea VMs a partir de esa imagen sin usar una instantánea.

Crear una instancia de VM con una dirección IP y una subred especificadas

De forma predeterminada, puedes crear una VM de Distributed Cloud sin especificar la red. Este tipo de VM se conecta a la nube privada virtual (VPC) predeterminada y asigna dinámicamente una IP de la subred predeterminada. Para crear una VM con las configuraciones predeterminadas, consulta Crear una VM con una imagen proporcionada por GDC.

Si no quieres usar la configuración de IP predeterminada de tu máquina virtual de Distributed Cloud, puedes crear una máquina virtual con una dirección IP dinámica o estática:

  • IP dinámica de una subred personalizada: creas una subred con un CIDR específico y una VM con una IP asignada dinámicamente a partir de ese CIDR.

  • IP estática de una subred personalizada: creas una subred con un CIDR específico y una VM con una IP estática de ese CIDR.

Para obtener más información sobre la creación de subredes, consulta Subredes y direcciones IP en GDC.

En esta sección se explica cómo crear una VM con una dirección asignada dinámicamente o con una dirección IP estática.

Crear una VM con una IP asignada dinámicamente a partir de una subred personalizada

Crea una VM con una IP asignada dinámicamente a partir de un CIDR específico:

   kubectl --kubeconfig MANAGEMENT_API_SERVER \
     -n PROJECT \
     apply -f - <<EOF
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineDisk
   metadata:
     name: VM_BOOT_DISK_NAME
   spec:
     source:
       image:
         name: BOOT_DISK_IMAGE_NAME
         namespace: vm-system
     size: BOOT_DISK_SIZE
   ---
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachine
   metadata:
     name: VM_NAME
   spec:
     compute:
       virtualMachineType: MACHINE_TYPE
     disks:
     - virtualMachineDiskRef:
         name: VM_BOOT_DISK_NAME
       boot: true
       autoDelete: BOOT_DISK_AUTO_DELETE
     network:
       interfaces:
       - subnet: SUBNET_NAME
   EOF

Sustituye las siguientes variables:

VariableDefinición
MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
PROJECT El proyecto de Distributed Cloud en el que se creará la VM.
VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y debe tener un máximo de 53 caracteres.
VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Selecciona un tipo de máquina disponible:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
SUBNET_NAME Nombre de la subred personalizada.

Crear una VM con una IP estática a partir de una subred

Crea una VM con una IP estática a partir de una subred personalizada:

   kubectl --kubeconfig MANAGEMENT_API_SERVER \
     -n PROJECT \
     apply  -f - <<EOF
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineDisk
   metadata:
     name: VM_BOOT_DISK_NAME
   spec:
     source:
       image:
         name: BOOT_DISK_IMAGE_NAME
         namespace: vm-system
     size: BOOT_DISK_SIZE
   ---
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachine
   metadata:
     name: VM_NAME
   spec:
     compute:
       virtualMachineType: MACHINE_TYPE
     disks:
     - virtualMachineDiskRef:
         name: VM_BOOT_DISK_NAME
       boot: true
       autoDelete: BOOT_DISK_AUTO_DELETE
     network:
       interfaces:
       - subnet: SUBNET_NAME
         ipAddresses:
         - address: IP_ADDRESS
   EOF

Sustituye las siguientes variables:

VariableDefinición
MANAGEMENT_API_SERVER El archivo kubeconfig del servidor de la API Management.
PROJECT El proyecto de Distributed Cloud en el que se creará la VM.
VM_NAME Nombre de la nueva VM. El nombre solo puede contener caracteres alfanuméricos y guiones, y no puede tener más de 53 caracteres.
VM_BOOT_DISK_NAME Nombre del nuevo disco de arranque de la VM.
BOOT_DISK_IMAGE_NAME Nombre de la imagen que se va a usar para el disco de arranque de la nueva VM.
BOOT_DISK_SIZE Tamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que el minimumDiskSize de la imagen del disco de arranque.
BOOT_DISK_AUTO_DELETE true o false, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.
MACHINE_TYPE El tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
SUBNET_NAME Nombre de la subred personalizada.
IP_ADDRESS La dirección IP. Debe estar dentro del intervalo de la subred elegida. Solo puedes especificar una dirección IP en el campo ipAddresses.

Siguientes pasos