Halaman ini menjelaskan pembuatan versi Cloud Composer dan mencantumkan perbedaan antara versi utama Cloud Composer.
Versi utama Cloud Composer
Cloud Composer memiliki versi utama berikut:
- Cloud Composer 1. Memiliki penskalaan lingkungan manual, infrastruktur di-deploy ke project dan jaringan Anda.
- Cloud Composer 2. Dalam versi ini, cluster lingkungan akan diskalakan secara otomatis untuk memenuhi permintaan resource.
- Cloud Composer 3. Versi ini menyederhanakan penyiapan jaringan dan menyembunyikan komponen infrastruktur, termasuk cluster lingkungan dan dependensi lingkungan pada layanan lain.
Perbandingan versi Cloud Composer
Tabel berikut mencantumkan perbedaan utama antara Cloud Composer 1, Cloud Composer 2, dan Cloud Composer 3.
Fitur | Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3 |
---|---|---|---|
Versi image | composer-1.b.c-airflow-x.y.z |
composer-2.b.c-airflow-x.y.z |
composer-3-airflow-x.y.z-build.t |
Versi Airflow | Airflow 1.10.* dan Airflow 2 | Airflow 2 | Airflow 2 |
Versi Python | 3.8.12 | 3.11.8 (3.11.5 dan 3.8.12 di versi sebelumnya) | 3.11.8 |
Cluster lingkungan | Cluster Google Kubernetes Engine berbasis Rute atau VPC native mode Standar | Cluster Google Kubernetes Engine VPC-native mode Autopilot | Cluster lingkungan tidak di-deploy ke project Anda. |
Penskalaan horizontal | Dapat menyesuaikan jumlah node di cluster lingkungan. Tindakan ini akan mengubah jumlah pekerja Airflow. Dapat menyesuaikan jumlah penjadwal Airflow. |
Menskalakan jumlah pekerja Airflow secara otomatis, berdasarkan permintaan. Dapat menetapkan dan mengubah batas atas dan bawah untuk jumlah pekerja. Dapat menyesuaikan jumlah penjadwal dan pemicu Airflow |
Menskalakan jumlah pekerja Airflow secara otomatis, berdasarkan permintaan. Dapat menetapkan dan mengubah batas atas dan bawah untuk jumlah pekerja. Dapat menyesuaikan jumlah penjadwal, pemicu, dan pemroses DAG Airflow |
Penskalaan vertikal | Dapat menetapkan jenis mesin untuk node cluster, server web Airflow, dan database saat membuat lingkungan. Dapat mengubah jenis mesin untuk server web dan database Airflow. | Dapat menetapkan dan mengubah konfigurasi workload: parameter CPU, memori, dan penyimpanan untuk pekerja, penjadwal, server web Airflow, dan ukuran lingkungan. | Dapat menetapkan dan mengubah konfigurasi beban kerja: CPU, memori, dan parameter penyimpanan untuk pekerja, scheduler, server web, pemroses DAG, dan ukuran lingkungan Airflow. |
Model penetapan harga | Model harga Cloud Composer 1 | Model harga Cloud Composer 2 | Model harga Cloud Composer 3 |
Kontrol akses | Peran Cloud Composer 1 | Peran Cloud Composer. Menggunakan Workload Identity Federation untuk GKE dan memerlukan izin tambahan untuk akun Agen Layanan Cloud Composer. | Peran Cloud Composer. Menggunakan Workload Identity Federation for GKE. Izin tambahan tidak diperlukan |
Akses melalui Workforce Identity Federation | Tidak didukung | Didukung | Didukung |
Lingkungan yang Sangat Tangguh | Tidak didukung | Didukung | Belum tersedia |
Kebijakan retensi database | Tidak didukung | Belum tersedia | Didukung |
Jaringan IP pribadi | Peering VPC | Private Service Connect | Penyiapan jaringan yang disederhanakan. Dapat diubah antara IP Publik dan Pribadi di lingkungan yang ada. |
Kontrol Layanan VPC | Didukung | Didukung | Didukung |
Eksekutor Airflow | Celery Executor | Celery Executor | CeleryKubernetes Executor |
Pemicu Airflow (operator yang dapat ditangguhkan) | Tidak didukung | Didukung | Didukung |
Akun layanan kustom untuk KubernetesPodOperator | Didukung | Didukung | Tidak didukung |
CMEK | Didukung | Didukung | Didukung |
Kontrol akses server web | Didukung | Didukung | Didukung |
Memulai ulang server web | Didukung | Didukung | Didukung |
Plugin server web | Didukung di lingkungan Airflow 1 dengan serialisasi DAG yang dinonaktifkan. | Didukung | Didukung, plugin dapat dinonaktifkan dan diaktifkan sesuai permintaan. |
Plugin penjadwal | Tidak didukung | Didukung | Tidak didukung |
Paket PyPI kustom penjadwal | Tidak didukung | Didukung | Tidak didukung |
Menginstal plugin kustom | Didukung | Didukung | Didukung |
Operasi pemeliharaan | Semua tugas dapat terpengaruh. | Tugas yang memerlukan waktu kurang dari 55 menit untuk dieksekusi tidak akan terpengaruh. | Tugas yang memerlukan waktu kurang dari 24 jam untuk dieksekusi tidak akan terpengaruh. |
Menyimpan Snapshot | Didukung untuk Airflow versi 2.x dan 1.10.15 | Didukung | Didukung |
Memuat Snapshot | Tidak didukung | Didukung | Didukung |
Snapshot Terjadwal | Tidak didukung | Didukung | Didukung |
Bucket lingkungan kustom | Tidak didukung | Didukung | Didukung |
Menyimpan log tugas Airflow hanya di Cloud Logging | Tidak didukung | Didukung | Didukung |
Integrasi silsilah data | Tidak didukung | Didukung | Didukung |
Alat CLI Pengembangan Lokal Composer | Tidak didukung | Didukung | Didukung |
Image Cloud Composer
Untuk menjalankan Apache Airflow, Cloud Composer membuat image Docker yang menggabungkan rilis Airflow dengan biner umum dan library Python lainnya.
Image Cloud Composer mencakup modifikasi Airflow yang khusus untuk Cloud Composer dan tidak sesuai untuk codebase Airflow upstream. Setiap image Cloud Composer berisi paket yang telah diinstal sebelumnya bersama dengan perubahan Airflow khusus Cloud Composer.
Google merilis image Cloud Composer baru secara berkala:
Di Cloud Composer 3, image mencakup build baru dari versi Airflow yang didukung. Anda dapat memilih versi Airflow dan build yang ingin digunakan. Lingkungan Anda akan mendapatkan peningkatan Cloud Composer secara otomatis.
Di Cloud Composer 2 dan Cloud Composer 1, image mencakup peningkatan Cloud Composer dan build baru versi Airflow yang didukung. Untuk mendapatkan peningkatan Cloud Composer, Anda harus mengupgrade lingkungan ke Cloud Composer versi yang lebih baru.
Penghentian penggunaan dan dukungan versi
Komposer 3
Google mendukung build Airflow selama jangka waktu tertentu setelah dirilis:
0-12 bulan sejak tanggal rilis: Lingkungan Cloud Composer 3 yang menjalankan build Airflow ini didukung.
12+ bulan sejak tanggal rilis: Lingkungan Cloud Composer 3 yang menjalankan versi ini tidak didukung.
Setelah build Airflow tidak lagi didukung, lingkungan yang menjalankan build Airflow ini juga tidak didukung dan sepenuhnya dikelola pengguna.
Lingkungan berfungsi dengan build Airflow yang didukung dan tidak didukung dengan cara berikut:
Anda dapat membuat lingkungan dengan semua build Airflow yang didukung.
Anda masih dapat menggunakan lingkungan dengan build Airflow yang tidak lagi didukung. Lingkungan masih berfungsi, Anda dapat terus menggunakannya, dan Anda dapat mengupgradenya ke build Airflow yang didukung.
Dalam beberapa kasus, upgrade ke versi atau build Airflow yang lebih baru adalah satu-satunya solusi yang tersedia untuk kerentanan keamanan.
Composer 2
Google mendukung versi Cloud Composer 2 selama jangka waktu tertentu setelah rilis versi:
0-12 bulan sejak tanggal rilis: Lingkungan Cloud Composer 2 yang menjalankan versi ini didukung.
12+ bulan sejak tanggal rilis: Lingkungan Cloud Composer 2 yang menjalankan versi ini tidak didukung.
Anda dapat menggunakan versi Cloud Composer setelah tanggal versi tersebut tidak lagi didukung. Misalnya, jika lingkungan Anda didasarkan pada versi Cloud Composer yang telah melewati periode dukungan, lingkungan tersebut tetap berfungsi dan Anda dapat terus menggunakannya. Dalam hal ini, sebaiknya Anda mengupgrade lingkungan ke versi yang didukung.
Composer 1
Versi Cloud Composer 1 baru dirilis hingga akhir Maret 2023. Semua versi Cloud Composer 1 yang dirilis mengikuti kebijakan penghentian penggunaan versi yang sama dengan Cloud Composer 2 dan didukung sesuai dengan kebijakan tersebut.
Dukungan versi Airflow
Airflow mengikuti skema pembuatan versi software semantik. Setiap versi Airflow memiliki versi utama, minor, dan patch.
Komposer 3
Di Cloud Composer 3, versi dan build Airflow baru akan tersedia seiring berjalannya waktu.
Lingkungan Anda dapat berfungsi dengan semua versi dan build Airflow sebelumnya, dan menerima update pada komponen infrastrukturnya secara otomatis. Setiap versi dan build didukung seperti yang dijelaskan dalam Penghentian penggunaan dan dukungan versi, dan Anda dapat memilih untuk mengupgrade versi Airflow ke versi atau build yang lebih baru.
Composer 2
Untuk mengetahui daftar versi Airflow yang didukung di setiap versi Cloud Composer, lihat daftar versi Cloud Composer.
Di setiap rilis, Cloud Composer 2 mendukung dua versi minor Airflow 2.
Misalnya, Cloud Composer 2.4.0 mendukung Airflow 2.4.* dan Airflow 2.5.*.
Untuk setiap versi minor Airflow 2, Cloud Composer mendukung satu versi patch.
Misalnya, untuk Airflow 2.4.*, Cloud Composer mendukung Airflow 2.4.3.
Saat versi patch baru Airflow 2 tersedia di Cloud Composer, rilis yang sesuai memiliki dua versi patch Airflow 2 yang tersedia untuk versi minor Airflow yang sama. Versi patch sebelumnya kemudian dihapus dalam salah satu rilis berikutnya.
Misalnya, Cloud Composer 2.3.4 mendukung Airflow 2.5.1 dan Airflow 2.5.3.
Cloud Composer dapat melewati beberapa versi patch Airflow di antara rilis Cloud Composer. Selain itu, jika ada masalah fungsional, kualitas, atau performa pada versi patch Airflow tertentu, Cloud Composer juga dapat melewati versi ini.
Misalnya, Airflow 2.1.3 dilewati dan Airflow 2.1.4 tersedia.
Rilis Cloud Composer yang menjalankan versi Airflow stabil dapat mencakup update Airflow yang di-backport dari versi Airflow yang lebih baru.
Composer 1
Versi Airflow terbaru yang didukung di Cloud Composer 1 adalah Airflow 2.4.3.
Hanya Cloud Composer 1 yang mendukung Airflow 1.10.15, yang merupakan versi Airflow 1 terbaru yang dirilis.
Skema versi Cloud Composer
Komposer 3
Skema pembuatan versi Cloud Composer 3 mencakup versi dan build Airflow:
composer-3-airflow-x.y.z-build.t
Dengan:
composer-3
adalah versi utama Cloud Composer.airflow-x.y.z.build.t
adalah versi dan build Airflow. Setiap rilis berikutnya dari versi Airflow yang sama di Cloud Composer 3 memiliki nomor build yang lebih tinggi. Nomor build ditentukan oleh Cloud Composer, bukan oleh project open source Airflow.
Composer 2
Skema pembuatan versi image Cloud Composer 2 mencakup versi Cloud Composer dan Airflow:
composer-2.b.c-airflow-x.y.z
Dengan:
composer-2.b.c
menunjukkan versi patch dan versi minor penyesuaian yang dikelola Cloud Composer di Cloud Composer 2. Sebagai aturan umum, versi minor Cloud Composer sesuai dengan perubahan signifikan dalam fungsi dibandingkan dengan versi minor sebelumnya, seperti saat set versi Airflow yang tersedia diubah. Versi patch akan diupdate dalam rilis berikutnya.airflow-x.y.z
adalah rilis Airflow, yang menunjukkan versi utama, versi sekunder, dan versi patch Airflow yang digunakan dalam image Cloud Composer tertentu.
Composer 1
Skema pembuatan versi image Cloud Composer 1 mencakup versi Cloud Composer dan Airflow:
composer-1.b.c-airflow-x.y.z
Dengan:
composer-1.b.c
adalah versi penyesuaian yang dikelola Cloud Composerairflow-x.y.z
adalah rilis Airflow
Alias versi
Alias versi berfungsi dengan cara berikut:
Cloud Composer menyelesaikan alias versi ke format lengkap saat membuat lingkungan Anda:
- Semua alias versi menjadi
composer-3-airflow-x.y.z-build.t
di Cloud Composer 3. - Semua alias versi menjadi
composer-a.b.c-airflow-x.y.z
di Cloud Composer 2 dan Cloud Composer 1.
- Semua alias versi menjadi
Di Cloud Composer 3, menggunakan alias versi, seperti
composer-3-airflow-x.y
tidak akan otomatis mengupgrade versi dan build Airflow lingkungan Anda. Lingkungan tetap menggunakan build dan versi Airflow yang sama hingga Anda mengupgradenya. Lingkungan tetap menerima upgrade infrastruktur otomatis seperti biasa.Di Cloud Composer 2 dan Cloud Composer 1, menggunakan alias versi, seperti
composer-a-airflow-x.y.z
tidak menyediakan upgrade otomatis untuk lingkungan. Lingkungan tetap menggunakan versi Cloud Composer dan Airflow yang sama hingga Anda mengupgradenya.
Alias versi Cloud Composer 3
Cloud Composer 3 mendukung alias versi berikut:
Alias | Versi Airflow |
---|---|
composer-3-airflow-2 |
Versi dan build terbaru Airflow 2 |
composer-3-airflow-x.y |
Versi dan build Airflow terbaru dalam versi utama dan minor x.y |
composer-3-airflow-x.y.z |
Build terbaru dari versi Airflow yang ditentukan |
Alias versi Cloud Composer 2
Cloud Composer 2 mendukung alias versi berikut:
Alias | Versi Cloud Composer | Versi Airflow |
---|---|---|
composer-2-airflow-2 |
Versi terbaru Cloud Composer 2 | Versi terbaru Airflow 2 |
composer-2-airflow-x.y |
Versi terbaru Cloud Composer 2 | Versi terbaru Airflow dalam versi utama dan minor x.y |
composer-2-airflow-x.y.z |
Versi terbaru Cloud Composer 2 | Versi Airflow yang ditentukan |
composer-2.b.c-airflow-x.y |
Versi Cloud Composer 2 yang ditentukan | Versi terbaru Airflow tersedia dalam versi utama dan minor x.y |
Alias versi Cloud Composer 1
Cloud Composer 1 mendukung alias versi berikut:
Alias | Versi Cloud Composer | Versi Airflow |
---|---|---|
composer-1-airflow-2 |
Versi terbaru Cloud Composer 1 | Versi terbaru Airflow 2 |
composer-1-airflow-1 |
Versi terbaru Cloud Composer 1 | Versi terbaru Airflow 1 |
composer-1-airflow-x.y |
Versi terbaru Cloud Composer 1 | Versi terbaru Airflow dalam versi utama dan minor x.y |
composer-1-airflow-x.y.z |
Versi terbaru Cloud Composer 1 | Versi Airflow yang ditentukan |
composer-1.b.c-airflow-x.y |
Versi Cloud Composer 1 yang ditentukan | Versi terbaru Airflow tersedia dalam versi utama dan minor x.y . |
Alias versi berikut mengarah ke Cloud Composer 2. Anda tetap dapat menggunakannya, tetapi sebaiknya beralih ke alias untuk versi Cloud Composer Anda.
composer-latest-airflow-x.y
sama dengancomposer-2-airflow-x.y
.composer-latest-airflow-x.y.z
sama dengancomposer-2-airflow-x.y.z
.
Argumen versi di Google Cloud CLI
Saat membuat atau mengupgrade lingkungan Cloud Composer menggunakan Google Cloud CLI, Anda dapat menentukan versi Cloud Composer dan Airflow:
Komposer 3
Argumen
--image-version
menentukan versi dan build Airflow dalam formatcomposer-3-airflow-x.y.z-build.t
. Anda dapat menggunakan alias versi, yang di-resolve oleh Google Cloud CLI ke dalam format lengkap.--airflow-version
menentukan versi Airflow dalam format berikut:Format
x.y.z
adalah untuk build terbaru Airflow versi yang ditentukan. Format ini sama dengan alias versicomposer-3-airflow-x.y.z
.Format
x.y
adalah untuk build terbaru Airflow yang tersedia dalam versi utama dan minorx.y
. Format ini sama dengan alias versicomposer-3-airflow-x.y
.x.y.z-build.t
adalah versi dan build Airflow yang ditentukan. Format ini sama dengancomposer-3-airflow-x.y.z-build.t
.
Composer 2
Argumen
--image-version
menentukan Cloud Composer 2 dan versi Airflow:- Format
composer-a.b.c-airflow-x.y.z
membuat lingkungan dengan versi Cloud Composer dan Airflow yang ditentukan. - Alias versi terlebih dahulu di-resolve ke
format
composer-a.b.c-airflow-x.y.z
, lalu membuat lingkungan dengan versi Cloud Composer 2 dan Airflow yang ditentukan.
- Format
--airflow-version
menentukan versi Airflow dalam format berikut:Format
x.y.z
adalah untuk Cloud Composer 2 versi terbaru dan Airflow versi yang ditentukan. Format ini sama dengan alias versicomposer-2-airflow-x.y.z
.Format
x.y
adalah untuk Cloud Composer 2 versi terbaru dan Airflow versi terbaru yang tersedia dalam versi utama dan versi minorx.y
. Format ini sama dengan alias versicomposer-2-airflow-x.y
.
Composer 1
Argumen
--image-version
menentukan Cloud Composer 1 dan versi Airflow:- Format
composer-a.b.c-airflow-x.y.z
membuat lingkungan dengan versi Cloud Composer dan Airflow yang ditentukan. - Alias versi pertama-tama diselesaikan ke format
composer-a.b.c-airflow-x.y.z
, lalu membuat lingkungan dengan versi Cloud Composer 1 dan Airflow yang ditentukan.
- Format
--airflow-version
menentukan versi Airflow dalam format berikut:Format
x.y.z
adalah untuk Cloud Composer 1 versi terbaru dan Airflow versi yang ditentukan. Format ini sama dengan alias versicomposer-1-airflow-x.y.z
.Format
x.y
adalah untuk Cloud Composer 1 versi terbaru dan Airflow versi terbaru yang tersedia dalam versi utama dan versi minorx.y
. Format ini sama dengan alias versicomposer-1-airflow-x.y
.