En esta página, se explica cómo iniciar un evento de mantenimiento del host de forma manual en las instancias de Compute Engine compatibles. Esta función te permite iniciar un evento de mantenimiento para controlar el tiempo del mantenimiento de la instancia. Esto es útil para las cargas de trabajo que podrían verse afectadas por una disminución del rendimiento o un tiempo de inactividad, por lo que necesitas que el período de mantenimiento comience a una hora específica.
Cuando inicias un evento de mantenimiento de forma manual, el del host comienza de inmediato. No puedes especificar una fecha ni una hora para que comience el evento de mantenimiento. Si no usas esta función, el evento de mantenimiento empezará a la hora indicada en la notificación del próximo mantenimiento.
Si primero quieres probar cómo manejarán tus aplicaciones un evento de mantenimiento, puedes simular un evento de mantenimiento.
Limitaciones
Puedes iniciar un evento de mantenimiento del host de forma manual para las instancias que usan los siguientes tipos de máquinas:
Familias de máquinas con optimización de acelerador:
Familias de máquinas optimizadas para procesamiento:
Familias de máquinas de uso general:
Tipos de máquinas C4 con 192 o 288 CPUs virtuales o con discos SSD locales conectados
Tipos de máquinas C4D con 384 CPUs virtuales o con discos SSD locales conectados
Tipos de máquinas C3 con 176 CPUs virtuales o con discos SSD locales conectados
Tipos de máquinas C3D con 360 CPUs virtuales o con discos SSD locales conectados
Familias de máquinas con optimización de memoria:
Familias de máquinas optimizadas para el almacenamiento:
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
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
Roles obligatorios
Para obtener los permisos que
necesitas para administrar el mantenimiento de VM,
pídele a tu administrador que te otorgue el
rol de IAM Administrador de instancias de Compute (v1) (roles/compute.instanceAdmin.v1)
en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para administrar el mantenimiento de las VM. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para administrar el mantenimiento de las VM:
-
Para obtener información sobre una instancia de procesamiento:
compute.instances.get
También puedes obtener estos permisos con roles personalizados o otros roles predefinidos.
Inicia un evento de mantenimiento del host de forma manual
Compute Engine envía notificaciones sobre los próximos eventos de mantenimiento mediante varios métodos. Con la información de las notificaciones, puedes determinar el período en el que puedes iniciar un evento de mantenimiento de forma manual.
Verifica la información de la notificación
Puedes encontrar las notificaciones de eventos de mantenimiento de una de las siguientes maneras:
Si la notificación sobre un evento de mantenimiento del host contiene canReschedule=True y maintenanceStatus=Pending, tienes la opción de iniciar el mantenimiento en el momento que elijas o esperar a que se realice el evento de mantenimiento en el momento especificado por windowStartTime.
Si no hay una notificación y, luego, intentas iniciar un evento de mantenimiento de forma manual, se mostrará el siguiente mensaje:
There is no reschedulable upcoming maintenance.
Esto indica que no se programó ningún evento de mantenimiento y que no es necesario realizar ninguna acción.
Inicia el evento de mantenimiento
Puedes iniciar el mantenimiento del host en el momento que elijas, en lugar de esperar a la hora programada. Usa Google Cloud CLI o REST para activar el evento de mantenimiento, que luego se inicia de inmediato.
gcloud
Para iniciar un evento de mantenimiento, usa el
compute instances perform-maintenance comando.
El mantenimiento del host comienza de inmediato después de ingresar el comando.
gcloud compute instances perform-maintenance INSTANCE_NAME \
--zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAME: El nombre de la instancia de procesamiento.ZONE: La zona en la que reside la instancia.
La respuesta es similar al ejemplo a continuación:
resourceStatus:
upcomingMaintenance:
canReschedule: false
latestWindowStartTime: '2025-01-15T19:57:17Z'
maintenanceStatus: ONGOING
type: SCHEDULED
windowEndTime: '2025-01-15T23:57:11Z'
windowStartTime: '2025-01-15T19:57:16Z'
En la respuesta, canReschedule se establece en false y maintenanceStatus se establece en ONGOING, lo que indica que la operación de mantenimiento del host está en curso.
REST
Para iniciar un evento de mantenimiento, crea una POST solicitud con el
instances.performMaintenance método.
POST: https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME/performMaintenance
Reemplaza lo siguiente:
PROJECT_NAME: El nombre del proyectoZONE: La zona en la que reside la instancia de procesamientoINSTANCE_NAME: El nombre de la instancia
La respuesta es similar a la que se muestra a continuación:
upcomingMaintenance:{
"canReschedule":false
"latestWindowStartTime": "2023-12-01T19:00:01Z"
"maintenanceStatus":"ONGOING"
"type":"SCHEDULED"
"windowEndTime": "2023-12-01T22:00:00Z"
"windowStartTime": "2023-12-01T19:00:00Z"
}
En la respuesta, canReschedule se establece en false y maintenanceStatus se establece en ONGOING, lo que indica que la operación de mantenimiento del host está en curso.
¿Qué sigue?
- Aprende a simular un evento de mantenimiento de host.
- Obtén información para obtener avisos de migración en vivo.
- Obtén información para configurar alertas para las notificaciones de mantenimiento del host.