En este documento, se describe cómo configurar la política de mantenimiento del host de una instancia de máquina virtual (VM) para controlar el comportamiento de la VM cuando se produce un evento de host.
Antes de empezar
-
Configura la autenticación si aún no lo hiciste.
La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud.
Para ejecutar un código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine de la siguiente manera.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- No puedes cambiar la política de mantenimiento del host de una VM interrumpible. Cuando hay un evento de mantenimiento, la VM interrumpible se detiene y no se migra. Debes reiniciar de forma manual la VM interrumpida.
- Después de crear una VM mediante un tipo de máquina E2, no podrás cambiar la configuración de mantenimiento del host de la VM de
MIGRATE
aTERMINATE
, ni viceversa. onHostMaintenance
: Determina el comportamiento cuando ocurre un evento de mantenimiento que podría hacer que la VM se reinicie.MIGRATE
(Predeterminado): Hace que Compute Engine realice la migración en vivo de una instancia cuando se produce un evento de mantenimiento.TERMINATE
: Detiene una VM en lugar de migrarla.
automaticRestart
: Determina el comportamiento cuando una VM falla o el sistema la detiene.true
(Predeterminado): Compute Engine reinicia una instancia si esta falla o se detiene.false
: Compute Engine no reinicia la VM si esta falla o se detiene.
localSsdRecoveryTimeout
: Configura el tiempo de espera de recuperación de SSD local. Esta es la cantidad máxima de tiempo, en horas, que Compute Engine espera para recuperar los datos de los SSD locales después de un error de host. Esta configuración solo se aplica a las VMs con discos SSD locales conectados.- Sin establecer (Predeterminado): Compute Engine espera hasta 1 hora para recuperar el disco. Para las VMs Z3 (vista previa), el tiempo de espera predeterminado es de 4 horas.
- Un número del 0 al 168: especifica cuánto tiempo espera Compute Engine para recuperar el disco. El número debe ser un número entero, en incrementos de 1 hora, con un valor máximo de 7 días. Un valor de 0 significa que Compute Engine no esperará a recuperar los datos.
hostErrorTimeoutSeconds
(Vista previa): Configura la cantidad máxima de tiempo, en segundos, que Compute Engine espera para reiniciar o finalizar una VM después de detectar que esta no responde.- Sin establecer (Predeterminado): Compute Engine espera hasta 5.5 minutos (330 segundos) antes de reiniciar una VM que no responde.
- Número del 90 al 330: especifica la cantidad de segundos, en incrementos de 30, que Compute Engine espera antes de reiniciar una VM que no responde.
En la consola de Google Cloud, ve a la página Crea una instancia.
Especifica un Nombre para la VM.
Selecciona una región y una zona para la VM.
En la sección Configuración de la máquina, haz lo siguiente:
- Especifica los detalles del tipo de máquina para la VM.
- Expande el menú Configuración avanzada del modelo de aprovisionamiento de VM.
- En el menú Mantenimiento en el host, selecciona uno de los siguientes pasos:
- Para migrar VMs durante eventos de mantenimiento, selecciona Migrar instancia de VM.
- Para detener las VMs durante los eventos de mantenimiento, elige Finalizar instancia de VM.
Para crear la VM, haz clic en Crear.
--maintenance-policy
: Es si la VM se migra o se detiene durante el mantenimiento del host. La VM se migra de manera predeterminada si omites esta propiedad.--no-restart-on-failure
o--restart-on-failure
: Si la VM se reinicia de forma automática después de un error de host. De forma predeterminada, la VM siempre se reiniciará cuando se detecte una falla.--local-ssd-recovery-timeout
: Es el tiempo que Compute Engine dedica a recuperar los discos SSD locales conectados después de un error del host. El valor predeterminado es de 1 hora.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_ON_FAILURE_BEHAVIOR
: Comportamiento de reinicio para la VM, establecido en--no-restart-on-failure
o--restart-on-failure
.SSD_RECOVERY_TIMEOUT
: la cantidad de horas que se dedicarán a recuperar una SSD local conectado a una VM que no responde. Los valores válidos van desde 0 hasta 168, en incrementos de 1 hora.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_ON_FAILURE_BEHAVIOR
: Comportamiento de reinicio para la VM, establecido en--no-restart-on-failure
o--restart-on-failure
.SSD_RECOVERY_TIMEOUT
: la cantidad de horas que Compute Engine dedica a recuperar una SSD local que se conectó a una VM que no responde. Los valores válidos van desde 0 hasta 168, en incrementos de 1 hora.ERROR_DETECTION_TIMEOUT
: La cantidad de segundos que Compute Engine espera antes de reiniciar una VM que no responde, de 90 a 330, en incrementos de 30.onHostMaintenance
: Es si la VM se migra o se detiene durante el mantenimiento del host. La VM se migra de manera predeterminada.automaticRestart
: Si la VM se reinicia de forma automática después de un error de host. Las VMs se reinician de forma automática de forma predeterminada.localSsdRecoveryTimeout
: Es el tiempo que Compute Engine dedica a recuperar los discos SSD locales conectados después de que se detecta un error de host. El valor predeterminado es de 1 hora.PROJECT_ID
: El proyecto de la VM.ZONE
: La zona donde deseas crear la VM.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_POLICY
: La política de reinicio de esta VM, que puede sertrue
ofalse
.SSD_RECOVERY_TIMEOUT
: Es la cantidad de horas que Compute Engine dedica a recuperar un disco SSD local que se conectó a una VM que no responde. Los valores válidos van desde 0 hasta 168, en incrementos de 1 hora.PROJECT_ID
: El proyecto de la VM.ZONE
: La zona donde deseas crear la VM.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_POLICY
: La política de reinicio de esta VM, que puede sertrue
ofalse
.SSD_RECOVERY_TIMEOUT
: Es la cantidad de horas que Compute Engine dedicará a recuperar un disco SSD local que se conectó a una VM que no responde. Los valores válidos van desde 0 hasta 168, en incrementos de 1 hora.HOST_ERROR_TIMEOUT
: La cantidad de segundos que Compute Engine espera antes de reiniciar o finalizar una VM que no responde. Los valores válidos van desde 90 hasta 330, en incrementos de 30.En la consola de Google Cloud, ve a la página Instancias de VM.
Haz clic en la VM en la que deseas cambiar la configuración. Se mostrará la página de detalles de la VM.
En la página de detalles de la VM, completa los siguientes pasos:
- Haz clic en el botón Editar en la parte superior de la página.
- Ve a la sección Administración. En la sección Políticas de disponibilidad, puedes configurar las opciones de Mantenimiento en el host y Reinicio automático.
- Haz clic en Guardar.
VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política para esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_ON_FAILURE_BEHAVIOR
: El comportamiento de reinicio de la VM, ya sea--no-restart-on-failure
o--restart-on-failure
.SSD_RECOVERY_TIMEOUT
: Es el tiempo, en horas, que Compute Engine dedica a recuperar un disco SSD local conectado a una VM que no responde. Los valores válidos van desde 0 hasta 168.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_ON_FAILURE_BEHAVIOR
: Comportamiento de reinicio para la VM, establecido en--no-restart-on-failure
o--restart-on-failure
.SSD_RECOVERY_TIMEOUT
: Es el tiempo, en horas, que Compute Engine dedica a recuperar un disco SSD local que se conectó a una VM que no responde. Los valores válidos van desde 0 hasta 168.NUMBER_OF_SECONDS
: La cantidad de segundos que Compute Engine espera antes de reiniciar o finalizar una VM que no responde, de 90 a 330, en incrementos de 30.onHostMaintenance
: Es si la VM se migra o se detiene durante el mantenimiento del host. La VM se migra de manera predeterminada.automaticRestart
: Si la VM se reinicia de forma automática después de un error de host. Las VMs se reinician de forma automática de forma predeterminada.localSsdRecoveryTimeout
: Es el tiempo que Compute Engine dedica a recuperar los discos SSD locales conectados después de que se detecta un error de host. Si se omite, el valor predeterminado es 1 hora.PROJECT_ID
: El proyecto de la VM.ZONE
: la zona donde se ubica la VM.VM_NAME
: El nombre de la VM.MAINTENANCE_POLICY
: La política de mantenimiento de esta VM, ya seaTERMINATE
oMIGRATE
.RESTART_POLICY
: La política de reinicio de esta VM, que puede sertrue
ofalse
.SSD_RECOVERY_TIMEOUT
: Es el tiempo, en horas, que Compute Engine dedica a recuperar un disco SSD local que se conectó a una VM que no responde. Los valores válidos van desde 0 hasta 168.PROJECT_ID
: El proyecto de la VM.ZONE
: la zona donde se ubica la VM.VM_NAME
: El nombre de la VM.NUMBER_OF_SECONDS
: La cantidad de segundos que Compute Engine espera antes de reiniciar o finalizar una VM que no responde, de 90 a 330, en incrementos de 30.Ve a la página Instancias de VM.
Haz clic en el nombre de la VM para la que deseas ver la configuración. Se abrirá la página Detalles de instancia de VM.
Ve a la sección Administración. En la subsección Políticas de disponibilidad, se muestra tu configuración actual para Mantenimiento en el host y Reinicio automático.
PROJECT_ID
: El proyecto donde se ubica la VM.ZONE
: la zona donde se ubica la VM.VM_NAME
: El nombre de la VM.PROJECT_ID
: El proyecto de la VM.ZONE
: la zona donde se ubica la VM.VM_NAME
: El nombre de la VM.- Obtén más información sobre el mantenimiento del host.
- Obtén más información sobre la migración en vivo.
- Aprende a detectar un evento de migración en vivo.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Si deseas obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud.
Limitaciones
Propiedades de mantenimiento del host disponibles
Puedes configurar el comportamiento de mantenimiento, el comportamiento de reinicio y el comportamiento después de que se produzca un error de host de una VM con las siguientes propiedades.
Compute Engine configura cada VM con los valores predeterminados, a menos que especifiques lo contrario.
Durante los eventos del host, según la política de mantenimiento del host configurada, las VMs que no admiten la migración en vivo se finalizan o se reinician automáticamente.
Configura la política de mantenimiento del host de una VM
Puedes cambiar la política de mantenimiento del host de una VM la primera vez que creas la VM o después de crearla.
Configura la política de mantenimiento del host durante la creación de la VM
La información de esta sección se centra en cómo configurar la política de mantenimiento del host cuando creas una VM. Para ver más ejemplos de creación de VM, consulta Crea y, luego, inicia una instancia de VM.
Puedes configurar la política de mantenimiento del host de una VM durante la creación de la VM con la consola de Google Cloud, gcloud CLI o la API de Compute Engine.
Consola
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Para configurar la política de mantenimiento del host de una VM nueva, usa el comando
gcloud compute instances create
. Incluye uno o más de los siguientes parámetros:Configura la política de mantenimiento del host de una VM nueva con el siguiente comando. Si omites alguna de las marcas, se usa el valor predeterminado de la marca.
gcloud compute instances create VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --RESTART_ON_FAILURE_BEHAVIOR \ --local-ssd-recovery-timeout=SSD_RECOVERY_TIMEOUT
Reemplaza lo siguiente:
Configura el tiempo de espera de detección de errores del host
Para establecer la cantidad máxima de tiempo que Compute Engine espera para reiniciar o finalizar una VM que no responde, usa el comando
gcloud compute instances create
. Especifica el tiempo de espera con la marca--host-error-timeout-seconds
.gcloud beta compute instances create VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --RESTART_ON_FAILURE_BEHAVIOR \ --local-ssd-recovery-timeout=SSD_RECOVERY_TIMEOUT \ --host-error-timeout-seconds=ERROR_DETECTION_TIMEOUT
Reemplaza lo siguiente:
REST
Para configurar la política de mantenimiento del host de una VM nueva mediante la API de Compute Engine, usa el método
instances.insert
. Incluye una o más de las siguientes propiedades en el objetoscheduling
del cuerpo de la solicitud:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY", "automaticRestart": "RESTART_POLICY, "localSsdRecoveryTimeout": SSD_RECOVERY_TIMEOUT } }
Reemplaza lo siguiente:
Configura el tiempo de espera de detección de errores del host
Para establecer la cantidad máxima de tiempo que Compute Engine espera para reiniciar o finalizar una VM que no responde, usa el método beta
instances.insert
porque esta opción está disponible en versión preliminar.Agrega la propiedad
hostErrorTimeoutSeconds
al objetoscheduling
del cuerpo de la solicitud.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY", "automaticRestart": "RESTART_POLICY, "localSsdRecoveryTimeout": SSD_RECOVERY_TIMEOUT "hostErrorTimeoutSeconds": HOST_ERROR_TIMEOUT, } }
Reemplaza lo siguiente:
Cómo actualizar la política de mantenimiento del host de una VM existente
Consola
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Actualiza la política de mantenimiento del host de una VM existente con el comando
gcloud compute instances set-scheduling
. Usa los mismos parámetros descritos en el comando de creación de VM de la sección anterior.gcloud compute instances set-scheduling VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --RESTART_ON_FAILURE_BEHAVIOR \ --local-ssd-recovery-timeout=SSD_RECOVERY_TIMEOUT
Reemplaza lo siguiente:
Cómo actualizar el tiempo de espera de detección de errores del host
Para actualizar la cantidad máxima de tiempo que Compute Engine espera para reiniciar o finalizar una VM que no responde, usa el comando
gcloud beta compute instances set-scheduling
, porque esta función solo es disponible en versión preliminar.Actualiza el tiempo de espera con el parámetro
--host-error-timeout-seconds
. Por ejemplo:gcloud beta compute instances set-scheduling VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --RESTART_ON_FAILURE_BEHAVIOR \ --local-ssd-recovery-timeout=SSD_RECOVERY_TIMEOUT \ --host-error-timeout-seconds=NUMBER_OF_SECONDS
Reemplaza lo siguiente:
REST
Actualiza la política de mantenimiento del host de una VM existente con una solicitud
POST
al métodoinstances.setScheduling
.Incluye una o más de las siguientes propiedades en el cuerpo de la solicitud:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling { "onHostMaintenance": "MAINTENANCE_POLICY", "automaticRestart": RESTART_POLICY, "localSsdRecoveryTimeout": SSD_RECOVERY_TIMEOUT }
Reemplaza lo siguiente:
Cómo actualizar el tiempo de espera de detección de errores del host
Para actualizar la cantidad máxima de tiempo que Compute Engine espera para reiniciar o finalizar una VM que no responde, debes usar el método beta
instances.setScheduling
porque esta función está disponible en versión preliminar.Agrega el parámetro
hostErrorTimeoutSeconds
al cuerpo de la solicitud.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling { "hostErrorTimeoutSeconds": NUMBER_OF_SECONDS, }
Reemplaza lo siguiente:
Visualiza la configuración de la política de mantenimiento del host de una VM
Consola
gcloud
Consulta la configuración de la opción de mantenimiento del host de una VM con el comando
gcloud compute instances describe
:gcloud compute instances describe VM_NAME --format="yaml(scheduling)"
Reemplaza
VM_NAME
por el nombre de la VM.El resultado incluye el tiempo de espera de detección de errores del host de la VM, por ejemplo:
scheduling: automaticRestart: true localSsdRecoveryTimeout: nanos: 0 seconds: '10800' onHostMaintenance: MIGRATE preemptible: false provisioningModel: STANDARD
Cómo ver la configuración del tiempo de espera de detección de errores del host
Visualiza el valor actual de
hostErrorTimeoutSeconds
con el comandogcloud beta compute instances describe
, ya que esta opción solo está disponible en versión preliminar.gcloud beta compute instances describe VM_NAME --format="yaml(scheduling)"
Reemplaza
VM_NAME
por el nombre de la VM.El resultado incluye el tiempo de espera de detección de errores del host de la VM, por ejemplo:
scheduling: automaticRestart: true hostErrorTimeoutSeconds: 120 localSsdRecoveryTimeout: nanos: 0 seconds: '10800' onHostMaintenance: MIGRATE preemptible: false provisioningModel: STANDARD
REST
Para ver la configuración de mantenimiento del host de una VM, usa el método
instances.get
:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Reemplaza lo siguiente:
En el resultado, el objeto
scheduling
contiene la política de mantenimiento del host de la VM, por ejemplo:"scheduling": { "onHostMaintenance": "MIGRATE", "automaticRestart": true, "preemptible": false, "provisioningModel": "STANDARD", "localSsdRecoveryTimeout": { "seconds": "10800", "nanos": 0 } }
Cómo ver la configuración del tiempo de espera de errores del host
Visualiza el parámetro de configuración
hostErrorTimeoutSeconds
actual con una solicitudGET
al método betainstances.get
, ya que esta opción solo está disponible en versión preliminar.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Reemplaza lo siguiente:
En el resultado, el objeto
scheduling
incluye el tiempo de espera de detección de errores del host de la VM, por ejemplo:"scheduling": { "hostErrorTimeoutSeconds": 120 }
¿Qué sigue?
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2024-09-03 (UTC)
-