Modell der gemeinsamen Verantwortung für Managed Airflow

Managed Airflow (Gen 3) | Managed Airflow (Gen 2) | Managed Airflow (Legacy Gen 1)

Für das Ausführen geschäftskritischer Anwendungen in Managed Airflow müssen mehrere Parteien unterschiedliche Verantwortlichkeiten übernehmen. In diesem Dokument werden die Verantwortlichkeiten von Google und den Kunden aufgeführt. Die Liste ist jedoch nicht vollständig.

Verantwortlichkeiten von Google

  • Härten und Patchen der Komponenten und der zugrunde liegenden Infrastruktur der Managed Airflow Umgebung, einschließlich des Google Kubernetes Engine-Clusters, der Cloud SQL-Datenbank (in der die Airflow Datenbank gehostet wird), Pub/Sub, Artifact Registry und anderer Umgebungselemente. Dazu gehört insbesondere das automatische Upgrade der zugrunde liegenden Infrastruktur, einschließlich des GKE-Cluster und der Cloud SQL-Instanz einer Umgebung.

  • Schutz des Zugriffs auf Managed Airflow-Umgebungen durch Einbeziehung der von IAM bereitgestellten Zugriffssteuerung, standardmäßige Verschlüsselung ruhender Daten, Bereitstellung zusätzlicher vom Kunden verwalteter Speicherverschlüsselung, Verschlüsselung von Daten bei der Übertragung.

  • Bereitstellung von Google Cloud Integrationen für Identity and Access Management, Cloud-Audit-Logs und Cloud Key Management Service.

  • Beschränken und Protokollieren des administrativen Zugriffs von Google auf Kundencluster mit Access Transparency und Access Approval für vertragliche Supportzwecke.

  • Veröffentlichung von Informationen zu abwärtsinkompatiblen Änderungen zwischen Managed Airflow- und Airflow-Versionen in den Versionshinweisen zu Managed Airflow.

  • Aktualisieren der Managed Airflow-Dokumentation:

    • Beschreibung aller von Managed Airflow bereitgestellten Funktionen.

    • Anleitung zur Fehlerbehebung, mit der Sie Umgebungen in einem fehlerfreien Zustand halten können.

    • Veröffentlichung von Informationen zu bekannten Problemen mit Problemumgehungen (falls vorhanden).

  • Beheben kritischer Sicherheitsvorfälle im Zusammenhang mit Managed Airflow-Umgebungen und von Managed Airflow bereitgestellten Airflow-Images (mit Ausnahme von vom Kunden installierten Python-Paketen) durch Bereitstellung neuer Umgebungsversionen, die die Vorfälle beheben.

  • Je nach Supportplan des Kunden Fehlerbehebung bei Problemen mit dem Systemstatus der Managed Airflow-Umgebung.

  • Wartung und Erweiterung der Funktionalität des Managed Airflow-Terraform-Anbieters.

  • Zusammenarbeit mit der Apache Airflow-Community zur Wartung und Entwicklung von Google Airflow-Operatoren.

  • Fehlerbehebung und, wenn möglich, Behebung von Problemen in den Airflow-Kernfunktionen.

Pflichten der Kunden

  • Upgrade auf neue Managed Airflow- und Airflow-Versionen, um den Support für das Produkt aufrechtzuerhalten und Sicherheitsprobleme zu beheben, sobald der Managed Airflow-Dienst eine Managed Airflow-Version veröffentlicht, die die Probleme behebt.

  • Wartung des DAG-Codes, damit er mit der verwendeten Airflow-Version kompatibel bleibt.

  • Aufrechterhaltung der korrekten Berechtigungen in IAM für das Dienstkonto der Umgebung. Insbesondere die Berechtigungen, die vom Managed Airflow-Agent und dem Dienstkonto der Umgebung benötigt werden. Aufrechterhaltung der erforderlichen Berechtigung für den CMEK-Schlüssel, der für die Verschlüsselung der Managed Airflow-Umgebung verwendet wird, und Rotation nach Bedarf.

  • Aufrechterhaltung der korrekten Berechtigungen in IAM für den Bucket der Umgebung .

  • Aufrechterhaltung der korrekten IAM-Berechtigungen für ein Dienstkonto, das PyPI-Pakete installiert. Weitere Informationen finden Sie unter Zugriffssteuerung.

  • Aufrechterhaltung der korrekten Endnutzerberechtigungen in IAM und der Konfiguration der Zugriffssteuerung der Airflow-UI.

  • Halten Sie die Größe der Airflow-Datenbank unter 20 GB, indem Sie eine Aufbewahrungsrichtlinie für die Datenbank konfigurieren.

  • Beheben Sie alle Probleme beim Parsen von DAGs, bevor Sie Supportanfragen an Cloud Customer Care senden.

  • Benennen Sie DAGs ordnungsgemäß (z. B. ohne unsichtbare Zeichen wie LEERZEICHEN oder TAB in DAG-Namen), damit Messwerte für DAGs korrekt gemeldet werden können.

  • Aktualisieren Sie den Code von DAGs, damit er keine veralteten Operatoren verwendet, und migrieren Sie zu den aktuellen Alternativen. Veraltete Operatoren werden möglicherweise aus Airflow-Anbietern entfernt, was sich auf Ihre Pläne für ein Upgrade auf eine neuere Managed Airflow- oder Airflow-Version auswirken kann. Die veralteten Operatoren werden auch nicht gewartet und müssen „wie besehen“ verwendet werden.

  • Konfigurieren Sie die korrekten IAM-Berechtigungen, wenn Sie Secret-Back-Ends wie Secret Manager verwenden, damit das Dienstkonto der Umgebung darauf zugreifen kann.

  • Passen Sie die Parameter der Managed Airflow-Umgebung (z. B. CPU und Arbeitsspeicher für Airflow-Komponenten) und die Airflow-Konfigurationen an die Leistungs- und Lastanforderungen von Managed Airflow-Umgebungen an. Verwenden Sie dazu den Leitfaden zur Optimierung von Managed Airflow und den Leitfaden zur Skalierung der Umgebung.

  • Entfernen Sie keine Berechtigungen, die vom Managed Airflow-Agent und den Dienstkonten der Umgebung benötigt werden. Das Entfernen dieser Berechtigungen kann entweder zu fehlgeschlagenen Verwaltungsvorgängen oder zu DAG- und Aufgabenfehlern führen.

  • Alle von Managed Airflow benötigten Dienste und APIs müssen immer aktiviert sein. Für diese Abhängigkeiten müssen Kontingente auf Ebenen konfiguriert sein, die für Managed Airflow erforderlich sind.

  • Beachten Sie die Empfehlungen und Best Practices für die Implementierung von DAGs.

  • Diagnostizieren Sie DAG- und Aufgabenfehler anhand der Anleitung zur Fehlerbehebung für den Scheduler, Fehlerbehebung für DAGs und zur Fehlerbehebung für Trigger.

  • Pflegen Sie einen Plan zur Notfallwiederherstellung, einschließlich der Konfiguration und Verwaltung von Snapshots, um Ihre Anforderungen an die Datenaufbewahrung und Geschäftskontinuität zu erfüllen. Google stellt keine gelöschten Umgebungen oder deren Datenbanksicherungen wieder her.

  • Pflegen Sie die Lieferkette für Python-Abhängigkeiten für Pakete, die vom Kunden installiert werden. Dazu gehört die Fehlerbehebung bei Installationsfehlern, die durch Abweichungen bei den Python-Abhängigkeiten verursacht werden, und die Definition spezifischer Versionsbeschränkungen beim Hinzufügen oder Ändern dieser Pakete.

Nächste Schritte