Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Halaman ini menjelaskan cara memperbarui lingkungan.
Tentang operasi update
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 Cloud Composer, Anda hanya dapat memulai satu operasi update dalam satu waktu. Anda harus menunggu hingga operasi update selesai sebelum memulai operasi lingkungan lainnya.
Pengaruh update terhadap tugas Airflow yang sedang berjalan
Saat Anda menjalankan operasi update, penjadwal dan pekerja Airflow di lingkungan Anda mungkin memerlukan restart. Dalam hal ini, semua tugas yang sedang berjalan akan dihentikan. Setelah operasi update selesai, Airflow menjadwalkan ulang tugas ini, 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 Cloud Composer.
- Menambahkan atau menghapus opsi konfigurasi Airflow akan menggantikan, atau mengubah nilainya.
- Mengubah CPU, memori, atau penyimpanan pekerja Airflow.
Mengurangi jumlah maksimum pekerja Airflow, jika nilai baru lebih rendah daripada jumlah pekerja yang sedang berjalan. Misalnya, jika lingkungan saat ini menjalankan tiga pekerja, dan maksimum dikurangi menjadi dua.
Perubahan berikut tidak menyebabkan penghentian tugas Airflow:
- Membuat, memperbarui, atau menghapus DAG (bukan operasi update).
- Menjeda atau melanjutkan DAG (bukan operasi update).
- Mengubah variabel Airflow (bukan operasi update).
- Mengubah koneksi Airflow (bukan operasi update).
- Mengaktifkan atau menonaktifkan integrasi Silsilah Data Katalog Universal Dataplex.
- 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.
- Menambah atau mengurangi jumlah minimum pekerja.
- Mengurangi jumlah maksimum pekerja Airflow. Misalnya, jika lingkungan saat ini menjalankan dua pekerja, dan maksimum dikurangi menjadi tiga.
- Mengubah masa 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 Agen Layanan Cloud Composer 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 update.
Perintah
gcloud composer environments update
akan berakhir saat operasi selesai. Anda dapat menggunakan flag--async
agar tidak perlu menunggu operasi selesai.
Memperbarui lingkungan
Untuk mengetahui informasi selengkapnya tentang cara memperbarui lingkungan, lihat halaman dokumentasi lainnya tentang operasi update tertentu. Contoh:
Melihat detail lingkungan
Konsol
Di Google Cloud console, buka halaman Environments.
Dalam 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_NAME
dengan nama lingkungan.LOCATION
dengan 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_NAME
dengan nama resource lingkungan Anda.
Me-roll back perubahan update
Dalam 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 update mungkin menginstal atau menghapus modul PyPI tambahan, mendefinisikan ulang atau menentukan variabel lingkungan Airflow atau Cloud Composer baru, atau mengubah beberapa parameter terkait Airflow.
Situasi seperti ini dapat terjadi jika operasi update dipicu saat operasi lain sedang berlangsung, misalnya penskalaan otomatis cluster Cloud Composer atau operasi pemeliharaan.
Dalam situasi seperti itu, sebaiknya ulangi operasi.
Durasi operasi update atau upgrade
Durasi operasi update dan upgrade dipengaruhi oleh faktor-faktor berikut:
Sebagian besar operasi update atau upgrade memerlukan restart komponen Airflow seperti scheduler, worker, dan server web Airflow. Setelah dimulai ulang, komponen harus diinisialisasi. Selama inisialisasi, penjadwal dan pekerja Airflow mendownload konten folder
/dags
dan/plugins
dari bucket lingkungan. Proses menyinkronkan file ke penjadwal dan worker Airflow tidak instan dan bergantung pada total ukuran dan jumlah semua objek dalam folder ini.Sebaiknya simpan hanya file DAG dan plugin di folder
/dags
dan/plugins
(masing-masing) dan hapus semua file lainnya. Terlalu banyak data di folder/dags
dan/plugins
dapat memperlambat inisialisasi komponen Airflow dan dalam kasus tertentu dapat membuat inisialisasi tidak mungkin dilakukan.Sebaiknya simpan data kurang dari 30 MB di folder
/dags
dan/plugins
, dan jangan melebihi ukuran data 100 MB. Untuk mengetahui informasi selengkapnya, lihat juga Menangani sejumlah besar DAG dan pluginUkuran database Airflow dapat meningkatkan waktu operasi upgrade secara signifikan. Sebaiknya pertahankan ukuran database Airflow dengan memelihara database Airflow lingkungan Anda.
Mengupgrade jenis mesin untuk node GKE
Anda dapat mengupgrade jenis mesin untuk cluster GKE lingkungan secara manual dengan menghapus default-pool
yang ada dan membuat default-pool
baru dengan jenis mesin yang diinginkan.
Sebaiknya tentukan jenis mesin yang sesuai untuk jenis komputasi yang terjadi di lingkungan Cloud Composer Anda saat Anda membuat lingkungan.
Jika menjalankan tugas yang melakukan komputasi intensif resource, Anda mungkin ingin menggunakan Operator GKE.
Setelah upgrade, jenis mesin sebelumnya masih tercantum dalam detail lingkungan Anda. Misalnya, halaman detail Lingkungan tidak mencerminkan jenis mesin baru.
Konsol
Untuk mengupgrade jenis mesin:
Di Google Cloud console, buka halaman Environments.
Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.
Mendapatkan informasi tentang kumpulan node default:
Buka tab Konfigurasi lingkungan.
Klik link lihat detail cluster.
Di halaman Cluster di bagian Node, klik default-pool.
Perhatikan semua informasi untuk default-pool di halaman Node pool details. Anda akan menggunakan informasi ini untuk membuat kumpulan node default baru untuk lingkungan Anda.
Untuk menghapus default-pool:
Di halaman Node pool details, klik panah kembali untuk kembali ke halaman Clusters untuk lingkungan Anda.
Di bagian Node Pools, klik ikon sampah untuk default-pool. Kemudian, klik Hapus untuk mengonfirmasi operasi.
Untuk membuat default-pool baru:
Di halaman Clusters, klik Add node pool.
Untuk Nama, masukkan
default-pool
. Anda harus menggunakan namadefault-pool
agar alur kerja di lingkungan Anda dapat berjalan di kumpulan ini.Masukkan setelan Ukuran dan Node.
(Hanya untuk akun layanan Compute Engine default) Untuk Cakupan akses, pilih Izinkan akses penuh ke semua Cloud API.
Klik Simpan.
Jika Anda melihat bahwa workload didistribusikan secara tidak merata, turunkan skala deployment airflow-worker menjadi nol, lalu naikkan skala lagi.