Inicia un evento de mantenimiento del host de forma manual

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:

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

    1. Instala la Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:

      gcloud init

      Si 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 proyecto
  • ZONE: La zona en la que reside la instancia de procesamiento
  • INSTANCE_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?