Panoramica del controllo delle versioni di Cloud Composer

Questa pagina descrive il controllo delle versioni di Cloud Composer ed elenca le differenze tra le versioni principali di Cloud Composer.

Versioni principali di Cloud Composer

Cloud Composer ha le seguenti versioni principali:

  • Cloud Composer 1. Ha lo scaling manuale dell'ambiente, l'infrastruttura viene implementata nei tuoi progetti e nelle tue reti.
  • Cloud Composer 2. In questa versione, il cluster dell'ambiente viene scalato automaticamente per soddisfare le richieste di risorse.
  • Cloud Composer 3. Questa versione semplifica la configurazione di rete e nasconde i componenti dell'infrastruttura, inclusi il cluster dell'ambiente e le dipendenze dell'ambiente da altri servizi.

Confronto tra le versioni di Cloud Composer

La seguente tabella elenca le principali differenze tra Cloud Composer 1, Cloud Composer 2 e Cloud Composer 3.

Funzionalità Cloud Composer 1 Cloud Composer 2 Cloud Composer 3
Versione immagine composer-1.b.c-airflow-x.y.z composer-2.b.c-airflow-x.y.z composer-3-airflow-x.y.z-build.t
Versioni di Airflow Airflow 1.10.* e Airflow 2 Airflow 2 Airflow 2
Versioni di Python 3.8.12 3.11.8 (3.11.5 e 3.8.12 nelle versioni precedenti) 3.11.8
Cluster dell'ambiente Cluster Google Kubernetes Engine basato su VPC nativo o su route in modalità Standard Cluster Google Kubernetes Engine nativo del VPC in modalità Autopilot Il cluster dell'ambiente non è stato deployment nel tuo progetto.
Scalabilità orizzontale Può modificare il numero di nodi nel cluster dell'ambiente. In questo modo, il numero di worker Airflow viene modificato.
Può modificare il numero di scheduler Airflow.
Scalabilità automatica del numero di worker Airflow in base alla domanda. Può impostare e modificare i limiti superiore e inferiore per il numero di worker.
Può regolare il numero di scheduler e triggerer Airflow
Scalabilità automatica del numero di worker Airflow in base alla domanda. Può impostare e modificare i limiti superiore e inferiore per il numero di worker.
Può modificare il numero di scheduler, triggerer e processori DAG di Airflow
Scalabilità verticale Puoi impostare i tipi di macchine per i nodi del cluster, il server web Airflow e il database quando crei un ambiente. Può modificare i tipi di macchine per il server web e il database Airflow. Può impostare e modificare la configurazione dei workload: parametri di CPU, memoria e archiviazione per worker, scheduler, server web di Airflow e dimensioni dell'ambiente. Può impostare e modificare la configurazione dei carichi di lavoro: parametri di CPU, memoria e archiviazione per worker, scheduler, server web, processori DAG e dimensioni dell'ambiente di Airflow.
Modello di determinazione del prezzo Modello di prezzo di Cloud Composer 1 Modello di prezzo di Cloud Composer 2 Modello di prezzo di Cloud Composer 3
Controllo degli accessi Ruoli di Cloud Composer 1 Ruoli Cloud Composer. Utilizza la federazione delle identità per i carichi di lavoro per GKE e richiede autorizzazioni aggiuntive per l'account agente di servizio Cloud Composer. Ruoli Cloud Composer. Utilizza la federazione delle identità per i carichi di lavoro per GKE. Non sono richieste autorizzazioni aggiuntive
Accesso tramite la federazione delle identità della forza lavoro Non supportata Supportato Supportato
Ambienti ad alta resilienza Non supportata Supportato Non ancora disponibile
Policy di conservazione del database Non supportata Non ancora disponibile Supportato
Networking con IP privato Peering VPC Private Service Connect Configurazione di rete semplificata. Può essere modificato tra IP pubblico e privato in un ambiente esistente.
Controlli di servizio VPC Supportato Supportato Supportato
Esecutori Airflow Esecutore Celery Esecutore Celery Esecutore CeleryKubernetes
Attivatore Airflow (operatori differibili) Non supportata Supportato Supportato
Account di servizio personalizzato per KubernetesPodOperator Supportato Supportato Non supportato
CMEK Supportato Supportato Supportato
Controlli dell'accesso al server web Supportato Supportato Supportato
Riavvio del server web Supportato Supportato Supportato
Plug-in per server web Supportato negli ambienti Airflow 1 con serializzazione DAG disabilitata. Supportato Supportati, i plug-in possono essere disattivati e attivati on demand.
Plug-in di pianificazione Non supportata Supportato Non supportata
Pacchetti PyPI personalizzati dello scheduler Non supportata Supportato Non supportata
Installazione di plug-in personalizzati Supportato Supportato Supportato
Operazioni di manutenzione Tutte le attività possono essere interessate. Le attività che richiedono meno di 55 minuti per l'esecuzione non sono interessate. Le attività che richiedono meno di 24 ore per l'esecuzione non sono interessate.
Archiviazione degli snapshot Supportato per le versioni 2.x e 1.10.15 di Airflow Supportato Supportato
Caricamento degli snapshot Non supportata Supportato Supportato
Snapshot pianificati Non supportata Supportato Supportato
Bucket dell'ambiente personalizzato Non supportata Supportato Supportato
Salvataggio dei log delle attività Airflow solo in Cloud Logging Non supportata Supportato Supportato
Integrazione della derivazione dei dati Non supportata Supportato Supportato
Strumento CLI di sviluppo locale di Composer Non supportata Supportato Supportato

