Memperbarui lingkungan Managed Airflow

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 Knowledge Catalog Data Lineage.
  • 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 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

Memperbarui lingkungan

Untuk mengetahui informasi selengkapnya tentang cara memperbarui lingkungan, lihat halaman dokumentasi lainnya tentang operasi pembaruan tertentu. Contoh:

Melihat detail lingkungan

Konsol

  1. Di konsol Google Cloud , buka halaman Environments.

    Buka Environments

  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.

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 cluster Managed Airflow atau operasi pemeliharaan.

Dalam situasi seperti itu, 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 akan mendownload konten folder /dags dan /plugins dari 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 /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 pastikan tidak melebihi ukuran data 100 MB. Untuk mengetahui informasi selengkapnya, lihat juga Menangani DAG dan plugin dalam jumlah besar

  • Ukuran database Airflow dapat meningkatkan waktu operasi upgrade secara signifikan. Sebaiknya pertahankan ukuran 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 Managed Airflow Anda saat Anda membuat lingkungan.

Jika Anda menjalankan tugas yang melakukan komputasi yang menggunakan banyak resource, sebaiknya gunakan 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 konsol, buka halaman Environments.

    Buka Environments

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

  3. Dapatkan informasi tentang node pool default:

    1. Buka tab Environment configuration.

    2. Klik link view cluster details.

    3. Di Clusters page di bagian Nodes, klik default-pool.

    4. Catat semua informasi untuk default-pool di halaman Detail node pool. Anda menggunakan informasi ini untuk membuat node pool default baru untuk lingkungan Anda.

  4. Untuk menghapus default-pool:

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

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

  5. Untuk membuat default-pool baru:

    --scopes
    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 pool 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, lakukan penskalaan deployment airflow-worker menjadi nol dan lakukan penskalaan lagi.

Langkah berikutnya