Configura entornos de alta resiliencia

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

En esta página, se describe cómo configurar Cloud Composer de alta resiliencia entornos de prueba.

Acerca de la resiliencia para fallas zonales en Cloud Composer

Los entornos de Cloud Composer de alta resiliencia usan redundancia integrada y de conmutación por error que reducen la susceptibilidad del entorno a fallas y las interrupciones de punto único de fallo.

Por ejemplo, una interrupción zonal interrumpe las tareas de Airflow que se ejecutan en un zona. Luego, un entorno altamente resiliente se recupera y reinicia sus componentes afectados en una zona diferente y cambia su base de datos a un zona secundaria. Por lo tanto, las tareas fallidas de Airflow se pueden reprogramar reiniciados por Airflow, mientras que, al mismo tiempo, se preserva el historial del DAG y otros parámetros de configuración.

Un entorno de alta resiliencia se ejecuta en al menos dos zonas de un región. Cloud Composer distribuye automáticamente los componentes de tu entre zonas.

Puedes usar entornos de Cloud Composer de alta resiliencia procesos empresariales esenciales.

Acerca de la base de datos con alta disponibilidad de tu entorno

En entornos de Cloud Composer con alta disponibilidad, Cloud SQL que almacena la base de datos de tu entorno se ejecuta en la modo de alta disponibilidad. Cloud SQL instancia configurada para alta disponibilidad también se denomina instancia regional y se encuentra en una zona primaria y secundaria dentro de la región configurada. En una instancia regional, la configuración se compone de una instancia principal y una instancia en espera.

En caso de interrupción, la instancia de Cloud SQL de tu entorno realiza la conmutación por error automática de la base de datos al servicio de Cloud SQL en espera. instancia. No es necesario que realices ninguna acción adicional en tu entorno de Cloud Composer. Una vez que la zona principal está operativa de nuevo, el entorno vuelve a tener dos zonas (principal y secundaria). En algunos casos, las zonas principal y secundaria se pueden intercambiar. El La instancia de Cloud SQL en modo de alta disponibilidad usa la misma IP después de una conmutación por error.

Acerca de los componentes de Airflow con alta disponibilidad

Los entornos de Cloud Composer con alta disponibilidad ejecutan Airflow componentes que se distribuyen entre zonas.

Tu entorno siempre ejecuta exactamente dos programadores de Airflow, dos servidores web y al menos dos (pero no más de diez) activadores si están habilitados los activadores. Estos pares de componentes se ejecutan en zonas separadas. La cantidad mínima de trabajadores se establece en dos, y el clúster de tu entorno distribuye instancias de trabajador entre zonas. En de interrupción zonal, las instancias de trabajador afectadas se reprograman de una zona diferente.

Para obtener más información sobre la arquitectura de entornos de alta resiliencia, consulta Arquitectura del entorno de alta resiliencia.

Antes de comenzar

  • Hay entornos de alta resiliencia disponibles solo en entornos de IP privada.

  • Se ofrecen entornos de alta resiliencia con un cargo incremental, en comparación con entornos normales.

  • Los entornos de alta resiliencia están disponibles en Cloud Composer versión 2.2.0 y posteriores.

  • Si deseas actualizar un entorno estándar a uno muy resiliente, asegúrate de que cumple con los siguientes requisitos de configuración. Si si tu entorno no cumple con estos requisitos, Actualizar la escala y los parámetros de rendimiento

    • La cantidad mínima de trabajadores de Airflow es 2 o más.
    • La cantidad de programadores de Airflow es exactamente 2.
    • Si usas operadores diferibles en tus DAG, luego, al menos 2 activadores.

Crea un entorno de alta resiliencia

Para crear un entorno altamente resiliente, habilitarás el modo de resiliencia alta cuando crees un en un entorno de nube.

Actualiza un entorno estándar al modo de alta resiliencia

Console

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

    Ir a Entornos

  2. En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.

  3. Selecciona la pestaña Configuración del entorno.

  4. En la sección Modo de resiliencia, haz clic en Editar.

  5. Selecciona Resiliencia alta y haz clic en Guardar.

gcloud

  gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --enable-high-resilience

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME: Es el nombre de tu entorno.
  • LOCATION: Es la región en la que se encuentra el entorno.

API

  1. Realiza una solicitud a la API de environments.patch.

  2. En esta solicitud, realiza lo siguiente:

    1. En el parámetro updateMask, especifica la Máscara de config.resilienceMode.

    2. En el cuerpo de la solicitud, especifica HIGH_RESILIENCE para cambiar al valor alto. el modo de resiliencia.

Ejemplo:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.resilienceMode

{
 "config": {
   "resilience_mode": { "HIGH_RESILIENCE" }
   }
 }

Terraform

El campo resilience_mode en el bloque config especifica la resiliencia. . Para usar el modo de resiliencia alta, establece este valor en HIGH_RESILIENCE.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    resilience_mode = "HIGH_RESILIENCE"

  }
}

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME: Es el nombre de tu entorno.
  • LOCATION: Es la región en la que se encuentra el entorno.

Ejemplo:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    resilience_mode = "HIGH_RESILIENCE"

}

Cambia un entorno de alta resiliencia al modo de resiliencia estándar

Puedes cambiar tu entorno al modo de resiliencia estándar en cualquier momento. Esta operación:

  • Reduce la cantidad de servidores web en tu entorno a 1.
  • Desactiva el modo de alta disponibilidad de tu de la base de datos de Airflow de tu entorno.
  • No cambia la configuración de la cantidad mínima de trabajadores de Airflow, programadores o activadores.

Console

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

    Ir a Entornos

  2. En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.

  3. Selecciona la pestaña Configuración del entorno.

  4. En la sección Modo de resiliencia, haz clic en Editar.

  5. Selecciona Resiliencia estándar (predeterminada) y haz clic en Guardar.

gcloud

  gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --disable-high-resilience

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME: Es el nombre de tu entorno de Cloud Composer.
  • LOCATION: Es la región en la que se encuentra el entorno.

API

  1. Realiza una solicitud a la API de environments.patch.

  2. En esta solicitud, realiza lo siguiente:

    1. En el parámetro updateMask, especifica la Máscara de config.resilienceMode.

    2. En el cuerpo de la solicitud, especifica RESILIENCE_MODE_UNSPECIFIED para cambiar al modo de resiliencia estándar.

Ejemplo:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.resilienceMode

{
 "config": {
   "resilience_mode": { "RESILIENCE_MODE_UNSPECIFIED" }
   }
 }

Terraform

El campo resilience_mode en el bloque config especifica la resiliencia. . Para usar el modo de resiliencia estándar, establece este valor en STANDARD_RESILIENCE.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    resilience_mode = "STANDARD_RESILIENCE"

  }
}

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME: Es el nombre de tu entorno.
  • LOCATION: Es la región en la que se encuentra el entorno.

Ejemplo:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    resilience_mode = "STANDARD_RESILIENCE"

}

Verifica si tu entorno se ejecuta en el modo de alta resiliencia

Console

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

    Ir a Entornos

  2. En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.

  3. Selecciona la pestaña Configuración del entorno.

  4. En la sección Modo de resiliencia, consulta el modo de resiliencia de tus en un entorno de nube.

gcloud

Para verificar si el modo de resiliencia alta está habilitado en tu entorno, ejecuta el comando siguiente comando de Google Cloud CLI. El valor de True significa que un valor alto el modo de resiliencia debe estar habilitado en tu entorno.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.resilienceMode)"

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME: Es el nombre de tu entorno de Cloud Composer.
  • LOCATION: Es la región en la que se encuentra el entorno.

¿Qué sigue?