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 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:

  1. Di Google Cloud console, buka halaman Environments.

    Buka Lingkungan

  2. Dalam daftar lingkungan, klik nama lingkungan Anda. Halaman Environment details akan terbuka.

  3. Mendapatkan informasi tentang kumpulan node default:

    1. Buka tab Konfigurasi lingkungan.

    2. Klik link lihat detail cluster.

    3. Di halaman Cluster di bagian Node, klik default-pool.

    4. 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.

  4. Untuk menghapus default-pool:

    1. Di halaman Node pool details, klik panah kembali untuk kembali ke halaman Clusters untuk lingkungan Anda.

    2. Di bagian Node Pools, klik ikon sampah untuk default-pool. Kemudian, klik Hapus untuk mengonfirmasi operasi.

  5. Untuk membuat default-pool baru:

    1. Di halaman Clusters, klik Add node pool.

    2. Untuk Nama, masukkan default-pool. Anda harus menggunakan nama default-pool agar alur kerja di lingkungan Anda dapat berjalan di kumpulan ini.

    3. Masukkan setelan Ukuran dan Node.

    4. (Hanya untuk akun layanan Compute Engine default) Untuk Cakupan akses, pilih Izinkan akses penuh ke semua Cloud API.

    5. Klik Simpan.

  6. Jika Anda melihat bahwa workload didistribusikan secara tidak merata, turunkan skala deployment airflow-worker menjadi nol, lalu naikkan skala lagi.

Langkah berikutnya