Mengupdate lingkungan Cloud Composer

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:

  • 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

  1. Di Google Cloud console, buka halaman Environments.

    Buka Lingkungan

  2. 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 plugin

  • Ukuran database Airflow dapat meningkatkan waktu operasi upgrade secara signifikan. Sebaiknya pertahankan ukuran database Airflow dengan mengonfigurasi kebijakan retensi database.

Langkah berikutnya