Model tanggung jawab bersama Managed Airflow

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

Menjalankan aplikasi yang penting bagi bisnis di Managed Airflow memerlukan banyak pihak untuk mengemban tanggung jawab yang berbeda-beda. Meskipun bukan daftar lengkap, dokumen ini mencantumkan tanggung jawab bagi Google dan Pelanggan.

Tanggung Jawab Google

  • Memperkuat dan menambal komponen lingkungan Managed Airflow dan infrastruktur yang mendasarinya, termasuk cluster Google Kubernetes Engine, database Cloud SQL (yang menghosting database Airflow database), Pub/Sub, Artifact Registry, dan elemen lingkungan lainnya. Secara khusus, hal ini mencakup upgrade otomatis infrastruktur yang mendasarinya, termasuk cluster GKE dan instance Cloud SQL lingkungan.

  • Melindungi akses ke lingkungan Managed Airflow melalui penggabungan kontrol akses yang disediakan oleh IAM, mengenkripsi data dalam penyimpanan secara default, menyediakan enkripsi penyimpanan yang dikelola pelanggan tambahan, mengenkripsi data saat transit.

  • Menyediakan Google Cloud integrasi untuk Identity and Access Management, Cloud Audit Logs dan Cloud Key Management Service.

  • Membatasi dan mencatat akses administratif Google ke cluster pelanggan untuk tujuan dukungan kontrak dengan Transparansi Akses dan Persetujuan Akses.

  • Mempublikasikan informasi tentang perubahan yang tidak kompatibel untuk versi lama antara Managed Airflow dan Airflow dalam Catatan Rilis Managed Airflow.

  • Memastikan dokumentasi Managed Airflow selalu terbaru:

    • Memberikan deskripsi semua fungsi yang disediakan oleh Managed Airflow.

    • Memberikan petunjuk pemecahan masalah yang membantu menjaga lingkungan dalam kondisi yang baik.

    • Mempublikasikan informasi tentang masalah umum dengan solusinya (jika ada).

  • Menyelesaikan insiden keamanan penting yang terkait dengan lingkungan Managed Airflow dan image Airflow yang disediakan oleh Managed Airflow (tidak termasuk paket Python yang diinstal pelanggan) dengan menyediakan versi lingkungan baru yang mengatasi insiden tersebut.

  • Tergantung pada Paket Dukungan pelanggan, pemecahan masalah terkait masalah kesehatan lingkungan Managed Airflow.

  • Mempertahankan dan memperluas fungsi penyedia Managed Airflow Terraform.

  • Bekerja sama dengan komunitas Apache Airflow untuk mempertahankan dan mengembangkan operator Google Airflow.

  • Memecahkan masalah dan, jika memungkinkan, memperbaiki masalah pada fungsi inti Airflow.

Tanggung jawab pelanggan

  • Mengupgrade ke versi Managed Airflow dan Airflow baru untuk mempertahankan dukungan terhadap produk dan menyelesaikan masalah keamanan setelah layanan Managed Airflow memublikasikan versi Managed Airflow yang mengatasi masalah tersebut.

  • Mempertahankan kode DAG agar tetap kompatibel dengan versi Airflow yang digunakan.

  • Mempertahankan konfigurasi cluster GKE lingkungan, terutama termasuk fitur upgrade otomatisnya.

  • Mempertahankan izin yang tepat di IAM untuk akun layanan lingkungan. Secara khusus, mempertahankan izin yang diperlukan oleh Managed Airflow Agent dan akun layanan lingkungan. Mempertahankan izin yang diperlukan untuk kunci CMEK yang digunakan untuk enkripsi lingkungan Managed Airflow dan merotasinya sesuai kebutuhan Anda.

  • Mempertahankan izin yang tepat di IAM untuk bucket lingkungan dan repositori Artifact Registry tempat image komponen Managed Airflow disimpan .

  • Mempertahankan izin IAM yang tepat untuk akun layanan yang melakukan penginstalan paket PyPI. Untuk mengetahui informasi selengkapnya, lihat Kontrol akses.

  • Mempertahankan izin pengguna akhir yang tepat dalam konfigurasi IAM dan Kontrol Akses UI Airflow.

  • Mempertahankan ukuran database Airflow di bawah 16 GB dengan menggunakan DAG pemeliharaan.

  • Menyelesaikan semua masalah parsing DAG sebelum mengajukan kasus dukungan ke Cloud Customer Care.

  • Memberi nama DAG dengan cara yang benar (misalnya, tanpa menggunakan karakter tidak terlihat seperti SPACE atau TAB dalam nama DAG) sehingga metrik dapat dilaporkan dengan benar untuk DAG.

  • Mengupgrade kode DAG agar tidak menggunakan operator yang tidak digunakan lagi dan bermigrasi ke alternatifnya yang terbaru. Operator yang tidak digunakan lagi mungkin dihapus dari penyedia Airflow, yang dapat memengaruhi rencana Anda untuk mengupgrade ke versi Managed Airflow atau Airflow yang lebih baru. Operator yang tidak digunakan lagi juga tidak dipertahankan dan harus digunakan 'apa adanya'.

  • Mengonfigurasi izin IAM yang tepat saat menggunakan backend rahasia seperti Secret Manager sehingga akun layanan lingkungan memiliki akses ke backend tersebut.

  • Menyesuaikan parameter lingkungan Managed Airflow (seperti CPU dan memori untuk komponen Airflow) dan konfigurasi Airflow untuk memenuhi ekspektasi performa dan beban lingkungan Managed Airflow menggunakan panduan pengoptimalan Managed Airflow dan panduan penskalaan lingkungan.

  • Menghindari penghapusan izin yang diperlukan oleh Managed Airflow Agent dan akun layanan lingkungan (menghapus izin ini dapat menyebabkan operasi pengelolaan gagal atau DAG dan tugas gagal).

  • Memastikan semua layanan dan API yang diperlukan oleh Managed Airflow selalu diaktifkan. Dependensi ini harus memiliki kuota yang dikonfigurasi pada tingkat yang diperlukan untuk Managed Airflow.

  • Mempertahankan repositori Artifact Registry yang menghosting image container yang digunakan oleh lingkungan Managed Airflow.

  • Mengikuti rekomendasi dan praktik terbaik untuk menerapkan DAG.

  • Mendiagnosis kegagalan DAG dan tugas menggunakan petunjuk untuk pemecahan masalah penjadwal, pemecahan masalah DAG dan pemecahan masalah pemicu.

  • Menghindari penginstalan atau menjalankan komponen tambahan di cluster GKE lingkungan yang mengganggu komponen Managed Airflow dan mencegahnya berfungsi dengan benar.

  • Mempertahankan rencana pemulihan dari bencana, termasuk mengonfigurasi dan mengelola snapshot untuk memenuhi kebutuhan retensi data dan kelangsungan bisnis Anda. Google tidak memulihkan lingkungan yang dihapus atau cadangan databasenya.

  • Mempertahankan rantai pasokan dependensi Python untuk paket yang diinstal oleh pelanggan. Hal ini mencakup pemecahan masalah penginstalan error yang disebabkan oleh ketidakcocokan dependensi Python dan menentukan batasan versi tertentu saat menambahkan atau mengubah paket ini.

Langkah berikutnya