Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Halaman ini menjelaskan arsitektur lingkungan Cloud Composer.
Konfigurasi arsitektur lingkungan
Lingkungan Cloud Composer 3 memiliki satu konfigurasi yang tidak bergantung pada jenis jaringan:
Project pelanggan dan tenant
Saat Anda membuat lingkungan, Cloud Composer mendistribusikan resource lingkungan antara tenant dan project pelanggan:
- Project pelanggan adalah project Google Cloud tempat Anda membuat lingkungan. Anda dapat membuat lebih dari satu lingkungan dalam satu project konsumen.
Project tenant adalah project tenant yang dikelola Google. Project tenant menyediakan kontrol akses terpadu dan lapisan keamanan data tambahan ke lingkungan Anda. Setiap lingkungan Cloud Composer memiliki project tenantnya sendiri.
Komponen lingkungan
Lingkungan Cloud Composer terdiri dari komponen lingkungan.
Komponen lingkungan adalah elemen infrastruktur Airflow terkelola yang berjalan di Google Cloud, sebagai bagian dari lingkungan Anda. Komponen lingkungan berjalan di tenant atau di project pelanggan lingkungan Anda.
Bucket lingkungan
Bucket lingkungan adalah bucket Cloud Storage yang menyimpan DAG, plugin, dependensi data, dan log Airflow. Bucket lingkungan berada di project pelanggan.
Saat Anda mengupload file DAG ke folder /dags
di bucket lingkungan, Cloud Composer akan menyinkronkan DAG ke komponen Airflow di lingkungan Anda.
Server web Airflow
Server web Airflow menjalankan UI Airflow di lingkungan Anda.
Cloud Composer memberikan akses ke antarmuka berdasarkan identitas pengguna dan binding kebijakan IAM yang ditentukan untuk pengguna.
Database Airflow
Database Airflow adalah instance Cloud SQL yang berjalan di project tenant lingkungan Anda. Database ini menghosting database metadata Airflow.
Untuk melindungi informasi alur kerja dan koneksi sensitif, Cloud Composer hanya mengizinkan akses database ke akun layanan lingkungan Anda.
Komponen aliran udara lainnya
Komponen Airflow lainnya yang berjalan di lingkungan Anda adalah:
Penjadwal Airflow mengurai file definisi DAG, menjadwalkan DAG berjalan berdasarkan interval jadwal, dan mengantrekan tugas untuk dieksekusi oleh pekerja Airflow.
Pemicu Airflow memantau semua tugas yang ditangguhkan di lingkungan Anda secara asinkron. Jika menetapkan jumlah pemicu di lingkungan di atas nol, Anda dapat menggunakan operator yang dapat ditangguhkan di DAG.
Pemroses DAG Airflow memproses file DAG dan mengubahnya menjadi objek DAG. Di Cloud Composer 3, pemroses DAG berjalan sebagai komponen lingkungan terpisah.
Pekerja Airflow menjalankan tugas yang dijadwalkan oleh penjadwal Airflow. Jumlah minimum dan maksimum pekerja di lingkungan Anda berubah secara dinamis bergantung pada jumlah tugas dalam antrean.
Arsitektur lingkungan Cloud Composer 3
Di lingkungan Cloud Composer 3:
- Project tenant menghosting instance Cloud SQL dengan database Airflow.
- Semua resource Airflow berjalan di project tenant.
- Project pelanggan menghosting bucket lingkungan.
- Lampiran jaringan VPC kustom di project pelanggan dapat digunakan untuk melampirkan lingkungan ke jaringan VPC kustom. Anda dapat menggunakan lampiran yang ada atau Cloud Composer dapat membuatnya secara otomatis sesuai permintaan. Anda juga dapat melepaskan lingkungan dari jaringan VPC.
- Konsol Google Cloud, Monitoring, dan Logging di project pelanggan menyediakan cara untuk mengelola lingkungan, DAG, dan operasi DAG, serta untuk mengakses metrik dan log lingkungan. Anda juga dapat menggunakan UI Airflow, Google Cloud CLI, Cloud Composer API, dan Terraform untuk tujuan yang sama.
Integrasi dengan Cloud Logging dan Cloud Monitoring
Cloud Composer terintegrasi dengan Cloud Logging dan Cloud Monitoring project Google Cloud Anda, sehingga Anda memiliki tempat terpusat untuk melihat log Airflow dan DAG.
Cloud Monitoring mengumpulkan dan menyerap metrik, peristiwa, dan metadata dari Cloud Composer untuk menghasilkan insight melalui dasbor dan diagram.
Karena sifat streaming Cloud Logging, Anda dapat langsung melihat log yang dikeluarkan oleh komponen Airflow, bukan menunggu log Airflow muncul di bucket Cloud Storage lingkungan Anda.
Untuk membatasi jumlah log di project Google Cloud, Anda dapat menghentikan semua penyerapan log. Jangan nonaktifkan Logging.