Cómo ver el cierre elegante en una instancia de Compute Engine


En este documento, se explica cómo ver los detalles de un cierre elegante en una instancia de Compute Engine. Para obtener más información sobre el cierre elegante, consulta Descripción general del cierre elegante.

Ver los detalles de un cierre elegante te ayuda a supervisar el proceso de cierre elegante o revisar su configuración.

Antes de comenzar

  • Si aún no lo hiciste, configura la autenticación. La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las APIs de Google Cloud . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    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

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. 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

      Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .

Roles obligatorios

Para obtener el permiso que necesitas para ver el cierre elegante de una instancia de procesamiento, pídele a tu administrador que te otorgue el rol de IAM Administrador de instancias de Compute (v1) (roles/compute.instanceAdmin.v1) en tu 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 el permiso compute.instances.get on the project, que se requiere para ver el cierre elegante de una instancia de procesamiento.

También puedes obtener este permiso con roles personalizados o con otros roles predefinidos.

Consulta los detalles de un cierre ordenado

Para ver los detalles de un cierre elegante en una instancia de procesamiento, selecciona una de las siguientes opciones:

Console

  1. En la consola de Google Cloud, ve a la página Instancias de VM.

    Ir a Instancias de VM

  2. En la columna Nombre, haz clic en el nombre de tu instancia.

    Se abrirá la página de detalles de la instancia y se seleccionará la pestaña Detalles.

  3. Para verificar la configuración del cierre ordenado, en la sección Políticas de disponibilidad, verifica el valor del campo Duración máxima del cierre ordenado. Este campo muestra el período de apagado elegante. Si muestra un guion (-), el cierre ordenado está inhabilitado.

  4. Para supervisar un apagado elegante en curso, en la sección Información básica, verifica los siguientes campos:

    • Estado: Este campo muestra el estado de tu instancia. Durante un apagado ordenado, se muestra Detención pendiente y un temporizador de cuenta regresiva que muestra el tiempo restante antes de que finalice el período de apagado ordenado.

    • Estado objetivo: Este campo muestra si Compute Engine detiene (Detenida) o borra (Borrada) la instancia.

gcloud

Para ver los detalles de una instancia y su apagado elegante, usa el comando gcloud beta compute instances describe:

gcloud beta compute instances describe INSTANCE_NAME \
    --zone=ZONE

Reemplaza lo siguiente:

  • INSTANCE_NAME: El nombre de la instancia.

  • ZONE: Es la zona en la que se encuentra la instancia.

Para verificar la configuración de apagado elegante o supervisar un apagado en curso, haz lo siguiente:

  • Para verificar la configuración de apagado elegante en la instancia, consulta el campo scheduling en el resultado:

    ...
    scheduling:
      ...
      gracefulShutdown:
        enabled: true
        maxDuration:
          seconds: 'MAX_DURATION'
      ...
    ...
    

    Este resultado incluye el valor MAX_DURATION, que especifica cuánto dura el período de apagado elegante en segundos. Si no especificaste un período de apagado personalizado cuando habilitaste el apagado elegante en la instancia, Compute Engine omite el campo maxDuration y establece el período de apagado elegante en 10 minutos.

  • Para supervisar el estado de un cierre ordenado en curso, consulta el campo shutdownDetails en el resultado:

    ...
    resourceStatus:
      ...
      shutdownDetails:
        maxDuration:
          seconds: 'MAX_DURATION'
        requestTimestamp: 'REQUEST_TIMESTAMP'
        stopState: STOP_STATE
        targetState: TARGET_STATE
    ...
    

    En esta salida, se incluyen los siguientes valores:

    • MAX_DURATION: Es la duración del período de apagado elegante en segundos. Después de que Compute Engine establece STOP_STATE en STOPPING, borra el campo maxDuration.

    • REQUEST_TIMESTAMP: Es la marca de tiempo en la que comenzó STOP_STATE.

    • STOP_STATE: La fase de detención de la instancia. El valor puede ser uno de los siguientes:

      • PENDING_STOP: Compute Engine inició el apagado elegante. La instancia permanece en este estado hasta que finalices el apagado ordenado de forma manual o se agote el tiempo de espera.

      • STOPPING: Finalizó el cierre elegante, y Compute Engine continúa con la operación de detención o eliminación.

    • TARGET_STATE: Indica si Compute Engine detiene (STOPPED) o borra (DELETED) la instancia.

    Después de que Compute Engine termina de detener la instancia, borra el campo shutdownDetails.