Immagini di Cloud Composer

Per eseguire Apache Airflow, Cloud Composer crea immagini Docker che raggruppano le release di Airflow con altri programmi binari comuni e librerie Python.

Le immagini di Cloud Composer includono modifiche di Airflow specifiche per Cloud Composer e non adatte al codebase Airflow upstream. Ogni immagine di Cloud Composer contiene pacchetti preinstallati insieme alle modifiche di Airflow specifiche di Cloud Composer.

Google rilascia periodicamente nuove immagini di Cloud Composer:

  • In Cloud Composer 3, le immagini includono nuove build delle versioni di Airflow supportate. Puoi selezionare una versione di Airflow e una build da utilizzare. Il tuo ambiente riceve automaticamente i miglioramenti di Cloud Composer.

  • In Cloud Composer 2 e Cloud Composer 1, le immagini includono miglioramenti di Cloud Composer e nuove build delle versioni di Airflow supportate. Per ottenere i miglioramenti di Cloud Composer, esegui l'upgrade dell'ambiente a una versione successiva di Cloud Composer.

Deprecazione e supporto delle versioni

Composer 3

Google supporta una build di Airflow per un periodo di tempo successivo al rilascio:

  • 0-12 mesi dalla data di rilascio: gli ambienti Cloud Composer 3 che eseguono questa build di Airflow sono supportati.

  • 12+ mesi dalla data di rilascio: gli ambienti Cloud Composer 3 che eseguono queste versioni non sono supportati.

    Una volta che una build di Airflow non è più supportata, anche gli ambienti che eseguono questa build di Airflow non sono supportati e sono interamente gestiti dall'utente.

Gli ambienti funzionano con le build di Airflow supportate e non supportate nel seguente modo:

  • Puoi creare ambienti con tutte le build di Airflow supportate.

  • Puoi comunque utilizzare un ambiente con una build Airflow non più supportata. L'ambiente funziona ancora, puoi continuare a utilizzarlo e puoi eseguire l'upgrade a una build di Airflow supportata.

  • In alcuni casi, l'upgrade a una versione o build di Airflow successiva è l'unica soluzione disponibile per una vulnerabilità della sicurezza.

Composer 2

Google supporta le versioni di Cloud Composer 2 per un periodo di tempo dopo il rilascio della versione:

  • 0-12 mesi dalla data di rilascio: gli ambienti Cloud Composer 2 che eseguono queste versioni sono supportati.

  • Più di 12 mesi dalla data di rilascio: gli ambienti Cloud Composer 2 che eseguono queste versioni non sono supportati.

Puoi utilizzare le versioni di Cloud Composer dopo la data in cui non sono più supportate. Ad esempio, se il tuo ambiente si basa su una versione di Cloud Composer che ha superato il periodo di assistenza, l'ambiente continua a funzionare e puoi continuare a utilizzarlo. In questo caso, ti consigliamo di eseguire l'upgrade del tuo ambiente a una versione supportata.

Composer 1

Le nuove versioni di Cloud Composer 1 sono state rilasciate fino alla fine di marzo 2023. Tutte le versioni di Cloud Composer 1 rilasciate seguono la stessa norma di ritiro delle versioni di Cloud Composer 2 e sono supportate in base a questa norma.

Supporto della versione di Airflow

Airflow segue lo schema di controllo delle versioni semantico del software. Ogni versione di Airflow ha una versione principale, secondaria e patch.

Composer 3

In Cloud Composer 3, le nuove versioni e build di Airflow diventano disponibili con il passare del tempo.

Il tuo ambiente può funzionare con tutte le versioni e le build precedenti di Airflow e riceve automaticamente gli aggiornamenti dei componenti dell'infrastruttura. Ogni versione e build è supportata come descritto in Ritiro e supporto delle versioni e puoi scegliere di eseguire l'upgrade della versione di Airflow a una versione o build successiva.

Composer 2

