Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Halaman ini menjelaskan arsitektur lingkungan Cloud Composer.
Konfigurasi arsitektur lingkungan
Lingkungan Cloud Composer 1 dapat memiliki konfigurasi arsitektur berikut:
- Arsitektur IP publik
- Arsitektur IP pribadi dengan peering VPC
- Arsitektur IP pribadi dengan fitur Berbagi dengan domain terbatas (DRS)
Project pelanggan dan tenant
Saat Anda membuat lingkungan, Cloud Composer mendistribusikan resource lingkungan antara project pelanggan dan project tenant:
Project pelanggan adalah Google Cloud project tempat Anda membuat lingkungan. Anda dapat membuat lebih dari satu lingkungan dalam satu project pelanggan.
Project tenant adalah project tenant yang dikelola Google dan termasuk dalam organisasi Google.com. Project tenant menyediakan kontrol akses terpadu dan lapisan keamanan data tambahan untuk lingkungan Anda. Setiap lingkungan Cloud Composer memiliki project tenant-nya 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.
Cluster lingkungan
Cluster lingkungan adalah cluster Google Kubernetes Engine Standard mode VPC native atau Berbasis rute di lingkungan Anda:
Secara default, Cloud Composer mengaktifkan upgrade otomatis node dan perbaikan otomatis node untuk melindungi cluster lingkungan Anda dari kerentanan keamanan. Operasi ini terjadi selama masa pemeliharaan yang Anda tentukan untuk 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 Anda, Cloud Composer akan menyinkronkan DAG ke komponen Airflow di lingkungan Anda.
Server web Airflow
Server web Airflow menjalankan UI Airflow di lingkungan Anda.
Di Cloud Composer 1, server web Airflow berjalan di project tenant lingkungan Anda.
Server web Airflow terintegrasi dengan Identity-Aware Proxy. Cloud Composer menyembunyikan detail integrasi IAP, dan memberikan akses ke server web berdasarkan identitas pengguna dan pengikatan kebijakan IAM yang ditentukan untuk pengguna.
Di Cloud Composer 1, server web Airflow berjalan di akun layanan yang berbeda
dengan pekerja Airflow dan scheduler Airflow. Akun layanan untuk server web
dibuat secara otomatis selama pembuatan lingkungan dan berasal dari domain server web. Misalnya, jika domainnya adalah example.appspot.com
, akun
layanan adalah [email protected]
.
Database Airflow
Database Airflow adalah instance Cloud SQL yang berjalan di project tenant lingkungan Anda. Menghosting database metadata Airflow.
Untuk melindungi informasi koneksi dan alur kerja yang sensitif, Cloud Composer hanya mengizinkan akses database ke akun layanan lingkungan Anda.
Komponen airflow lainnya
Komponen Airflow lain yang berjalan di lingkungan Anda adalah:
Scheduler Airflow mengurai file definisi DAG, menjadwalkan eksekusi DAG berdasarkan interval jadwal, dan mengantrekan tugas untuk dieksekusi oleh worker Airflow. Di Cloud Composer 1 Prosesor DAG Airflow berjalan sebagai bagian dari komponen penjadwal.
Worker Airflow menjalankan tugas yang dijadwalkan oleh penjadwal Airflow.
Arsitektur lingkungan IP publik
Dalam arsitektur lingkungan IP Publik untuk Cloud Composer 1:
- Project tenant menghosting instance Cloud SQL, penyimpanan Cloud SQL, dan instance App Engine Flex yang menjalankan server web Airflow.
- Project pelanggan menghosting semua komponen lingkungan lainnya.
- Scheduler dan pekerja Airflow di project pelanggan berkomunikasi dengan database Airflow melalui instance proxy Cloud SQL yang berada di project pelanggan.
- Server web Airflow di project tenant berkomunikasi dengan database Airflow melalui instance proxy Cloud SQL yang berada di project tenant.
Arsitektur lingkungan IP pribadi
Dalam arsitektur lingkungan IP Pribadi:
- Project tenant menghosting instance Cloud SQL, penyimpanan Cloud SQL, dan dua instance App Engine yang menjalankan server web Airflow.
- Project pelanggan menghosting semua komponen lingkungan lainnya.
- Penjadwal dan pekerja Airflow terhubung ke database Airflow melalui proses HAProxy di cluster lingkungan.
- Proses HAProxy menyeimbangkan beban traffic ke instance Cloud SQL antara dua instance Proxy Cloud SQL yang berada di project tenant. Lingkungan IP Pribadi menggunakan dua instance Proxy Cloud SQL karena project pelanggan tidak mengakses database secara langsung karena batasan jaringan. Dua instance diperlukan untuk memastikan bahwa komponen lingkungan Anda memiliki akses ke database setiap saat.
IP pribadi dengan DRS
Jika kebijakan organisasi Berbagi yang Dibatasi Domain (DRS) diaktifkan di project Anda, Cloud Composer akan menggunakan arsitektur lingkungan IP Pribadi dengan DRS.
Dalam arsitektur lingkungan IP Pribadi dengan DRS:
Project tenant menghosting instance Cloud SQL, penyimpanan Cloud SQL, dan dua instance App Engine yang menjalankan server web Airflow.
Project tenant menghosting bucket lingkungan tambahan. Server web Airflow mengakses bucket ini secara langsung.
Project pelanggan menghosting semua komponen lingkungan lainnya.
Project pelanggan menghosting proses Sinkronisasi Bucket di cluster lingkungan. Proses ini menyinkronkan dua bucket lingkungan.
Penjadwal dan pekerja Airflow terhubung ke database Airflow melalui proses HAProxy di cluster lingkungan.
Proses HAProxy menyeimbangkan beban traffic ke instance Cloud SQL antara dua instance Proxy Cloud SQL yang berada di project tenant. Lingkungan IP Pribadi menggunakan dua instance Proxy Cloud SQL karena project pelanggan tidak mengakses database secara langsung karena batasan jaringan. Dua instance diperlukan untuk memastikan bahwa komponen lingkungan Anda memiliki akses ke database setiap saat.
Integrasi dengan Cloud Logging dan Cloud Monitoring
Cloud Composer terintegrasi dengan Cloud Logging dan Cloud Monitoring project Anda, sehingga Anda memiliki satu tempat terpusat untuk melihat log Airflow dan DAG. Google Cloud
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 melihat log yang dikeluarkan oleh komponen Airflow secara langsung, bukan menunggu log Airflow muncul di bucket Cloud Storage lingkungan Anda.
Untuk membatasi jumlah log dalam project Google Cloud , Anda dapat menghentikan semua penyerapan log. Jangan menonaktifkan Logging.