En esta página, se describe cómo probar los efectos de la política de mantenimiento del host de la instancia de Compute Engine en las aplicaciones.
Puedes simular un evento de mantenimiento en tus VMs para probar lo siguiente:
- Los efectos de la migración en vivo en tus aplicaciones.
- Cómo tus aplicaciones y trabajos por lotes manejan la interrupción y el cierre cuando se usan una o más VMs de Spot.
- Cómo tus aplicaciones manejan el proceso de cierre y reinicio para las instancias que están configuradas para finalizar y reiniciarse durante los eventos de mantenimiento, en lugar de realizar la migración en vivo
- Cómo se comportan las cargas de trabajo que se ejecutan en nodos de usuario único durante un evento de mantenimiento del host y ver los efectos de la política de mantenimiento del host de las VM de usuario único en las aplicaciones que se ejecutan en las VMs
Si intentas simular un evento de mantenimiento del host en una instancia que no admite la migración en vivo, la instancia se finaliza o se reinicia, según la política de mantenimiento del host configurada.
Antes de comenzar
- Revisa el
límite de frecuencia de la API regional
para
SimulateMaintenanceEventRequestsPerMinutePerProjectPerRegion. -
Configura la autenticación si aún no lo hiciste.
La autenticación verifica tu identidad para acceder a los Google Cloud servicios y las APIs. Para ejecutar
código o muestras desde un entorno de desarrollo local, puedes autenticarte en
Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña según cómo planeas usar las muestras en esta página:
gcloud
-
Instala la Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:
gcloud initSi usas un proveedor de identidad (IdP) externo, primero debes acceder a gcloud CLI con tu identidad federada.
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala la Google Cloud CLI.
Si usas un proveedor de identidad (IdP) externo, primero debes acceder a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de. Google Cloud
Limitaciones
- Para simular de forma correcta un evento de mantenimiento en un grupo de nodos de usuario único que tiene configurada una política de mantenimiento del host para migrar dentro del grupo de nodos, debes activar el evento de mantenimiento de forma secuencial en cada nodo.
- En el caso de un grupo de nodos de usuario único, cuando intentas simular un evento de mantenimiento del host y el grupo de nodos tiene configurada una política de mantenimiento del host para migrar dentro del grupo de nodos, sucede lo siguiente:
- Si la cantidad de nodos especificada es menor o igual que la cantidad total de nodos de retención que están reservados, la simulación del evento de mantenimiento del host se ejecuta para todos los nodos especificados de manera simultánea.
- Si la cantidad de nodos especificada es mayor que la cantidad total de nodos de retención reservados, la simulación falla.
- La cantidad de simulaciones de eventos de mantenimiento que puedes iniciar por minuto por
región está limitada por el límite de frecuencia de la API para la
simulate_maintenance_event_requests_per_regionmétrica.
Simula eventos de mantenimiento del host para probar la migración en vivo
Puedes simular un evento de mantenimiento para una instancia de procesamiento con Google Cloud CLI o una solicitud a la API. Este evento simulado incluye las diferentes actividades de mantenimiento que ocurren en un evento de mantenimiento normal. Esto te permite observar el proceso de extremo a extremo y probar cualquier automatización que hayas implementado.
Durante la simulación del evento de mantenimiento del host para una instancia que usa la migración en vivo, la clave de metadatos maintenance-event de la instancia pasa por los siguientes cambios:
- Al comienzo de la simulación, el valor de la clave de metadatos
maintenance-eventcambia deNONEaMIGRATE_ON_HOST_MAINTENANCE. - Durante la duración del evento de simulación, el valor permanece como
MIGRATE_ON_HOST_MAINTENANCE. - Cuando la simulación finaliza, el valor vuelve a ser
NONE.
Para consultar la clave del evento de mantenimiento, revisa Consulta la clave de metadatos del evento de mantenimiento.
gcloud
Usa el
compute instances simulate-maintenance-event comando
para simular un evento de mantenimiento para una instancia y probar su configuración de política de mantenimiento del host configurada:
gcloud compute instances simulate-maintenance-event INSTANCE_NAME \
--zone=ZONE --with-extended-notifications=True
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento en la que deseas simular el evento de mantenimiento.Puedes especificar varios nombres de instancias separados por un solo espacio para simular los eventos de mantenimiento en más de una instancia en la misma zona. Por ejemplo,
instance-1 instance-2 instance-3.ZONE: Es la zona en la que se encuentra la instancia.
REST
Realiza una solicitud POST al
compute.instances.simulateMaintenanceEvent método:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/simulateMaintenanceEvent
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto de esta solicitud.INSTANCE_NAME: Es el nombre de la instancia para la que deseas simular el evento de mantenimiento.ZONE: Es la zona en la que se encuentra la instancia.
Simula el mantenimiento del host para instancias de procesamiento que finalizan
Puedes simular un evento de mantenimiento para una instancia de procesamiento con Google Cloud CLI o una solicitud a la API. Este evento simulado incluye las diferentes actividades de mantenimiento que ocurren en un evento de mantenimiento normal. Esto te permite observar el proceso de extremo a extremo y probar cualquier automatización que hayas implementado.
Además, si usas el parámetro --with-extended-notifications con un
tipo de máquina compatible
puedes probar el inicio manual del mantenimiento del host durante el evento simulado.
gcloud
Usa el
compute instances simulate-maintenance-eventcomando para simular un evento de mantenimiento para una instancia y probar su configuración de política de mantenimiento del host configurada. De manera opcional, puedes incluir la marca--with-extended-notifications.gcloud compute instances simulate-maintenance-event INSTANCE_NAME \ --zone=ZONE --with-extended-notifications=True
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento en la que deseas simular el evento de mantenimiento.Puedes especificar varios nombres de instancias separados por un solo espacio para simular los eventos de mantenimiento en más de una instancia en la misma zona. Por ejemplo,
instance-1 instance-2 instance-3.ZONE: Es la zona en la que se encuentra la instancia.
Opcional: Para iniciar de forma manual el evento de mantenimiento simulado, usa el
compute instances perform-maintenancecomando.gcloud compute instances perform-maintenance INSTANCE_NAME \ --zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento en la que deseas simular el evento de mantenimiento.Puedes especificar varios nombres de instancias separados por un solo espacio para simular los eventos de mantenimiento en más de una instancia en la misma zona. Por ejemplo,
instance-1 instance-2 instance-3.ZONE: Es la zona en la que se encuentran las instancias.
REST
Realiza una solicitud
POSTalcompute.instances.simulateMaintenanceEventmétodo. De manera opcional, puedes incluir el parámetro de consultawithExtendedNotifications.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/simulateMaintenanceEvent?withExtendedNotifications=True
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto de esta solicitud.INSTANCE_NAME: Es el nombre de la instancia para la que deseas simular el evento de mantenimiento.ZONE: Es la zona en la que se encuentra la instancia.
Opcional: Para iniciar de forma manual el evento de mantenimiento simulado, realiza una
POSTsolicitud alcompute.instances.performMaintenancemétodo.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/performMaintenance
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento en la que deseas iniciar el evento de mantenimiento.Puedes especificar varios nombres de instancias separados por un solo espacio para realizar eventos de mantenimiento en más de una instancia en la misma zona. Por ejemplo,
instance-1 instance-2 instance-3.ZONE: Es la zona en la que se encuentran las instancias.
Simula eventos de mantenimiento del host en nodos de usuario único
Puedes simular un evento de mantenimiento del host en nodos de usuario único con Google Cloud CLI o una solicitud a la API. Durante la simulación del evento de mantenimiento del host en una VM de usuario único, el valor de la clave de metadatos maintenance-event no cambia y permanece NONE durante toda la simulación.
gcloud
Ejecuta el comando sole-tenancy node-groups simulate-maintenance-event para forzar a los nodos de usuario único a activar su política de mantenimiento configurada:
gcloud compute sole-tenancy node-groups simulate-maintenance-event NODE_GROUP \
--nodes=NODE_NAMES \
--zone=ZONE \
--async
Reemplaza lo siguiente:
NODE_GROUP: Es el nombre del grupo de nodos en el que deseas simular el evento de mantenimiento.NODE_NAMES: Son los nombres de los nodos en los que deseas simular el evento de mantenimiento. Además, mientras especificas varios nombres de nodos, usa valores separados por comas, por ejemplo,node-1,node-2,node-3.ZONE: Es la zona en la que se encuentran los nodos.
REST
Realiza una solicitud POST al
compute.nodeGroups.simulateMaintenanceEvent método:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/NODE_GROUP/simulateMaintenanceEvent
{
"nodes": [
"NODE_NAMES"
]
}
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto de esta solicitud.ZONE: Es la zona en la que se encuentran los nodos.NODE_GROUP: Es el nombre del grupo de nodos en el que deseas simular el evento de mantenimiento.NODE_NAMES: Son los nombres de los nodos en los que deseas simular el evento de mantenimiento. Encierra el nombre del nodo entre comillas dobles, por ejemplo,"node-1". Además, mientras especificas varios nombres de nodos, usa valores separados por comas, por ejemplo,"node-1","node-2","node-3".
¿Qué sigue?
- Obtén más información sobre los eventos del host.
- Obtén más información sobre el mantenimiento del host en nodos de usuario único.
- Obtén más información sobre la configuración de las opciones de la política de mantenimiento del host de VM.
- Obtén información sobre cómo ver las operaciones de VM.
- Obtén más información sobre el usuario único y el multiusuario.