Per un elenco delle versioni di Airflow supportate in ogni versione di Cloud Composer, consulta l'elenco delle versioni di Cloud Composer.

  • In ogni release, Cloud Composer 2 supporta due versioni secondarie di Airflow 2.

    Ad esempio, Cloud Composer 2.4.0 supporta Airflow 2.4.* e Airflow 2.5.*.

  • Per ogni versione secondaria di Airflow 2, Cloud Composer supporta una versione patch.

    Ad esempio, per Airflow 2.4.*, Cloud Composer supporta Airflow 2.4.3.

  • Quando una nuova versione patch di Airflow 2 diventa disponibile in Cloud Composer, la release corrispondente ha due versioni patch di Airflow 2 disponibili per la stessa versione secondaria di Airflow. La versione della patch precedente viene quindi rimossa in una delle versioni successive.

    Ad esempio, Cloud Composer 2.3.4 supporta sia Airflow 2.5.1 che Airflow 2.5.3.

  • Cloud Composer può saltare alcune versioni patch di Airflow tra le release di Cloud Composer. Inoltre, se si verificano problemi funzionali, di qualità o di prestazioni con una versione patch specifica di Airflow, Cloud Composer può anche ignorare questa versione.

    Ad esempio, Airflow 2.1.3 viene ignorato e Airflow 2.1.4 è disponibile.

  • Una release di Cloud Composer che esegue una versione stabile di Airflow può includere aggiornamenti di Airflow di cui è stato eseguito il backporting da una versione successiva di Airflow.

Composer 1

L'ultima versione di Airflow supportata in Cloud Composer 1 è Airflow 2.4.3.

Solo Cloud Composer 1 supporta Airflow 1.10.15, l'ultima versione rilasciata di Airflow 1.

Schema delle versioni di Cloud Composer

Composer 3

Lo schema di controllo delle versioni di Cloud Composer 3 acquisisce le versioni e le build di Airflow:

composer-3-airflow-x.y.z-build.t

Dove:

  • composer-3 è la versione principale di Cloud Composer.

  • airflow-x.y.z.build.t è la versione e la build di Airflow. Ogni release successiva della stessa versione di Airflow in Cloud Composer 3 ha un numero di build superiore. Il numero di build è definito da Cloud Composer e non dal progetto open source Airflow.

Composer 2

Lo schema di controllo delle versioni delle immagini di Cloud Composer 2 acquisisce le versioni di Cloud Composer e Airflow:

composer-2.b.c-airflow-x.y.z

Dove:

  • composer-2.b.c indica la versione secondaria e la patch delle personalizzazioni gestite da Cloud Composer in Cloud Composer 2. Come regola generale, le versioni secondarie di Cloud Composer corrispondono a modifiche significative della funzionalità rispetto alla versione secondaria precedente, ad esempio quando viene modificato l'insieme disponibile di versioni di Airflow. Le versioni patch vengono aggiornate nelle release successive.

  • airflow-x.y.z è la release di Airflow, che indica la versione principale, secondaria e patch di Airflow utilizzata in un'immagine Cloud Composer specifica.

Composer 1

Lo schema di controllo delle versioni delle immagini di Cloud Composer 1 acquisisce le versioni di Cloud Composer e Airflow:

composer-1.b.c-airflow-x.y.z

Dove:

  • composer-1.b.c è la versione delle personalizzazioni gestite da Cloud Composer
  • airflow-x.y.z è la release di Airflow

Alias versione

Gli alias di versione funzionano nel seguente modo:

  • Cloud Composer risolve l'alias della versione nel formato completo quando crea l'ambiente:

    • Tutti gli alias di versione diventano composer-3-airflow-x.y.z-build.t in Cloud Composer 3.
    • Tutti gli alias di versione diventano composer-a.b.c-airflow-x.y.z in Cloud Composer 2 e Cloud Composer 1.
  • In Cloud Composer 3, l'utilizzo di un alias di versione, ad esempio composer-3-airflow-x.y non esegue automaticamente l'upgrade della versione e della build di Airflow del tuo ambiente. L'ambiente rimane sulla stessa build e versione di Airflow finché non esegui l'upgrade. L'ambiente continua a ricevere gli upgrade automatici dell'infrastruttura, come di consueto.

  • In Cloud Composer 2 e Cloud Composer 1, l'utilizzo di un alias di versione, ad esempio composer-a-airflow-x.y.z non fornisce upgrade automatici per un ambiente. L'ambiente rimane sulla stessa versione di Cloud Composer e Airflow finché non esegui l'upgrade.

Alias versione di Cloud Composer 3

Cloud Composer 3 supporta i seguenti alias di versione:

Alias Versione Airflow
composer-3-airflow-2 Ultima versione e build di Airflow 2
composer-3-airflow-x.y Versione e build più recenti di Airflow all'interno delle versioni principali e secondarie x.y
composer-3-airflow-x.y.z L'ultima build della versione specificata di Airflow

Alias versione di Cloud Composer 2

Cloud Composer 2 supporta i seguenti alias di versione:

Alias Versione di Cloud Composer Versione Airflow
composer-2-airflow-2 Ultima versione di Cloud Composer 2 Ultima versione di Airflow 2
composer-2-airflow-x.y Ultima versione di Cloud Composer 2 L'ultima versione di Airflow all'interno delle versioni principali e secondarie x.y
composer-2-airflow-x.y.z Ultima versione di Cloud Composer 2 Versione specificata di Airflow
composer-2.b.c-airflow-x.y Versione specificata di Cloud Composer 2 Ultima versione di Airflow disponibile nelle versioni principali e secondarie di x.y

Alias versione di Cloud Composer 1

Cloud Composer 1 supporta i seguenti alias di versione:

Alias Versione di Cloud Composer Versione Airflow
composer-1-airflow-2 Ultima versione di Cloud Composer 1 Ultima versione di Airflow 2
composer-1-airflow-1 Ultima versione di Cloud Composer 1 Ultima versione di Airflow 1
composer-1-airflow-x.y Ultima versione di Cloud Composer 1 L'ultima versione di Airflow all'interno delle versioni principali e secondarie x.y
composer-1-airflow-x.y.z Ultima versione di Cloud Composer 1 Versione specificata di Airflow
composer-1.b.c-airflow-x.y Versione specificata di Cloud Composer 1 L'ultima versione di Airflow disponibile nelle versioni principali e secondarie x.y.

I seguenti alias di versione puntano a Cloud Composer 2. Puoi comunque utilizzarli, ma valuta la possibilità di passare agli alias per la tua versione di Cloud Composer.

  • composer-latest-airflow-x.y è uguale a composer-2-airflow-x.y.
  • composer-latest-airflow-x.y.z è uguale a composer-2-airflow-x.y.z.

Argomenti della versione in Google Cloud CLI

Quando crei o aggiorni un ambiente Cloud Composer utilizzando Google Cloud CLI, puoi specificare le versioni di Cloud Composer e Airflow:

Composer 3

  • L'argomento --image-version specifica la versione e la build di Airflow nel formato composer-3-airflow-x.y.z-build.t. Puoi utilizzare gli alias di versione, che vengono risolti da Google Cloud CLI nel formato completo.

  • --airflow-version specifica la versione di Airflow nei seguenti formati:

    • Il formato x.y.z è per l'ultima build della versione specificata di Airflow. Questo formato è uguale all'alias della versione composer-3-airflow-x.y.z.

    • Il formato x.y è per l'ultima build di Airflow disponibile nelle versioni principali e secondarie di x.y. Questo formato è uguale all'alias della versione composer-3-airflow-x.y.

    • x.y.z-build.t è la versione e la build specificate di Airflow. Questo formato è uguale a composer-3-airflow-x.y.z-build.t.

Composer 2

  • L'argomento --image-version specifica le versioni di Cloud Composer 2 e Airflow:

    • Il formato composer-a.b.c-airflow-x.y.z crea un ambiente con le versioni specificate di Cloud Composer e Airflow.
    • Gli alias di versione vengono risolti prima nel formato composer-a.b.c-airflow-x.y.z e poi viene creato un ambiente con le versioni specificate di Cloud Composer 2 e Airflow.
  • --airflow-version specifica la versione di Airflow nei seguenti formati:

    • Il formato x.y.z è per l'ultima versione di Cloud Composer 2 e la versione specificata di Airflow. Questo formato è uguale all'alias della versione composer-2-airflow-x.y.z.

    • Il formato x.y è per l'ultima versione di Cloud Composer 2 e per l'ultima versione di Airflow disponibile nelle versioni principali e secondarie x.y. Questo formato è uguale all'alias della versione composer-2-airflow-x.y.

Composer 1

  • L'argomento --image-version specifica le versioni di Cloud Composer 1 e Airflow:

    • Il formato composer-a.b.c-airflow-x.y.z crea un ambiente con le versioni specificate di Cloud Composer e Airflow.
    • Gli alias di versione vengono risolti prima nel formato composer-a.b.c-airflow-x.y.z e poi viene creato un ambiente con le versioni specificate di Cloud Composer 1 e Airflow.
  • --airflow-version specifica la versione di Airflow nei seguenti formati:

    • Il formato x.y.z è per l'ultima versione di Cloud Composer 1 e la versione specificata di Airflow. Questo formato è uguale all'alias della versione composer-1-airflow-x.y.z.

    • Il formato x.y è per l'ultima versione di Cloud Composer 1 e per l'ultima versione di Airflow disponibile nelle versioni principali e secondarie di x.y. Questo formato è uguale all'alias della versione composer-1-airflow-x.y.

Passaggi successivi