Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
In questa pagina viene descritto come eseguire l'upgrade dell'ambiente a una nuova Cloud Composer o Airflow completamente gestita.
Informazioni sulle operazioni di upgrade
Puoi eseguire l'upgrade della versione Cloud Composer, la versione Airflow, o entrambe contemporaneamente.
Quando cambi la versione di Airflow o Cloud Composer utilizzata da il tuo ambiente:
Cloud Composer esegue nuovamente il deployment dei componenti dell'ambiente usando nuove versioni delle immagini Cloud Composer.
Cloud Composer applica le modifiche alla configurazione di Airflow, come l'override dei pacchetti PyPI personalizzati o dell'opzione di configurazione Airflow, se prima dell'upgrade.
Cloud Composer aggiorna la connessione
airflow_db
di Airflow a puntano al nuovo database Cloud SQL.
L'upgrade non cambia il modo in cui ti connetti alle risorse nel tuo come l'URL del bucket dell'ambiente o l'ambiente web Airflow o server web.
Limitazioni delle operazioni di upgrade
Le operazioni di upgrade hanno le seguenti limitazioni:
- Non puoi eseguire il downgrade a una versione precedente di Cloud Composer o Airflow completamente gestita.
Nella console Google Cloud, puoi eseguire l'upgrade solo alla versione più recente supportata di Cloud Composer.
In Google Cloud CLI, nell'API o in Terraform, puoi eseguire l'upgrade di un ambiente alle ultime versioni supportate, ovvero tre versioni precedenti Cloud Composer e alle versioni con un upgrade esteso sequenza temporale. Non è possibile eseguire l'upgrade ad altre versioni Cloud Composer, anche se sono ancora supportati e possono essere utilizzati per creare un nuovo ambiente.
La versione a cui esegui l'upgrade deve supportare dell'attuale versione Python.
I limiti di quota dell'API Compute Engine possono impedire gli upgrade. Nella console Google Cloud, vai a IAM e amministrazione > Quote e limiti di sistema e controlla se il La quota dell'API Compute Engine per la CPU non è stata superata. Se la soglia di quota si sta avvicinando, richiedi l'estensione della quota prima Procedendo con l'operazione di upgrade.
- Non puoi eseguire l'upgrade dell'ambiente se il database Airflow contiene e oltre 16 GB di dati. Durante un upgrade, viene visualizzato un avviso viene mostrato se la dimensione del database Airflow è superiore a 16 GB. In questo caso, esegui la manutenzione del database per ridurre la dimensione del database.
Prima di iniziare
Ti consigliamo di creare un nuovo snapshot del per poter ricreare l'ambiente in caso di necessità.
Il tuo account deve avere un ruolo che possa attivare l'upgrade dell'ambiente operazioni. Inoltre, l'account di servizio dell'ambiente deve avere un con autorizzazioni sufficienti per eseguire operazioni di upgrade. Per maggiori informazioni per ulteriori informazioni, consulta Controllo dell'accesso.
Verifica che il tuo ambiente sia aggiornato
Cloud Composer visualizza avvisi quando l'immagine del tuo ambiente si avvicina alla data di fine del supporto completo. Puoi utilizzare questi avvisi per mantenere sempre il tuo ambiente supportato.
![Nella pagina dei dettagli dell'ambiente viene visualizzato un messaggio di deprecazione](https://cloud.google.com/static/composer/docs/images/environment-deprecation-message-composer-2.png?authuser=9&hl=it)
Cloud Composer tiene traccia Versione immagine Cloud Composer su cui si basa il tuo ambiente. Quando si avvicina alla data di fine assistenza, vedrai un avviso nell'elenco degli ambienti e nella Pagina Dettagli ambiente.
Per verificare se il tuo ambiente è aggiornato:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.
Vai alla scheda Configurazione dell'ambiente.
Nel campo Versione immagine, viene visualizzato uno dei seguenti messaggi:
Versione più recente disponibile. L'immagine dell'ambiente è completamente supportata.
Nuova versione disponibile. L'immagine dell'ambiente è completamente supportata e puoi eseguirne l'upgrade a una versione successiva.
Il supporto di questa versione dell'immagine termina tra... Immagine dell'ambiente si avvicina alla fine dell'intero periodo di assistenza.
Questa versione non è supportata a partire da... Il tuo ambiente è passato l'intero periodo di assistenza.
gcloud
Questa funzionalità non è disponibile tramite Google Cloud CLI. Puoi Visualizza gli upgrade disponibili per visualizzare le nuove versioni disponibili.
API
Questa funzionalità non è disponibile tramite l'API. Puoi Visualizza gli upgrade disponibili per visualizzare le nuove versioni disponibili.
Visualizza gli upgrade disponibili
Per visualizzare le versioni di Cloud Composer a cui puoi eseguire l'upgrade:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.
Vai alla scheda Configurazione dell'ambiente e fai clic su Esegui l'upgrade della versione immagine.
Per l'elenco delle versioni disponibili, fai clic sull'icona di Cloud Composer Menu a discesa Versione immagine.
gcloud
gcloud composer environments list-upgrades \
ENVIRONMENT_NAME \
--location LOCATION
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.
Esempio:
gcloud composer environments list-upgrades example-environment \
--location us-central1
API
Puoi visualizzare le versioni disponibili per una località. Per farlo, crea un
Richiesta API imageVersions.list
.
Ad esempio:
// GET https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/imageVersions
Verifica la presenza di conflitti nei pacchetti PyPI prima di eseguire l'upgrade
Puoi verificare se i pacchetti PyPI installati nel tuo ambiente hanno sono in conflitto con pacchetti preinstallati nel nuovo Cloud Composer.
Un controllo riuscito significa che non esistono conflitti nel pacchetto PyPI delle dipendenze tra la versione attuale e quella specificata. Tuttavia, un l'operazione di upgrade potrebbe ancora non riuscire per altri motivi.
Console
Per eseguire un upgrade, verifica il tuo ambiente:
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.
Vai alla scheda Configurazione dell'ambiente, individua la voce Versione immagine e fai clic su Esegui l'upgrade.
Nella finestra di dialogo Upgrade della versione dell'ambiente, in Nell'elenco a discesa Nuova versione, seleziona una versione di Cloud Composer di cui vuoi eseguire l'upgrade.
Nella sezione Compatibilità dei pacchetti PyPI, fai clic su Verifica la presenza di conflitti.
Attendi il completamento della verifica. In caso di dipendenza dal pacchetto PyPI conflitti, i messaggi di errore visualizzati contengono i dettagli i pacchetti e le versioni dei pacchetti in conflitto.
gcloud
Per eseguire un controllo dell'upgrade per il tuo ambiente, esegui
environments check-upgrade
utilizzando
Versione immagine di Cloud Composer.
di cui vuoi eseguire l'upgrade.
gcloud composer environments check-upgrade \
ENVIRONMENT_NAME \
--location LOCATION \
--image-version VERSION
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.VERSION
con la nuova versione immagine di Cloud Composer di cui vuoi eseguire l'upgrade, nelcomposer-a.b.c-airflow-x.y.z
formato. Puoi anche utilizzare tutte le alias di versione.
Esempio:
gcloud composer environments check-upgrade example-environment \
--location us-central1 \
--image-version composer-2.9.1-airflow-2.9.1
Output di esempio:
Waiting for [projects/example-project/locations/us-central1/environments/
example-environment] to be checked for PyPI package conflicts when upgrading
to composer-2.9.1-airflow-2.9.1. Operation [projects/example-project/locations/
us-central1/operations/04d0e8b2-...]...done.
...
Response:
'@type': type.googleapis.com/
google.cloud.orchestration.airflow.service.v1.CheckUpgradeResponse
buildLogUri: https://console.cloud.google.com/cloud-build/builds/79738aa7-...
containsPypiModulesConflict: CONFLICT
pypiConflictBuildLogExtract: |-
The Cloud Build image build failed: Build failed; check build logs for
details. Full log can be found at https://console.cloud.google.com/
cloud-build/builds/79738aa7-...
Error details: tensorboard 2.2.2 has requirement
setuptools>=41.0.0, but you have setuptools 40.3.0.
In alternativa, puoi eseguire un controllo dell'upgrade in modo asincrono. Utilizza la
--async
per effettuare una chiamata asincrona, poi controlla il risultato con
il gcloud composer operations describe
.
API
Creare un'API environments.checkUpgrade
richiesta.
Specifica la versione dell'immagine nel campo imageVersion
:
{
"imageVersion": "VERSION"
}
Sostituisci VERSION
con la nuova versione di cui vuoi eseguire l'upgrade nel
nel formato composer-a.b.c-airflow-x.y.z
.
Esegui l'upgrade dell'ambiente
per eseguire l'upgrade dell'ambiente a una versione successiva di Cloud Composer o Airflow:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.
Vai alla scheda Configurazione dell'ambiente.
Individua la voce Versione immagine e fai clic su Esegui l'upgrade.
Nel menu a discesa Versione immagine, seleziona una versione di Cloud Composer di cui vuoi eseguire l'upgrade.
Fai clic su Esegui l'upgrade.
gcloud
gcloud composer environments update \
ENVIRONMENT_NAME \
--location LOCATION \
--image-version VERSION
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.VERSION
con la nuova versione immagine di Cloud Composer di cui vuoi eseguire l'upgrade, nelcomposer-a.b.c-airflow-x.y.z
formato. Puoi anche utilizzare tutte le alias di versione.
Ad esempio:
gcloud composer environments update
example-environment \
--location us-central1 \
--image-version composer-2.9.1-airflow-2.9.1
API
Creare una richiesta API
environments.patch
.In questa richiesta:
Nel parametro
updateMask
, specifica Mascheraconfig.softwareConfig.imageVersion
.Nel corpo della richiesta, nel campo
imageVersion
, specifica un nuovo a cui vuoi eseguire l'upgrade.
Ad esempio:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.imageVersion
{
"config": {
"softwareConfig": {
"imageVersion": "composer-2.9.1-airflow-2.9.1"
}
}
}
Terraform
Il campo image_version
nel blocco config.software_config
controlli
l'immagine Cloud Composer del tuo ambiente. In questo
specifica una nuova immagine Cloud Composer.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
software_config {
image_version = "VERSION"
}
}
}
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente. La nuova versione immagine di Cloud Composer di cui vuoi eseguire l'upgrade, nelcomposer-a.b.c-airflow-x.y.z
formato. Puoi anche utilizzare tutte le alias di versione.
Esempio:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
software_config {
image_version = "composer-2.9.1-airflow-2.9.1"
}
}
}