Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Halaman ini menjelaskan cara memperbarui lingkungan.
Tentang operasi update
Saat Anda mengubah parameter lingkungan, seperti menentukan penskalaan baru dan parameter performa, atau menginstal paket PyPI kustom, pembaruan lingkungan.
Setelah operasi ini selesai, perubahan akan tersedia di lingkungan fleksibel App Engine.
Untuk satu lingkungan Cloud Composer, Anda hanya dapat memulai satu operasi update dalam satu waktu. Anda harus menunggu hingga operasi update selesai sebelum memulai operasi lingkungan yang lain.
Batas CPU pemicu
Cloud Composer di versi 2.4.4 memperkenalkan performa yang berbeda pendekatan penskalaan untuk pemicu Airflow yang berlaku untuk semua versi Cloud Composer 2.
Sebelum versi 2.4.4, lingkungan Cloud Composer dapat menggunakan maksimum 1 atau 2 pemicu. Setelah perubahan, Anda dapat memiliki hingga 10 pemicu per lingkungan, tetapi setiap pemicu dibatasi hingga maksimum 1 vCPU.
Operasi update lingkungan akan gagal jika lingkungan Anda dikonfigurasi dengan lebih banyak dari 1 vCPU per pemicu. Anda harus menyesuaikan konfigurasi agar memenuhi batas 1 vCPU untuk melakukan pembaruan pada komponen lain.
Untuk informasi selengkapnya, lihat:
- Mengonfigurasi alokasi resource pemicu
- Menyesuaikan jumlah pemicu
- Memecahkan masalah upgrade lingkungan - CPU pemicu terlampaui
Pengaruh update terhadap pelaksanaan tugas Airflow
Saat Anda menjalankan operasi update, penjadwal dan pekerja di lingkungan Anda mungkin memerlukan {i>restart<i}. Dalam kasus ini, semua tugas yang sedang berjalan akan dihentikan. Setelah operasi pembaruan selesai, Airflow menjadwalkan tugas ini untuk dicoba ulang, bergantung pada cara Anda mengonfigurasi percobaan ulang untuk DAG.
Perubahan berikut menyebabkan penghentian tugas Airflow:
- Upgrade lingkungan Anda ke versi baru.
- Menambahkan, mengubah, atau menghapus paket PyPI kustom.
- Mengubah variabel lingkungan Cloud Composer.
- Menambahkan atau menghapus penggantian opsi konfigurasi Airflow, atau mengubah masing-masing.
- Mengubah pekerja Airflow CPU, memori, atau penyimpanan.
- Mengurangi jumlah maksimum worker Airflow, jika nilai barunya lebih rendah dari jumlah pekerja yang sedang berjalan. Misalnya, jika saat ini menjalankan tiga worker, dan jumlah maksimumnya dikurangi menjadi dua.
- Mengubah mode ketahanan lingkungan.
Perubahan berikut tidak menyebabkan penghentian tugas Airflow:
- Membuat, mengupdate, atau menghapus DAG (bukan operasi update).
- Menjeda atau membatalkan jeda DAG (bukan operasi update).
- Mengubah variabel Airflow (bukan operasi update).
- Mengubah koneksi Airflow (bukan operasi update).
- Mengaktifkan atau menonaktifkan integrasi Dataplex Data Lineage.
- Mengubah ukuran lingkungan.
- Mengubah jumlah penjadwal.
- Mengubah penjadwal Airflow CPU, memori, atau penyimpanan.
- Mengubah jumlah pemicu.
- Mengubah pemicu Airflow CPU, memori, atau penyimpanan.
- Mengubah CPU, memori, atau penyimpanan server web Airflow.
- Menambah atau mengurangi jumlah minimum pekerja.
- Mengurangi jumlah maksimum worker Airflow. Misalnya, jika saat ini menjalankan dua worker, dan jumlah maksimumnya dikurangi menjadi tiga.
- Mengubah masa pemeliharaan.
- Mengubah setelan snapshot terjadwal.
- Mengubah label lingkungan.
Mengupdate dengan Terraform
Jalankan terraform plan
sebelum terraform apply
untuk melihat apakah Terraform membuat elemen baru
bukan memperbaruinya.
Sebelum memulai
Periksa apakah akun Anda, akun layanan lingkungan, dan akun Agen Layanan Cloud Composer di project Anda memiliki izin yang diperlukan:
Akun Anda harus memiliki peran yang dapat memicu operasi update lingkungan.
Akun layanan lingkungan Anda harus memiliki peran yang memiliki izin yang cukup untuk melakukan operasi update.
Akun Agen Layanan Cloud Composer harus memiliki izin untuk membuat binding di antara akun layanan lingkungan Anda dan akun layanan Kubernetes milik cluster lingkungan Anda.
Perintah
gcloud composer environments update
dihentikan saat selesai. Anda dapat menggunakan flag--async
agar tidak perlu menunggu sehingga operasi selesai.
Mengupdate lingkungan
Untuk informasi selengkapnya tentang cara memperbarui lingkungan, lihat dokumentasi lainnya halaman tentang operasi pembaruan tertentu. Contoh:
- Mengganti opsi konfigurasi Airflow
- Menetapkan variabel lingkungan
- Menginstal dependensi Python
- Menskalakan lingkungan
- Mengonfigurasi jaringan yang diizinkan
- Memperbarui lingkungan untuk mencapai ketahanan tinggi
Lihat detail lingkungan
Konsol
Di Konsol Google Cloud, buka halaman Environments.
Pada daftar lingkungan, klik nama lingkungan Anda. Halaman Detail lingkungan akan terbuka.
gcloud
Jalankan perintah gcloud
berikut:
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION
Ganti:
ENVIRONMENT_NAME
dengan nama lingkungan.LOCATION
dengan region tempat lingkungan berada.
API
Buat permintaan environments.get
API.
Contoh:
GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment
Terraform
Jalankan perintah terraform state show
untuk resource lingkungan Anda.
Nama resource Terraform lingkungan Anda mungkin berbeda dengan yang nama lingkungan Anda.
terraform state show google_composer_environment.RESOURCE_NAME
Ganti:
RESOURCE_NAME
dengan nama resource lingkungan Anda.
Melakukan roll back perubahan update
Dalam beberapa situasi yang jarang terjadi, operasi update mungkin terganggu (misalnya, karena waktu tunggu habis) dan perubahan yang diminta mungkin tidak di-roll back di semua komponen lingkungan (seperti server web Airflow).
Misalnya, operasi pembaruan mungkin menginstal atau menghapus Modul PyPI, menentukan ulang atau menentukan Airflow atau Cloud Composer baru variabel lingkungan, atau mengubah beberapa parameter terkait Airflow.
Situasi tersebut dapat terjadi jika operasi pembaruan dipicu saat operasi sedang berlangsung. Misalnya, instance cluster Cloud Composer penskalaan otomatis, atau operasi pemeliharaan.
Dalam situasi seperti ini, sebaiknya ulangi operasi.
Durasi operasi update atau upgrade
Sebagian besar operasi update atau upgrade memerlukan memulai ulang komponen Airflow seperti penjadwal Airflow, pekerja, dan server web.
Setelah dimulai ulang, komponen harus diinisialisasi. Selama
inisialisasi, penjadwal Airflow, dan pekerja mendownload konten /dags
dan /plugins
folder dari bucket lingkungan. Proses sinkronisasi
ke penjadwal dan pekerja Airflow tidak seketika dan bergantung pada
ukuran total dan jumlah
semua objek dalam folder ini.
Sebaiknya hanya simpan file DAG dan plugin di /dags
dan /plugins
folder (masing-masing) dan menghapus semua file lainnya. Terlalu banyak data
di folder /dags
dan /plugins
mungkin memperlambat inisialisasi Airflow
komponen dan dalam kasus tertentu mungkin
membuat inisialisasi menjadi tidak mungkin.
Sebaiknya simpan data kurang dari 30 MB di folder /dags
dan /plugins
, dan pastikan tidak melebihi ukuran data 100 MB.
Untuk informasi selengkapnya, lihat juga: