Configura ambienti altamente resilienti

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina descrive come configurare Cloud Composer a elevata resilienza ambienti cloud-native.

Informazioni sulla resilienza per gli errori a livello di zona in Cloud Composer

Gli ambienti Cloud Composer a elevata resilienza utilizzano la ridondanza integrata e i meccanismi di failover che riducono la suscettibilità dell'ambiente e single point of failure.

Ad esempio, un'interruzione a livello di zona interrompe le attività Airflow eseguite in una specifica zona di destinazione. In seguito, un ambiente altamente resiliente si riprende, riavvia la sua componenti interessati in una zona diversa e passa il database a una in una zona secondaria. Di conseguenza, le attività Airflow non riuscite possono essere riprogrammate riavviato da Airflow, conservando allo stesso tempo la cronologia del DAG corse e altre impostazioni.

Un ambiente altamente resiliente viene eseguito in almeno due zone di un ambiente selezionato regione. Cloud Composer distribuisce automaticamente i componenti del tuo tra le zone.

Puoi utilizzare ambienti Cloud Composer altamente resilienti i processi aziendali critici.

Informazioni sul database ad alta disponibilità del tuo ambiente

Negli ambienti Cloud Composer a disponibilità elevata, Cloud SQL che archivia il database dell'ambiente eseguito modalità alta disponibilità. Un deployment di Cloud SQL l'istanza configurata per l'alta disponibilità è chiamata anche istanza regionale e si trova in una zona principale e secondaria all'interno della regione configurata. All'interno di un'istanza a livello di regione, la configurazione è composta da un'istanza principale e un'istanza in standby.

In caso di interruzione, l'istanza Cloud SQL del tuo ambiente esegue il failover automatico del database nella configurazione Cloud SQL in standby in esecuzione in un'istanza Compute Engine. Non è necessario eseguire azioni aggiuntive nel nell'ambiente Cloud Composer. Quando la zona principale è operativa di nuovo, l'ambiente torna ad avere due zone (principale e secondaria). In alcuni casi le zone primarie e secondarie possono essere scambiate. La L'istanza Cloud SQL in modalità ad alta disponibilità utilizza lo stesso IP dopo un failover.

Informazioni sui componenti Airflow ad alta disponibilità

Gli ambienti Cloud Composer a disponibilità elevata eseguono Airflow distribuiti tra zone.

Il tuo ambiente esegue sempre esattamente due scheduler Airflow, due server web, e almeno due (ma non più di dieci) triggerer se gli attivatori sono abilitati. Queste coppie di vengono eseguiti in zone separate. Il numero minimo di worker è impostato su due, e il cluster del tuo ambiente distribuisce le istanze worker tra le zone. Nella a livello di zona, le istanze worker interessate vengono riprogrammate zona diversa.

Per ulteriori informazioni sull'architettura degli ambienti altamente resilienti, consulta Architettura dell'ambiente altamente resiliente.

Prima di iniziare

  • Sono disponibili ambienti altamente resilienti solo negli ambienti IP privati.

  • Vengono offerti ambienti altamente resilienti con un addebito incrementale rispetto ai in ambienti regolari.

  • In Cloud Composer sono disponibili ambienti altamente resilienti versione 2.2.0 e successive.

  • Se vuoi aggiornare un ambiente standard trasformandolo in un ambiente altamente resiliente, per assicurarti che soddisfi i seguenti requisiti di configurazione. Se ambiente non soddisfa questi requisiti, puoi aggiornare i suoi parametri di scalabilità e prestazioni.

    • Il numero minimo di worker di Airflow è 2 o più.
    • Il numero degli scheduler Airflow è esattamente 2.
    • Se utilizzi operatori decriptabili nei DAG, e almeno 2 trigger.

Crea un ambiente altamente resiliente

Per creare un ambiente altamente resiliente, abilitare la modalità ad alta resilienza quando crei un completamente gestito di Google Cloud.

Aggiorna un ambiente standard alla modalità ad alta resilienza

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

  3. Seleziona la scheda Configurazione dell'ambiente.

  4. Nella sezione Modalità di resilienza, fai clic su Modifica.

  5. Seleziona Alta resilienza e fai clic su Salva.

gcloud

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

API

  1. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica Maschera config.resilienceMode.

    2. Nel corpo della richiesta, specifica HIGH_RESILIENCE per passare al livello alto modalità di resilienza.

Esempio:

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

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

Terraform

Il campo resilience_mode nel blocco config specifica la resilienza . Per utilizzare la modalità ad alta resilienza, imposta questo valore su HIGH_RESILIENCE.

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

  config {

    resilience_mode = "HIGH_RESILIENCE"

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

Esempio:

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

  config {

    resilience_mode = "HIGH_RESILIENCE"

}

Cambiare un ambiente altamente resiliente alla modalità di resilienza standard

Puoi passare alla modalità di resilienza standard del tuo ambiente in qualsiasi momento. Questo operazione:

  • Riduce a 1 il numero di server web nel tuo ambiente.
  • Disattiva la modalità alta disponibilità del tuo del database Airflow dell'ambiente.
  • Non modifica le impostazioni per il numero minimo di worker Airflow, scheduler o triggerer.

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

  3. Seleziona la scheda Configurazione dell'ambiente.

  4. Nella sezione Modalità di resilienza, fai clic su Modifica.

  5. Seleziona Resilienza standard (impostazione predefinita) e fai clic su Salva.

gcloud

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome del tuo ambiente Cloud Composer
  • LOCATION: la regione in cui si trova l'ambiente.

API

  1. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica Maschera config.resilienceMode.

    2. Nel corpo della richiesta, specifica RESILIENCE_MODE_UNSPECIFIED per effettuare il passaggio alla modalità di resilienza standard.

Esempio:

// 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

Il campo resilience_mode nel blocco config specifica la resilienza . Per utilizzare la modalità di resilienza standard, imposta questo valore su STANDARD_RESILIENCE.

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

  config {

    resilience_mode = "STANDARD_RESILIENCE"

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.

Esempio:

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

  config {

    resilience_mode = "STANDARD_RESILIENCE"

}

Controlla se il tuo ambiente è in modalità ad alta resilienza

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

  3. Seleziona la scheda Configurazione dell'ambiente.

  4. Nella sezione Modalità di resilienza, visualizza la modalità di resilienza del tuo completamente gestito di Google Cloud.

gcloud

Per verificare se nel tuo ambiente è abilitata la modalità ad alta resilienza, esegui la dopo il comando Google Cloud CLI. Il valore True indica che sia abilitata nel tuo ambiente.

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

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome del tuo ambiente Cloud Composer
  • LOCATION: la regione in cui si trova l'ambiente.

Passaggi successivi