Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Questa pagina spiega come aggiornare un ambiente.
Informazioni sulle operazioni di aggiornamento
Quando modifichi i parametri dell'ambiente, ad esempio specificando nuovi e parametri delle prestazioni o installando pacchetti PyPI personalizzati, gli aggiornamenti dell'ambiente.
Una volta completata l'operazione, le modifiche diventano disponibili nel tuo completamente gestito di Google Cloud.
Per un singolo ambiente Cloud Composer, puoi avviarne solo uno un'operazione di aggiornamento alla volta. Devi attendere il completamento di un'operazione di aggiornamento prima di avviare un'altra operazione nell'ambiente.
Limiti della CPU dell'attivatore
Cloud Composer nella versione 2.4.4 introduce prestazioni diverse approccio di scalabilità per l'attivatore Airflow che si applica a tutte le versioni di Cloud Composer 2.
Prima della versione 2.4.4, gli ambienti Cloud Composer potevano utilizza al massimo 1 o 2 triggerer. Dopo la modifica, puoi avere fino a 10 triggerer per ambiente, ma ogni triggerer è limitato a un massimo di 1 vCPU.
Le operazioni di aggiornamento dell'ambiente non vanno a buon fine se l'ambiente è configurato con più di 1 vCPU per attivatore. Devi modificare la configurazione in modo da rispettare il limite di 1 vCPU per eseguire aggiornamenti su altri componenti.
Per ulteriori informazioni, vedi:
- Configurare l'allocazione delle risorse dell'attivatore
- Regola il numero dell'attivatore
- Risolvere i problemi di upgrade dell'ambiente: CPU dell'attivatore superata
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. Dopo l'operazione di aggiornamento, completate, Airflow pianifica queste attività per un nuovo tentativo, a seconda di come e configurare i nuovi tentativi per i DAG.
Le seguenti modifiche causano la terminazione delle attività Airflow:
- Esegui l'upgrade dell'ambiente a una nuova versione.
- Aggiunta, modifica o eliminazione di pacchetti PyPI personalizzati.
- Modifica delle variabili di ambiente Cloud Composer.
- Aggiunta o rimozione degli override delle opzioni di configurazione di Airflow o modifica dei relativi e i relativi valori.
- Modifica dei worker di Airflow di CPU, memoria o spazio di archiviazione.
- Riduzione del numero massimo di worker Airflow, se il nuovo valore è inferiore al numero di worker attualmente in esecuzione. Ad esempio, se un ambiente attualmente esegue tre worker e il numero massimo viene ridotto a due.
- Modifica della modalità di resilienza dell'ambiente.
Le seguenti modifiche non causano l'interruzione dell'attività Airflow:
- Creazione, aggiornamento o eliminazione di un DAG (non un'operazione di aggiornamento).
- Mettere in pausa o riattivare i DAG (non un'operazione di aggiornamento).
- Modifica delle variabili Airflow (non un'operazione di aggiornamento).
- Modifica delle connessioni Airflow (non un'operazione di aggiornamento).
- Abilitazione o disabilitazione dell'integrazione della derivazione dei dati Dataplex.
- Modifica delle dimensioni dell'ambiente.
- Modifica del numero di pianificatori.
- Modifica della CPU, della memoria o dello spazio di archiviazione degli scheduler di Airflow.
- Modifica del numero di attivatori.
- Modifica degli attivatori di Airflow di CPU, memoria o spazio di archiviazione.
- Modifica della CPU, della memoria o dello spazio di archiviazione del server web Airflow.
- Aumentare o diminuire il numero minimo di worker.
- Riduzione del numero massimo di worker Airflow. Ad esempio, se attualmente esegue due worker e il massimo è ridotto a tre.
- Modifica dei periodi di manutenzione.
- Modifica delle impostazioni degli snapshot pianificati.
- Modifica delle etichette dell'ambiente.
Aggiornamento con Terraform
Esegui terraform plan
prima di terraform apply
per verificare se Terraform crea un nuovo ambiente anziché aggiornarlo.
Prima di iniziare
Verifica che il tuo account, l'account di servizio del tuo ambiente e l'account agente di servizio Cloud Composer nel tuo progetto dispongano delle autorizzazioni necessarie:
Il tuo account deve avere un ruolo può attivare operazioni di aggiornamento dell'ambiente.
L'account di servizio del tuo ambiente deve avere un ruolo che disponi di autorizzazioni sufficienti per eseguire operazioni di aggiornamento.
L'account dell'agente di servizio Cloud Composer deve avere autorizzazioni per creare associazioni tra tra l'account di servizio dell'ambiente e l'account di servizio Kubernetes per il cluster del tuo ambiente.
Il comando
gcloud composer environments update
termina al termine dell'operazione. Puoi usare il flag--async
per evitare di attendere l'operazione da completare.
Aggiorna gli ambienti
Per ulteriori informazioni sull'aggiornamento dell'ambiente, consulta le altre pagine della documentazione relative a operazioni di aggiornamento specifiche. Ad esempio:
- Esegui l'override delle opzioni di configurazione di Airflow
- Impostare le variabili di ambiente
- Installa le dipendenze Python
- Scala gli ambienti
- Configurare le reti autorizzate
- Aggiorna gli ambienti per una maggiore resilienza
Visualizza i dettagli dell'ambiente
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome del tuo ambiente. Si apre la pagina Dettagli ambiente.
gcloud
Esegui questo 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 del tuo ambiente.
terraform state show google_composer_environment.RESOURCE_NAME
Sostituisci:
RESOURCE_NAME
con il nome della risorsa del tuo ambiente.
Rollback delle modifiche all'aggiornamento in corso
In alcuni rari casi, un'operazione di aggiornamento potrebbe essere interrotta (ad esempio a causa di un timeout) e le modifiche richieste potrebbero non essere annullate in tutti i componenti dell'ambiente (ad esempio il web server Airflow).
Ad esempio, un'operazione di aggiornamento potrebbe includere l'installazione o la rimozione di Moduli PyPI, ridefinizione o definizione di un nuovo Airflow o Cloud Composer o la modifica di alcuni parametri correlati ad Airflow.
Questa situazione potrebbe verificarsi se un'operazione di aggiornamento viene attivata quando sono in corso altre operazioni, ad esempio l'autoscaling del cluster Cloud Composer o un'operazione di manutenzione.
In questa situazione, ti consigliamo di ripetere l'operazione.
Durata delle operazioni di aggiornamento o upgrade
La maggior parte delle operazioni di aggiornamento o upgrade richiede il riavvio dei componenti Airflow come scheduler, worker e server web di Airflow.
Una volta riavviato, un componente deve essere inizializzato. Durante l'inizializzazione, gli scheduler e i worker di Airflow scaricano i contenuti delle cartelle /dags
e /plugins
dal bucket dell'ambiente. La procedura di sincronizzazione
delle cartelle con gli pianificatori e i worker Airflow non è istantanea e dipende dalle
dimensioni totali e dal numero di tutti gli oggetti in queste cartelle.
Consigliamo di conservare solo i file DAG e plug-in in /dags
e /plugins
le cartelle (rispettivamente) e rimuovi tutti gli altri file. Troppi dati
nelle cartelle /dags
e /plugins
potrebbe rallentare l'inizializzazione di Airflow
componenti e, in alcuni casi, l'inizializzazione potrebbe non essere possibile.
Ti consigliamo di conservare meno di 30 MB di dati nelle cartelle /dags
e /plugins
e di non superare assolutamente i 100 MB di dati.
Per ulteriori informazioni, consulta anche: