Managed Airflow (terza generazione) | Managed Airflow (seconda generazione) | Managed Airflow (prima generazione legacy)
L'esecuzione di un'applicazione mission-critical su Managed Airflow richiede che più parti si assumano responsabilità diverse. Sebbene non sia un elenco esaustivo, questo documento elenca le responsabilità sia di Google che del cliente.
Responsabilità di Google
Protezione e applicazione di patch ai componenti e all'infrastruttura sottostante dell'ambiente Airflow gestito, inclusi il cluster Google Kubernetes Engine, il database Cloud SQL (che ospita il database Airflow), Pub/Sub, Artifact Registry e altri elementi dell'ambiente. In particolare, ciò include l'upgrade automatico dell'infrastruttura sottostante, inclusi il cluster GKE e l'istanza Cloud SQL di un ambiente.
Protezione dell'accesso agli ambienti Managed Airflow tramite l'incorporamento controllo dell'accesso fornito da IAM, la crittografia dei dati a riposo per impostazione predefinita, la fornitura di una crittografia di archiviazione gestita dal cliente aggiuntiva e la crittografia dei dati in transito.
Fornitura di Google Cloud integrazioni per Identity and Access Management, Cloud Audit Logs e Cloud Key Management Service.
Limitazione e registrazione dell'accesso amministrativo di Google ai cluster dei clienti per scopi di assistenza contrattuale con Access Transparency e Approvazione dell'accesso.
Pubblicazione di informazioni sulle modifiche incompatibili con le versioni precedenti tra Managed Airflow e le versioni di Airflow in Note di rilascio di Managed Airflow.
Mantenimento aggiornato della documentazione di Airflow gestito:
Fornitura di una descrizione di tutte le funzionalità fornite da Managed Airflow.
Fornitura di istruzioni per la risoluzione dei problemi che aiutano a mantenere gli ambienti in uno stato di integrità.
Pubblicazione di informazioni sui problemi noti con soluzioni alternative (se esistenti).
Risoluzione degli incidenti di sicurezza critici relativi agli ambienti Airflow gestito e alle immagini Airflow fornite da Airflow gestito (esclusi i pacchetti Python installati dal cliente) tramite la distribuzione di nuove versioni dell'ambiente che risolvono gli incidenti.
A seconda del piano di assistenza del cliente, risoluzione dei problemi di integrità dell'ambiente Airflow gestito.
Manutenzione ed espansione della funzionalità del provider Terraform di Managed Airflow.
Collaborazione con la community di Apache Airflow per la manutenzione e lo sviluppo degli operatori Airflow di Google.
Risoluzione dei problemi e, se possibile, correzione dei problemi nelle funzionalità principali di Airflow.
Responsabilità del cliente
Eseguire l'upgrade alle nuove versioni di Managed Airflow e Airflow per mantenere il supporto per il prodotto e risolvere i problemi di sicurezza una volta che il servizio Managed Airflow pubblica una versione di Managed Airflow che risolve i problemi.
Mantenere il codice dei DAG compatibile con la versione di Airflow utilizzata.
Mantenere intatta la configurazione del cluster GKE dell'ambiente, in particolare la funzionalità di upgrade automatico.
Mantenere le autorizzazioni corrette in IAM per il account di servizio dell'ambiente. In particolare, mantenere le autorizzazioni richieste dall' agente Airflow gestito e dal service account dell'ambiente. Mantenere l'autorizzazione richiesta per la chiave CMEK utilizzata per la crittografia dell'ambiente Airflow gestito e ruotarla in base alle tue esigenze.
Mantenere le autorizzazioni corrette in IAM per il bucket dell'ambiente e il repository Artifact Registry in cui sono archiviate le immagini dei componenti di Airflow gestito .
Mantenere le autorizzazioni IAM corrette per un account di servizio che esegue le installazioni dei pacchetti PyPI. Per ulteriori informazioni, consulta Controllo dell'accesso.
Mantenere le autorizzazioni utente finali corrette in IAM e nella configurazione del controllo dell'accesso all'interfaccia utente di Airflow.
Mantenere le dimensioni del database Airflow al di sotto di 16 GB utilizzando il DAG di manutenzione.
Risolvere tutti i problemi di analisi dei DAG prima di aprire richieste di assistenza all'assistenza clienti Google Cloud.
Assegnare ai DAG nomi appropriati (ad esempio, senza utilizzare caratteri invisibili come SPAZIO o TAB nei nomi dei DAG) in modo che le metriche possano essere segnalate correttamente per i DAG.
Esegui l'upgrade del codice dei DAG in modo che non utilizzi operatori ritirati ed esegui la migrazione alle alternative aggiornate. Gli operatori ritirati potrebbero essere rimossi dai provider Airflow, il che potrebbe influire sui tuoi piani di upgrade a una versione successiva di Managed Airflow o Airflow. Gli operatori ritirati non vengono inoltre sottoposti a manutenzione e devono essere utilizzati "così come sono".
Configurare le autorizzazioni IAM corrette quando si utilizzano backend secret come Secret Manager in modo che il account di servizio dell'ambiente abbia accesso.
Modificare i parametri dell'ambiente Airflow gestito (come CPU e memoria per i componenti Airflow) e le configurazioni di Airflow per soddisfare le aspettative di prestazioni e carico degli ambienti Airflow gestito utilizzando la guida all'ottimizzazione di Airflow gestito e la guida alla scalabilità dell'ambiente.
Evitare di rimuovere le autorizzazioni richieste dall'agente Airflow gestito e dai service account dell'ambiente (la rimozione di queste autorizzazioni può comportare operazioni di gestione non riuscite o errori di DAG e attività).
Mantenere sempre abilitati tutti i servizi e le API richiesti da Managed Airflow. Queste dipendenze devono avere quote configurate ai livelli richiesti per Managed Airflow.
Mantenere i repository Artifact Registry che ospitano le immagini container utilizzate dagli ambienti Managed Airflow.
Seguire i consigli e le best practice per l'implementazione dei DAG.
Diagnosticare gli errori di DAG e attività utilizzando le istruzioni per la risoluzione dei problemi dello scheduler, la risoluzione dei problemi dei DAG e la risoluzione dei problemi dell'attivatore.
Evitare di installare o eseguire componenti aggiuntivi nel cluster GKE dell'ambiente che interferiscono con i componenti Airflow gestito e impediscono loro di funzionare correttamente.
Configurare e gestire gli snapshot in base alle esigenze di conservazione dei dati e di continuità operativa. Google non ripristina gli ambienti eliminati o i backup dei relativi database.
Mantenere la catena di fornitura delle dipendenze Python per i pacchetti installati dal cliente. Ciò include la risoluzione degli errori di installazione causati da mancate corrispondenze delle dipendenze Python e la definizione di vincoli di versione specifici quando si aggiungono o modificano questi pacchetti.