Aggiorna gli ambienti Cloud Composer

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Questa pagina spiega come aggiornare un ambiente.

Informazioni sulle operazioni di aggiornamento

Quando modifichi i parametri dell'ambiente, ad esempio specificando nuovi parametri di scalabilità e prestazioni o installando pacchetti PyPI personalizzati, l'ambiente viene aggiornato.

Al termine di questa operazione, le modifiche diventano disponibili nell'ambiente.

Per un singolo ambiente Cloud Composer, puoi avviare una sola operazione di aggiornamento alla volta. Devi attendere il completamento di un'operazione di aggiornamento prima di avviare un'altra operazione dell'ambiente.

Limiti di CPU dell'attivatore

Cloud Composer nella versione 2.4.4 introduce un approccio di scalabilità delle prestazioni diverso per il componente di attivazione di Airflow, che si applica a tutte le versioni di Cloud Composer 2.

Prima della versione 2.4.4, gli ambienti Cloud Composer potevano utilizzare un massimo di 1 o 2 attivatori. Dopo la modifica, puoi avere fino a 10 attivatori per ambiente, ma ogni attivatore è limitato a un massimo di 1 vCPU.

Le operazioni di aggiornamento dell'ambiente non riescono se l'ambiente è configurato con più di 1 vCPU per attivatore. Devi modificare la configurazione in modo che rispetti il limite di 1 vCPU per eseguire gli aggiornamenti su altri componenti.

Per ulteriori informazioni, vedi:

In che modo gli aggiornamenti influiscono sulle attività Airflow in esecuzione

Quando esegui un'operazione di aggiornamento, gli scheduler e i worker di Airflow nel tuo ambiente potrebbero richiedere un riavvio. In questo caso, tutte le attività attualmente in esecuzione vengono terminate. Al termine dell'operazione di aggiornamento, Airflow pianifica il nuovo tentativo di esecuzione di queste attività, a seconda della configurazione dei nuovi tentativi per i DAG.

Le seguenti modifiche causano la terminazione delle attività Airflow:

  • Eseguire l'upgrade dell'ambiente a una nuova versione.
  • Aggiungere, modificare o eliminare pacchetti PyPI personalizzati.
  • Modificare le variabili di ambiente di Cloud Composer.
  • Aggiungere o rimuovere gli override delle opzioni di configurazione di Airflow o modificarne i valori.
  • Modificare la CPU, la memoria o lo spazio di archiviazione dei worker di Airflow.
  • Ridurre il numero massimo di worker di Airflow, se il nuovo valore è inferiore al numero di worker attualmente in esecuzione. Ad esempio, se un ambiente esegue attualmente tre worker e il numero massimo viene ridotto a due.

  • Modificare la modalità di resilienza dell'ambiente.

Le seguenti modifiche non causano la terminazione delle attività Airflow:

  • Creare, aggiornare o eliminare un DAG (non un'operazione di aggiornamento).
  • Mettere in pausa o riattivare i DAG (non un'operazione di aggiornamento).
  • Modificare le variabili di Airflow (non un'operazione di aggiornamento).
  • Modificare le connessioni Airflow (non un'operazione di aggiornamento).
  • Abilitare o disabilitare l'integrazione della derivazione dei dati di Knowledge Catalog.
  • Modificare le dimensioni dell'ambiente.
  • Modificare il numero di scheduler.
  • Modificare la CPU, la memoria o lo spazio di archiviazione degli scheduler di Airflow.
  • Modificare il numero di attivatori.
  • Modificare la CPU, la memoria o lo spazio di archiviazione degli attivatori di Airflow.
  • Modificare la CPU, la memoria o lo spazio di archiviazione del server web di Airflow.
  • Aumentare o diminuire il numero minimo di worker.
  • Ridurre il numero massimo di worker di Airflow. Ad esempio, se un ambiente esegue attualmente due worker e il numero massimo viene ridotto a tre.
  • Modificare i periodi di manutenzione.
  • Modificare le impostazioni degli snapshot pianificati.
  • Modificare le etichette dell'ambiente.

Aggiornare con Terraform

Esegui terraform plan prima di terraform apply per verificare se Terraform crea un nuovo ambiente anziché aggiornarlo.

Prima di iniziare

Aggiornare gli ambienti

Per ulteriori informazioni sull'aggiornamento dell'ambiente, consulta le altre pagine della documentazione relative a operazioni di aggiornamento specifiche. Ad esempio:

Visualizzare i dettagli dell'ambiente

Console

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

    Vai ad Ambienti

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

gcloud

Esegui il seguente comando gcloud:

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION

Sostituisci:

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

API

Crea una richiesta API environments.get.

Esempio:

GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment

Terraform

Esegui il comando terraform state show per la risorsa del tuo ambiente.

Il nome della risorsa Terraform del tuo ambiente potrebbe essere diverso dal nome dell'ambiente.

terraform state show google_composer_environment.RESOURCE_NAME

Sostituisci:

  • RESOURCE_NAME con il nome della risorsa del tuo ambiente.

Eseguire il rollback delle modifiche di aggiornamento

In alcune rare situazioni, un'operazione di aggiornamento potrebbe essere interrotta (ad esempio, a causa di un timeout) e le modifiche richieste potrebbero non essere sottoposte a rollback in tutti i componenti dell'ambiente (ad esempio, il server web di Airflow).

Ad esempio, un'operazione di aggiornamento potrebbe installare o rimuovere moduli PyPI aggiuntivi, ridefinire o definire una nuova variabile di ambiente Airflow o Cloud Composer oppure modificare alcuni parametri relativi ad Airflow.

Questa situazione potrebbe verificarsi se viene attivata un'operazione di aggiornamento mentre sono in corso altre operazioni, ad esempio la scalabilità automatica del cluster Cloud Composer o un'operazione di manutenzione.

In questo caso, ti consigliamo di ripetere l'operazione.

Durata delle operazioni di aggiornamento o upgrade

La durata delle operazioni di aggiornamento e upgrade è influenzata dai seguenti fattori:

  • La maggior parte delle operazioni di aggiornamento o upgrade richiede il riavvio dei componenti di Airflow, come scheduler, worker e server web di Airflow. Dopo il riavvio di un componente, è necessario inizializzarlo. Durante l'inizializzazione, gli scheduler e i worker di Airflow scaricano i contenuti delle cartelle /dags e /plugins dal bucket dell'ambiente. Il processo di sincronizzazione dei file con gli scheduler e i worker di Airflow non è istantaneo e dipende dalla dimensione totale e dal numero di tutti gli oggetti in queste cartelle.

    Ti consigliamo di conservare solo i file DAG e dei plug-in nelle cartelle /dags e /plugins (rispettivamente) e di rimuovere tutti gli altri file. Una quantità eccessiva di dati nelle cartelle /dags e /plugins potrebbe rallentare l'inizializzazione dei componenti di Airflow e, in alcuni casi, renderla impossibile.

    Ti consigliamo di conservare meno di 30 MB di dati nelle cartelle /dags e /plugins e di non superare assolutamente la dimensione dei dati di 100 MB. Per ulteriori informazioni, vedi anche Gestire un numero elevato di DAG e plug-in

  • La dimensione del database Airflow può aumentare notevolmente il tempo delle operazioni di upgrade. Ti consigliamo di mantenere la dimensione del database Airflow del tuo ambiente.

Passaggi successivi