REST

Para ver los detalles de una instancia y su apagado elegante, realiza una solicitud GET al método instances.get beta:

GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto en el que se encuentra la instancia.

  • ZONE: Es la zona en la que se encuentra la instancia.

  • INSTANCE_NAME: El nombre de la instancia.

Para verificar la configuración de apagado elegante o supervisar un apagado en curso, haz una de las siguientes acciones:

  • Para verificar la configuración de apagado elegante en la instancia, consulta el campo scheduling en el resultado:

    {
      ...
      "scheduling": {
        ...
        "gracefulShutdown": {
          "enabled": true,
          "maxDuration": {
            "seconds": "MAX_DURATION"
          }
        }
      },
      ...
    }
    

    Este resultado incluye el valor MAX_DURATION, que especifica cuánto dura el período de apagado elegante en segundos. Si no especificaste un período de apagado personalizado cuando habilitaste el apagado elegante en la instancia, Compute Engine omite el campo maxDuration y establece el período de apagado elegante en 10 minutos.

  • Para supervisar el estado de un cierre ordenado en curso, consulta el campo shutdownDetails en el resultado:

    {
      ...
      "resourceStatus": {
        ...
        "shutdownDetails": {
          "maxDuration": {
            "seconds": "MAX_DURATION"
          },
          "requestTimestamp": "REQUEST_TIMESTAMP",
          "stopState": "STOP_STATE",
          "targetState": "TARGET_STATE"
        }
      },
      ...
    }
    

    En esta salida, se incluyen los siguientes valores:

    • MAX_DURATION: Es la duración del período de apagado elegante en segundos. Después de que Compute Engine establece STOP_STATE en STOPPING, borra el campo maxDuration.

    • REQUEST_TIMESTAMP: Es la marca de tiempo en la que comenzó STOP_STATE.

    • STOP_STATE: La fase de detención de la instancia. El valor puede ser uno de los siguientes:

      • PENDING_STOP: Compute Engine inició el apagado elegante. La instancia permanece en este estado hasta que finalices el apagado ordenado de forma manual o se agote el tiempo de espera.

      • STOPPING: Finalizó el cierre elegante, y Compute Engine continúa con la operación de detención o eliminación.

    • TARGET_STATE: Indica si Compute Engine detiene (STOPPED) o borra (DELETED) la instancia.

    Después de que Compute Engine termina de detener la instancia, borra el campo shutdownDetails.

Servidor de metadatos

  1. Conéctate a la instancia.

  2. Para ver los detalles de un cierre elegante en curso en la instancia, consulta el servidor de metadatos:

    curl "http://metadata.google.internal/computeMetadata/v1/instance/shutdown-details/?recursive=true?alt=json" \-H "Metadata-Flavor: Google"
    

    Si se está realizando un cierre elegante, el resultado es similar al siguiente:

    {
      "maxDuration": "MAX_DURATION",
      "requestTimestamp": "REQUEST_TIMESTAMP",
      "stopState": "STOP_STATE",
      "targetState": "TARGET_STATE"
    }
    

    El resultado incluye los siguientes valores:

    • MAX_DURATION: Es la duración del período de apagado elegante en segundos. Después de que Compute Engine establece STOP_STATE en STOPPING, borra el campo maxDuration.

    • REQUEST_TIMESTAMP: Es la marca de tiempo en la que comenzó STOP_STATE.

    • STOP_STATE: La fase de detención de la instancia. El valor puede ser uno de los siguientes:

      • PENDING_STOP: Compute Engine inició el apagado elegante. La instancia permanece en este estado hasta que finalices el apagado ordenado de forma manual o se agote el tiempo de espera.

      • STOPPING: Finalizó el cierre elegante, y Compute Engine continúa con la operación de detención o eliminación.

    • TARGET_STATE: Indica si Compute Engine detiene (STOPPED) o borra (DELETED) la instancia.

¿Qué sigue?