Managed Airflow 共同責任模式

Managed Airflow (第 3 代) | Managed Airflow (第 2 代) | Managed Airflow (舊版第 1 代)

在 Managed Airflow 上執行重要業務應用程式,需由多方各司其職,本文件列舉 Google 和客戶雙方主要責任 (請注意,此清單並非詳盡無遺)。

Google 的責任

  • 強化修補 Managed Airflow 環境的元件和底層基礎架構,包括 Google Kubernetes Engine 叢集、Cloud SQL 資料庫 (用於代管 Airflow 資料庫)、Pub/Sub、Artifact Registry 和其他環境元素。具體來說,這包括自動升級底層基礎架構,例如環境的 GKE 叢集和 Cloud SQL 執行個體。

  • 透過整合 IAM 提供的存取控管機制,保護對 Managed Airflow 環境的存取權;預設加密靜態資料;提供額外的客戶管理儲存空間加密加密傳輸中的資料

  • 提供 Identity and Access Management、Cloud 稽核記錄和 Cloud Key Management Service 適用的 Google Cloud 整合功能。

  • 基於合約規定的支援義務,透過資料存取透明化控管機制存取權核准程序,限制並記錄 Google 管理員對客戶叢集的存取活動。

  • 在「Managed Airflow 版本資訊」中,發布 Managed Airflow 和 Airflow 版本之間不相容的變更資訊。

  • 隨時更新 Managed Airflow 說明文件:

    • 說明 Managed Airflow 提供的所有功能。

    • 提供疑難排解說明,協助環境維持正常運作。

    • 發布已知問題的相關資訊,以及解決方法 (如有)。

  • 解決與 Managed Airflow 環境和 Managed Airflow 提供的 Airflow 映像檔相關的重大安全事件 (不包括客戶安裝的 Python 套件),並提供可解決這些事件的新環境版本。

  • 視客戶的支援方案而定,排解 Managed Airflow 環境健康狀態問題。

  • 維護及擴充 Managed Airflow Terraform 供應商的功能。

  • 與 Apache Airflow 社群合作,維護及開發 Google Airflow 運算子

  • 排解 Airflow 核心功能問題,並盡可能修正。

客戶責任

  • 升級至新的 Managed Airflow 和 Airflow 版本,以維持產品支援,並在 Managed Airflow 服務發布可解決問題的 Managed Airflow 版本後,解決安全性問題。

  • 維護 DAG 程式碼,確保與使用的 Airflow 版本相容。

  • 在環境的服務帳戶中,維持 IAM 的適當權限。特別是Managed Airflow 代理程式環境服務帳戶所需的權限。維護用於 Managed Airflow 環境加密的 CMEK 金鑰所需權限,並視需要輪換金鑰。

  • 在 IAM 中為環境的 bucket 維護適當的權限。

  • 為執行 PyPI 套件安裝作業的服務帳戶維持適當的 IAM 權限。詳情請參閱存取權控管一文。

  • 在 IAM 和 Airflow 中維護適當的使用者權限 UI 存取控管設定。

  • 透過設定資料庫保留政策,將 Airflow 資料庫大小維持在 20 GB 以下。

  • 在向 Cloud Customer Care 提出支援案件前,請先解決所有 DAG 剖析問題。

  • 以適當方式命名 DAG (例如,DAG 名稱中不使用空格或 Tab 等不可見字元),確保系統能正確回報 DAG 的指標。

  • 升級 DAG 的程式碼,避免使用已淘汰的運算子,並改用最新替代方案。系統可能會從 Airflow 供應商移除已淘汰的運算子,這可能會影響您升級至較新版 Managed Airflow 或 Airflow 的計畫。系統也不會維護已淘汰的運算子,因此必須「照原樣」使用。

  • 使用 Secret Manager 等密鑰後端時,請設定適當的 IAM 權限,確保環境的服務帳戶有權存取。

  • 根據 Managed Airflow 最佳化指南環境調整指南,調整 Managed Airflow 環境參數 (例如 Airflow 元件的 CPU 和記憶體) 和 Airflow 設定,以符合 Managed Airflow 環境的效能和負載期望。

  • 避免移除 Managed Airflow 代理程式和環境服務帳戶所需的權限 (移除這些權限可能會導致管理作業失敗,或是 DAG 和任務失敗)。

  • 請務必一律啟用 Managed Airflow 需要的所有服務和 API。這些依附元件必須在 Managed Airflow 的必要層級設定配額。

  • 遵循建議做法和最佳做法,實作 DAG。

  • 按照排程器疑難排解DAG 疑難排解觸發器疑難排解的說明,診斷 DAG 和工作失敗情形。

  • 維護災難復原計畫,包括設定及管理快照,以滿足資料保留和業務持續性需求。Google 不會還原已刪除的環境或資料庫備份。

  • 維護客戶安裝套件的 Python 依附元件供應鏈。包括排解因 Python 依附元件不符而導致的安裝錯誤,以及在新增或修改這些套件時定義特定版本限制。

後續步驟