Managed Airflow (Gen 3) | Managed Airflow (Gen 2) | Managed Airflow (Legacy Gen 1)
Halaman ini menjelaskan cara memperbarui lingkungan.
Tentang operasi pembaruan
Saat Anda mengubah parameter lingkungan, seperti menentukan parameter penskalaan dan performa baru, atau menginstal paket PyPI kustom, lingkungan Anda akan diperbarui.
Setelah operasi ini selesai, perubahan akan tersedia di lingkungan Anda.
Untuk satu lingkungan Managed Airflow, Anda hanya dapat memulai satu operasi pembaruan dalam satu waktu. Anda harus menunggu hingga operasi pembaruan selesai sebelum memulai operasi lingkungan lainnya.
Pengaruh pembaruan terhadap tugas Airflow yang sedang berjalan
Saat Anda menjalankan operasi pembaruan, penjadwal dan pekerja Airflow di lingkungan Anda mungkin memerlukan proses memulai ulang/restart. Dalam hal ini, semua tugas yang sedang berjalan akan dihentikan. Setelah operasi pembaruan selesai, Airflow akan menjadwalkan tugas ini untuk dicoba lagi, bergantung pada cara Anda mengonfigurasi percobaan ulang untuk DAG.
Perubahan berikut menyebabkan penghentian tugas Airflow:
- Mengupgrade lingkungan Anda ke versi baru.
- Menambahkan, mengubah, atau menghapus paket PyPI kustom.
- Mengubah variabel lingkungan Managed Airflow.
- Menambahkan atau menghapus penggantian opsi konfigurasi Airflow, atau mengubah nilainya.
- Mengubah CPU, memori, atau penyimpanan pekerja Airflow.
Mengurangi jumlah maksimum pekerja Airflow, jika nilai baru lebih rendah dari jumlah pekerja yang sedang berjalan. Misalnya, jika lingkungan saat ini menjalankan tiga pekerja, dan jumlah maksimum dikurangi menjadi dua.
Perubahan berikut tidak menyebabkan penghentian tugas Airflow:
- Membuat, memperbarui, atau menghapus DAG (bukan operasi pembaruan).
- Menjeda atau melanjutkan DAG (bukan operasi pembaruan).
- Mengubah variabel Airflow (bukan operasi pembaruan).
- Mengubah koneksi Airflow (bukan operasi pembaruan).
- Mengaktifkan atau menonaktifkan integrasi Data Lineage Knowledge Catalog.
- Mengubah ukuran lingkungan.
- Mengubah jumlah penjadwal.
- Mengubah CPU, memori, atau penyimpanan penjadwal Airflow.
- Mengubah jumlah pemicu.
- Mengubah CPU, memori, atau penyimpanan pemicu Airflow.
- Mengubah CPU, memori, atau penyimpanan server web Airflow.
- Meningkatkan atau mengurangi jumlah minimum pekerja.
- Mengurangi jumlah maksimum pekerja Airflow. Misalnya, jika lingkungan saat ini menjalankan dua pekerja, dan jumlah maksimum dikurangi menjadi tiga.
- Mengubah periode pemeliharaan.
- Mengubah setelan snapshot terjadwal.
- Mengubah label lingkungan.
Memperbarui dengan Terraform
Jalankan terraform plan sebelum terraform apply untuk melihat apakah Terraform membuat lingkungan baru, bukan memperbaruinya.
Sebelum memulai
Pastikan akun Anda, akun layanan lingkungan Anda, dan akun Managed Airflow Service Agent di project Anda memiliki izin yang diperlukan:
Akun Anda harus memiliki peran yang dapat memicu operasi pembaruan lingkungan.
Akun layanan lingkungan Anda harus memiliki peran yang memiliki izin yang cukup untuk melakukan operasi pembaruan.
Perintah
gcloud composer environments updateakan dihentikan saat operasi selesai. Anda dapat menggunakan flag--asyncagar tidak perlu menunggu operasi selesai.
Memperbarui lingkungan
Untuk mengetahui informasi selengkapnya tentang cara memperbarui lingkungan, lihat halaman dokumentasi lainnya tentang operasi pembaruan tertentu. Contoh:
Melihat detail lingkungan
Konsol
Di konsol Google Cloud , buka halaman Environments.
Di daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
gcloud
Jalankan perintah gcloud berikut:
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION
Ganti:
ENVIRONMENT_NAMEdengan nama lingkungan.LOCATIONdengan region tempat lingkungan berada.
API
Buat permintaan API environments.get.
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 nama lingkungan Anda.
terraform state show google_composer_environment.RESOURCE_NAME
Ganti:
RESOURCE_NAMEdengan nama resource lingkungan Anda.
Menerapkan roll back perubahan pembaruan
Dalam beberapa situasi yang jarang terjadi, operasi pembaruan 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 tambahan, menentukan ulang atau menentukan variabel lingkungan Airflow atau Managed Airflow baru, atau mengubah beberapa parameter terkait Airflow.
Situasi seperti ini dapat terjadi jika operasi pembaruan dipicu saat operasi lain sedang berlangsung, misalnya penskalaan otomatis kluster Managed Airflow atau operasi pemeliharaan.
Dalam situasi seperti ini, sebaiknya ulangi operasi.
Durasi operasi pembaruan atau upgrade
Durasi operasi pembaruan dan upgrade dipengaruhi oleh faktor-faktor berikut:
Sebagian besar operasi pembaruan atau upgrade memerlukan proses memulai ulang/restart komponen Airflow seperti penjadwal, pekerja, dan server web Airflow. Setelah komponen dimulai ulang/restart, komponen tersebut harus diinisialisasi. Selama inisialisasi, penjadwal dan pekerja Airflow mendownload konten folder
/dagsdan/pluginsdari bucket lingkungan. Proses sinkronisasi file ke penjadwal dan pekerja Airflow tidak instan dan bergantung pada ukuran total dan jumlah semua objek dalam folder ini.Sebaiknya simpan hanya file DAG dan plugin di folder
/dagsdan/plugins(masing-masing) dan hapus semua file lainnya. Terlalu banyak data di folder/dagsdan/pluginsdapat memperlambat inisialisasi komponen Airflow dan dalam kasus tertentu dapat membuat inisialisasi tidak mungkin dilakukan.Sebaiknya simpan data kurang dari 30 MB di folder
/dagsdan/plugins, dan pastikan tidak melebihi ukuran data 100 MB. Untuk mengetahui informasi selengkapnya, lihat juga Menangani DAG dan plugin dalam jumlah besarUkuran database Airflow dapat meningkatkan waktu operasi upgrade secara signifikan. Sebaiknya pertahankan ukurandatabase Airflow lingkungan Anda dengan mengonfigurasi kebijakan retensi database.