Administra operaciones de larga duración

En esta página, se describe cómo verificar y administrar operaciones de larga duración en el Administrador de certificados.

Cuando una solicitud de mutación en el Administrador de certificados, como crear, actualizar o borrar un recurso, no falla de inmediato, la API devuelve una operación de larga duración (LRO). Estas operaciones hacen un seguimiento del estado de las tareas de procesamiento que tardan más en completarse. De forma predeterminada, los comandos de mutación de gcloud esperan a que finalice la operación, a menos que especifiques la marca --async.

Puedes usar la colección projects.locations.operations para verificar el estado de las operaciones.

Permisos necesarios

Para administrar operaciones de larga duración en el proyecto de destino, debes tener el permiso que corresponda a la tarea que deseas realizar:

  • certificatemanager.operations.get: Recupera los detalles de una operación específica.
  • certificatemanager.operations.list: Enumera todas las operaciones en una ubicación determinada.
  • certificatemanager.operations.delete: Borra un recurso de operación completado (solo para la API).

Para obtener más información sobre los roles y los permisos, consulta Roles y permisos.

Obtén detalles sobre una operación de larga duración

Cuando realizas una llamada que inicia una operación, como crear un certificado, la respuesta contiene un nombre de operación con el formato projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID.

Para verificar si la operación se completó, solicita detalles sobre la operación de destino. Si la respuesta contiene "done": false o no incluye el campo "done", la operación aún está en curso. Vuelve a verificar el estado hasta que la respuesta muestre "done": true.

gcloud

Para describir una operación de larga duración, usa el comando certificate-manager operations describe:

gcloud certificate-manager operations describe OPERATION_ID \
    --location="LOCATION"

Reemplaza lo siguiente:

  • OPERATION_ID: Es el ID de la operación.
  • LOCATION: Es la ubicación de destino de Google Cloud . La ubicación predeterminada es global.

API

Para obtener detalles sobre una operación de larga duración, envía una solicitud GET al método projects.locations.operations.get:

GET https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • LOCATION: Es la ubicación de segmentación Google Cloud . La ubicación predeterminada es global.
  • OPERATION_ID: Es el ID de la operación.

Enumerar las operaciones de larga duración

Puedes enumerar las operaciones para encontrar los IDs de operación y supervisar las modificaciones activas en tu proyecto.

gcloud

Para enumerar las operaciones en una ubicación determinada, usa el comando certificate-manager operations list:

gcloud certificate-manager operations list \
    --location="LOCATION"

Reemplaza lo siguiente:

  • LOCATION: Es la ubicación de destino de Google Cloud . La ubicación predeterminada es global.

API

Para enumerar las operaciones en una ubicación, realiza una solicitud GET al método projects.locations.operations.list:

GET https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • LOCATION: Es la ubicación de destino de Google Cloud . La ubicación predeterminada es global.

Borra una operación de larga duración completada

Puedes borrar un recurso de operación completado si ya no necesitas el resultado. Si borras una operación completada, solo se quitará el registro de la operación y no se cancelarán ni revertirán los cambios que se realizaron en ella.

No puedes borrar operaciones con los comandos de gcloud. En su lugar, usa la API de REST.

API

Para borrar una operación completada, envía una solicitud DELETE al método projects.locations.operations.delete:

DELETE https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • LOCATION: Es la ubicación de destino de Google Cloud . La ubicación predeterminada es global.
  • OPERATION_ID: Es el ID de la operación.

Política de retención

El Administrador de certificados conserva y borra automáticamente las LRO completadas según las siguientes reglas, en orden de prioridad:

  1. Menos de 1 hora de antigüedad: Si una operación se completó hace menos de 1 hora, el Administrador de certificados la conserva.
  2. Más de 1 semana de antigüedad: Si una operación se completó hace más de 1 semana, el Administrador de certificados la borra.
  3. Límite máximo: Si una operación se completó entre 1 hora y 1 semana atrás, el Administrador de certificados conserva hasta 5,000 de las operaciones completadas más recientes en cada proyecto y borra las operaciones completadas más antiguas.

En los siguientes ejemplos, se muestra cómo se aplican estas reglas:

  • Si tu proyecto tiene 10,000 operaciones completadas que tienen menos de 1 hora de antigüedad, el Administrador de certificados conserva las 10,000 operaciones.
  • Si tu proyecto tiene 1,000 operaciones completadas que tienen más de 1 semana de antigüedad, el Administrador de certificados borra las 1,000 operaciones.
  • Si tu proyecto tiene 10,000 operaciones completadas que tienen entre 1 hora y 1 semana de antigüedad, el Administrador de certificados conserva solo las 5,000 operaciones más recientes.