Especifica los períodos de mantenimiento de los entornos

En esta página, se explica cómo definir períodos de mantenimiento para tus entornos.

Los entornos de Cloud Composer se compilan sobre otros servicios de Google Cloud. Algunos de estos servicios requieren que se realicen operaciones de mantenimiento, por ejemplo, cuando se aplica un parche a la configuración de un recurso existente. A menudo, las operaciones de mantenimiento son necesarias para los recursos de GKE y Cloud SQL.

Cómo usar períodos de mantenimiento

Las operaciones de mantenimiento pueden afectar la ejecución de tus DAG y tareas de Airflow, por lo que recomendamos que hagas lo siguiente:

  1. Define los períodos de mantenimiento para tus entornos de Cloud Composer.

  2. Programa las ejecuciones del DAG fuera de los períodos de mantenimiento especificados con los parámetros start_date y schedule_interval en tus DAG.

Puedes definir períodos de mantenimiento para entornos de Cloud Composer nuevos y existentes. Si no especificas períodos de mantenimiento explícitos, el tiempo para las operaciones de mantenimiento se selecciona automáticamente sin considerar el programa de tus ejecuciones de DAG.

Especifica los períodos de mantenimiento de los entornos nuevos

Console

Para definir períodos de mantenimiento cuando creas un entorno, haz lo siguiente:

  1. En Google Cloud Console, ve a la página Crear entorno.

    Ir a Crear entorno

  2. Expande la sección Herramientas de redes, anulaciones de configuración de Airflow y características adicionales.

  3. En la sección Períodos de mantenimiento, selecciona la casilla de verificación Establecer tiempo personalizado para períodos de mantenimiento.

  4. Configura la Hora de inicio, la Zona horaria, los Días y la Duración, de modo que la hora combinada para el programa especificado. al menos 12 horas en un período progresivo de 7 días. Por ejemplo, un período de 4 horas cada lunes, miércoles y viernes, proporciona la cantidad de tiempo requerida.

  5. Completa todos los demás pasos para crear un entorno.

gcloud

Cuando creas un entorno, los siguientes argumentos definen los parámetros de períodos de mantenimiento:

  • --maintenance-window-start establece la hora de inicio de un período de mantenimiento.
  • --maintenance-window-end establece la hora de finalización de un período de mantenimiento.
  • --maintenance-window-recurrence establece la repetición del período de mantenimiento.
gcloud beta composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    --maintenance-window-start 'DATETIME_START' \
    --maintenance-window-end 'DATETIME_END' \
    --maintenance-window-recurrence 'MAINTENANCE_RECURRENCE'

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME con el nombre del entorno.
  • DATETIME_START con la fecha y hora de inicio en formato de entrada de fecha y hora Solo se usa la hora especificada del día, se ignora la fecha especificada.
  • DATETIME_END con la fecha y hora de finalización en formato de entrada de fecha y hora Solo se usa la hora especificada del día, se ignora la fecha especificada. La fecha y hora especificadas deben ser posteriores a la fecha de inicio.
  • MAINTENANCE_RECURRENCE con una RRULE RFC 5545 para recurrencia de períodos de mantenimiento Cloud Composer admite dos formatos:

    • El formato FREQ=DAILY especifica una recurrencia diaria.
    • El formato FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA especifica una recurrencia en los días de la semana seleccionados.

En el siguiente ejemplo, se especifica un período de mantenimiento de 6 horas entre las 01:00 y las 07:00 (UTC) los domingos, miércoles y sábados. La fecha del 1 de enero de 2021 se ignora.

gcloud beta composer environments create example-environment \
  --location us-central1 \
  --maintenance-window-start '2021-01-01T01:00:00Z' \
  --maintenance-window-end '2021-01-01T07:00:00Z' \
  --maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=SU,WE,SA'

Especifica los períodos de mantenimiento de los entornos existentes

Console

Para definir o cambiar los períodos de mantenimiento de un entorno existente, actualiza el entorno:

  1. En Google Cloud Console, ve a la página Entornos.

Ir a Entornos

  1. Selecciona un entorno para ver los detalles.

  2. Ve a la pestaña Configuración del entorno.

  3. Junto a la entrada Períodos de mantenimiento, haz clic en Editar.

  4. En el cuadro de diálogo Período de mantenimiento, selecciona la casilla de verificación Establecer tiempo personalizado para períodos de mantenimiento.

  5. Configura la Hora de inicio, la Zona horaria, los Días y la Duración, de modo que la hora combinada para el programa especificado. al menos 12 horas en un período progresivo de 7 días. Por ejemplo, un período de 4 horas cada lunes, miércoles y viernes, proporciona la cantidad de tiempo requerida.

  6. Haz clic en Guardar y espera a que se actualice tu entorno.

gcloud

Cuando actualizas un entorno, los siguientes argumentos definen los parámetros de períodos de mantenimiento:

  • --maintenance-window-start establece la hora de inicio de un período de mantenimiento.
  • --maintenance-window-end establece la hora de finalización de un período de mantenimiento.
  • --maintenance-window-recurrence establece la repetición del período de mantenimiento.
gcloud beta composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --maintenance-window-start 'DATETIME_START' \
    --maintenance-window-end 'DATETIME_END' \
    --maintenance-window-recurrence 'MAINTENANCE_RECURRENCE'

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME con el nombre del entorno.
  • DATETIME_START con la fecha y hora de inicio en formato de entrada de fecha y hora Solo se usa la hora especificada del día, se ignora la fecha especificada.
  • DATETIME_END con la fecha y hora de finalización en formato de entrada de fecha y hora Solo se usa la hora especificada del día, se ignora la fecha especificada. La fecha y hora especificadas deben ser posteriores a la fecha de inicio.
  • MAINTENANCE_RECURRENCE con una RRULE RFC 5545 para recurrencia de períodos de mantenimiento Cloud Composer admite dos formatos:

    • El formato FREQ=DAILY especifica una recurrencia diaria.
    • El formato FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA especifica una recurrencia en los días de la semana seleccionados.

En el siguiente ejemplo, se especifica un período de mantenimiento de 6 horas entre las 01:00 y las 07:00 (UTC) los domingos, miércoles y sábados. La fecha del 1 de enero de 2021 se ignora.

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --maintenance-window-start '2021-01-01T01:00:00Z' \
  --maintenance-window-end '2021-01-01T07:00:00Z' \
  --maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=SU,WE,SA'

¿Qué sigue?