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:
Inicia sesión y genera el archivo kubeconfig del servidor de la API Management si no tienes uno.
Usa la ruta al archivo kubeconfig del servidor de la API Management para sustituir
MANAGEMENT_API_SERVERen 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 listEste comando incluye imágenes proporcionadas por GDC e imágenes personalizadas. Elige una de las imágenes del espacio de nombres
vm-system.
API
Lista de todas las imágenes proporcionadas por GDC:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimage.virtualmachine.gdc.googObtener el
minimumDiskSizede 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
- En el menú de navegación, selecciona Máquinas virtuales > Instancias.
- Haz clic en Crear instancia.
- En el campo Nombre, especifica un nombre para la VM.
- Selecciona la zona en la que quieres crear la VM.
- Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
- Selecciona la configuración de la máquina que quieras usar en la VM:
- Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
- Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
- Haz clic en Siguiente.
- Si quieres habilitar el acceso externo, selecciona Permitir acceso externo.
- Haz clic en Siguiente.
- 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:
- En la sección Detalles del disco, modifique el Nombre del disco.
- En la sección Configuración del disco, modifica el valor de Tamaño.
- En la sección Imagen de origen, haz clic en el menú Nombre de la imagen y selecciona una de las imágenes.
- Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
- Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
- Haz clic en Guardar.
- Haz clic en Crear para crear la instancia de VM.
gdcloud
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_DELETEHaz los cambios siguientes:
Variable Definición VM_NAMENombre 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_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_SIZETamaño del disco de arranque, como 20GB.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.NO_BOOT_DISK_AUTO_DELETEtrueofalse, 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_TYPEEl 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
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 EOFHaz los cambios siguientes:
Variable Definición MANAGEMENT_API_SERVEREl archivo kubeconfig del servidor de la API Management. PROJECTEl proyecto de GDC para crear la VM. VM_NAMENombre 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_NAMENombre del nuevo disco de arranque de la VM. BOOT_DISK_IMAGE_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_SIZETamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.BOOT_DISK_AUTO_DELETEtrueofalse, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.MACHINE_TYPEEl 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-systemVerifica que la VM se haya creado y espera a que se muestre el estado
Running. El estadoRunningno indica que el SO esté totalmente listo y accesible.kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAMESustituye
VM_NAMEyPROJECTpor 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
- En el menú de navegación, selecciona Máquinas virtuales > Instancias.
- Haz clic en Crear instancia.
- En el campo Nombre, especifica un nombre para la VM.
- Selecciona la zona en la que quieres crear la VM.
- Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
- Selecciona la configuración de la máquina que quieras usar en la VM:
- Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
- Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
- Haz clic en Siguiente.
- Marca la casilla Permitir el acceso externo para habilitar el acceso externo a tu instancia de VM.
- Haz clic en Siguiente.
- 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:
- En la sección Detalles del disco, modifique el Nombre del disco.
- En la sección Configuración del disco, modifica el valor de Tamaño.
- 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.
- Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
- Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
- Haz clic en Guardar.
- Haz clic en Crear para crear la instancia de VM.
gdcloud
Lista todas las imágenes personalizadas:
gdcloud compute images list --no-standard-images=trueCrea 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_DELETEHaz los cambios siguientes:
Variable Definición VM_NAMENombre 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_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_SIZETamaño del disco de arranque, como 20GB.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.NO_BOOT_DISK_AUTO_DELETEtrueofalse, 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_TYPEEl 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
Lista todas las imágenes personalizadas:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimage.virtualmachine.gdc.googObtén el
minimumDiskSizede 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:
Variable Definición MANAGEMENT_API_SERVEREl archivo kubeconfig del servidor de la API Management. BOOT_DISK_IMAGE_NAMEEl nombre de la imagen elegida en el comando para listar todas las imágenes personalizadas. PROJECTEl proyecto de la imagen. 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 EOFHaz los cambios siguientes:
Variable Definición MANAGEMENT_API_SERVEREl archivo kubeconfig del servidor de la API Management. PROJECTEl proyecto de GDC para crear la VM. VM_NAMENombre 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_NAMENombre del nuevo disco de arranque de la VM. BOOT_DISK_IMAGE_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_SIZETamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.BOOT_DISK_AUTO_DELETEtrueofalse, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.MACHINE_TYPEEl 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-systemVerifica que se haya creado la VM y espera a que muestre el estado
Running. Estar en el estadoRunningno significa que el SO esté totalmente listo y accesible.kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAMESustituye
VM_NAMEyPROJECTpor 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
- En el menú de navegación, selecciona Máquinas virtuales > Instancias.
- Haz clic en Crear instancia.
- En el campo Nombre, especifica un nombre para la VM.
- Selecciona la zona en la que quieres crear la VM.
- Opcional: Haz clic en Añadir etiquetas para asignar etiquetas a la VM. Esto te ayuda a organizar tus instancias de VM.
- Selecciona la configuración de la máquina que quieras usar en la VM:
- Uso general: asegúrate de que el tipo de máquina se ajuste a los requisitos de tu carga de trabajo.
- Personalizado: define el número de núcleos y los requisitos de memoria de tu máquina.
- Haz clic en Siguiente.
- Marca la casilla Permitir el acceso externo para habilitar el acceso externo a tu instancia de VM.
- Haz clic en Siguiente.
- 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:
- En la sección Detalles del disco, modifique el Nombre del disco.
- En la sección Configuración del disco, modifica el valor de Tamaño.
- En la sección Imagen de origen, haz clic en el menú Nombre de la imagen y selecciona una de las imágenes.
- Selecciona o desmarca Activar Arranque seguro. Si usas una imagen de Windows, debes tener habilitado el arranque seguro.
- Selecciona Conservar disco o Eliminar disco para configurar la regla de eliminación del disco.
- Haz clic en Guardar.
- Para añadir más discos a tu instancia de VM, selecciona Añadir disco nuevo:
- Asigna un nombre al disco de la VM.
- Configura el tamaño del disco y los ajustes de los archivos adjuntos.
- Haz clic en Guardar.
- Haz clic en Crear para crear la instancia de VM.
gdcloud
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_NAMESPACECrea un disco a partir de una imagen en blanco:
gdcloud compute disks create NON_BOOT_BLANK_DISK \ --size=NON_BOOT_BLANK_DISK_SIZECrea 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_DISKHaz los cambios siguientes:
Variable Definición VM_NAMENombre 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_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_IMAGE_NAMESPACEEl espacio de nombres de la imagen que se va a usar para el disco de arranque de la nueva VM. Usa vm-systempara una imagen proporcionada por GDC o deja el campo en blanco para usar una imagen personalizada.BOOT_DISK_SIZETamaño del disco de arranque, como 20GB.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.NO_BOOT_DISK_AUTO_DELETEtrueofalse, 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_TYPEEl tipo de máquina predefinido de la nueva VM. Para seleccionar un tipo de máquina disponible, ejecuta lo siguiente:
gdcloud compute machine-types listEn el caso de los discos adicionales, sustituya lo siguiente:
NON_BOOT_DISK_FROM_IMAGEyNON_BOOT_BLANK_DISK: el nombre del disco adicional.NON_BOOT_DISK_SIZEyNON_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. Usavm-systempara una imagen proporcionada por GDC o deja el campo en blanco para usar una imagen personalizada.
API
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 EOFHaz los cambios siguientes:
Variable Definición MANAGEMENT_API_SERVEREl archivo kubeconfig del servidor de la API Management. PROJECTEl proyecto de GDC que se va a crear en la VM. VM_NAMENombre 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_NAMENombre del nuevo disco de arranque de la VM. BOOT_DISK_IMAGE_NAMENombre de la imagen que se va a usar para el disco de arranque de la nueva VM. BOOT_DISK_IMAGE_NAMESPACEEl 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-systempara una imagen proporcionada por GDC o déjalo en blanco para una imagen personalizada.BOOT_DISK_SIZETamaño del disco de arranque, como 20Gi.
Este valor siempre debe ser mayor o igual que elminimumDiskSizede la imagen del disco de arranque.BOOT_DISK_AUTO_DELETEtrueofalse, que indica si el disco de arranque se elimina automáticamente cuando se elimina la instancia de máquina virtual.MACHINE_TYPEEl 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-systemEn el caso de los discos adicionales, sustituya lo siguiente:
NON_BOOT_DISK_FROM_IMAGEyNON_BOOT_BLANK_DISK: el nombre del disco adicional.NON_BOOT_DISK_SIZEyNON_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 nombresvm-systempara 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:
- Crea una imagen personalizada.
- 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
CIDRespecífico y una VM con una IP asignada dinámicamente a partir de eseCIDR.IP estática de una subred personalizada: creas una subred con un
CIDRespecífico y una VM con una IP estática de eseCIDR.
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:
| Variable | Definició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:
| Variable | Definició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. |