Realtime Compute for Apache Flink merilis versi engine baru yang mencakup pembaruan fitur, peningkatan performa, dan perbaikan bug. Lakukan upgrade versi engine deployment untuk memanfaatkan peningkatan tersebut. Topik ini mencakup proses upgrade, aturan kompatibilitas versi, serta instruksi rollback.
Sebelum memulai
Tinjau aturan kompatibilitas dan langkah persiapan berikut sebelum melakukan upgrade.
Kompatibilitas versi
Secara umum, versi minor dalam versi utama yang sama saling kompatibel. Checkpoint dan savepoint yang dihasilkan sebelum upgrade tetap dapat digunakan.
| Upgrade type | Example | State compatibility |
|---|---|---|
| Minor version | vvr-4.0.15-flink-1.13 ke vvr-4.0.18-flink-1.13 | Compatible |
| Major version | vvr-4.0.15-flink-1.13 ke vvr-6.0.2-flink-1.15 | Not guaranteed. Restart without state data. |
Untuk detail penomoran versi, lihat bagian "Engine version and meaning of each digit in a version number" pada Engine version. Untuk matriks kompatibilitas upstream, lihat "Compatibility Table" dalam Upgrading Applications and Flink Versions.
Pemilihan format savepoint (Ververica Runtime 6.X dan versi lebih baru)
Realtime Compute for Apache Flink yang menggunakan Ververica Runtime (VVR) 6.X atau versi lebih baru mendukung dua format savepoint:
| Format | Advantage | Best for |
|---|---|---|
| Native format | Faster savepoint generation | Minor version upgrades (same major version) |
| Standard format | Better cross-version compatibility | Major version upgrades |
Versi engine baru dapat membaca savepoint dari versi lama, tetapi sebaliknya tidak selalu berlaku. Versi engine lama mungkin tidak dapat membaca savepoint yang dihasilkan oleh versi engine baru.
Penyelarasan versi dependensi
Versi dependensi Realtime Compute for Apache Flink dalam deployment SQL atau DataStream harus sama dengan versi Realtime Compute for Apache Flink yang dipilih untuk deployment tersebut.
Kompatibilitas BlinkPlanner (Apache Flink 1.13.0 dan versi lebih baru)
Apache Flink 1.13.0 dan versi lebih baru menggunakan BlinkPlanner sebagai SQL Planner default. BlinkPlanner disumbangkan ke komunitas Apache Flink oleh Alibaba Group. Jika Anda melakukan migrasi dari versi Apache Flink sebelum 1.13.0 ke VVR 4.0 atau versi lebih baru (berbasis Apache Flink 1.13.0), beberapa sintaksis dan API mungkin tidak kompatibel. Untuk detailnya, lihat Apache Flink 1.13.0 Release Announcement.
Prosedur
Upgrade mengikuti pendekatan clone-and-switch: klon draft atau deployment yang ada, upgrade klon tersebut ke versi engine target, verifikasi kebenarannya, lalu nonaktifkan deployment asli. Pendekatan ini menjaga deployment asli tetap utuh sebagai cadangan.
Langkah 1: Klon draft dan atur versi engine target
Pilih versi engine yang stable atau recommended. Versi-versi ini telah memperbaiki defect yang diketahui dan menyediakan fitur terbaru dengan stabilitas lebih tinggi.
Deployment SQL
-
Masuk ke Realtime Compute for Apache Flink console. Temukan ruang kerja dan klik Console di kolom Actions.
-
Buat backup draft SQL saat ini:
-
Di panel navigasi kiri, pilih Development > ETL. Pada tab Drafts, klik nama draft tersebut.
-
Klik Save As di bagian atas draft.

-
Pada kotak dialog, masukkan nama file untuk Name, tentukan Location, lalu klik Save.
-
-
Atur versi engine target pada draft hasil klon:
-
Di sisi kanan draft baru, klik tab Configurations. Pilih versi target dari daftar drop-down Engine Version, lalu klik Deploy di pojok kanan atas.

-
Verifikasi versi engine: Di panel navigasi kiri, pilih O&M > Deployments. Klik nama deployment tersebut. Di bagian Basic pada tab Configuration, pastikan versi engine telah berubah.

-
Deployment DataStream
-
Masuk ke Realtime Compute for Apache Flink console. Temukan ruang kerja dan klik Console di kolom Actions.
-
Klon deployment dengan versi engine target:
-
Di panel navigasi kiri, pilih O&M > Deployments. Klik nama deployment tersebut.
-
Di pojok kanan atas, klik Clone.

-
Masukkan nama baru di bidang Deployment Name dan pilih versi target dari daftar drop-down Engine Version.
-
-
Klik Deploy.
Langkah 2: Mencadangkan status penerapan
Di panel navigasi kiri, pilih O&M > Deployments. Klik nama deployment tersebut dan periksa tab State untuk melihat set state. Untuk detailnya, lihat bagian "View the state generation overview" dalam Manage a state set.
-
Deployment stateful: Buat savepoint secara manual sebelum upgrade. Savepoint ini berfungsi sebagai titik rollback jika upgrade gagal. Untuk instruksinya, lihat bagian "Manually create a savepoint" dalam Manage a state set.
Penting-
Secara umum, versi minor dalam versi utama yang sama saling kompatibel. Namun, kompatibilitas lintas versi utama tidak dijamin. Jika versi tersebut kompatibel, engine baru dapat membaca savepoint dari engine lama. Engine lama mungkin tidak dapat membaca savepoint dari engine baru.
-
Untuk VVR 6.X atau versi lebih baru, gunakan format native untuk upgrade versi minor dan format standard untuk upgrade versi utama.
-
-
Penerapan tanpa status: Lanjutkan ke langkah berikutnya.
Langkah 3 (opsional): Batalkan deployment asli
Di panel navigasi kiri, pilih O&M > Deployments. Temukan deployment asli dan klik Cancel di kolom Actions. Untuk detailnya, lihat Cancel a deployment.
Jika operator downstream Anda mendukung penulisan idempoten, atau jika duplikasi data dapat diterima untuk bisnis Anda, menjalankan deployment asli dan deployment baru secara bersamaan selama masa transisi juga merupakan opsi yang valid.
Langkah 4: Jalankan deployment baru
-
Deployment stateful: Di panel Start Job, pilih Resume Mode, lalu pilih Specific State, dan pilih savepoint yang dibuat pada Langkah 2.
-
Deployment stateless: Di panel Start Job, pilih Initial Mode.
Untuk instruksi lengkap, lihat Start a deployment.
Langkah 5: Verifikasi upgrade dan pembersihan
-
Konfirmasi checkpoint pertama: Setelah deployment baru mulai berjalan, tunggu hingga checkpoint pertama selesai. Keberhasilan checkpoint pertama menunjukkan bahwa upgrade awalnya berhasil.
-
Pantau data bisnis: Amati kebenaran data bisnis selama periode tertentu untuk memastikan upgrade sepenuhnya berhasil.
-
Bersihkan: Setelah memverifikasi bahwa deployment berjalan dengan benar dan data akurat, hapus deployment asli dan savepoint pra-upgrade. Untuk instruksi menghapus savepoint, lihat bagian "Manually delete a specified savepoint" dalam Manage a state set.
Rollback upgrade yang gagal
Jika deployment baru gagal dijalankan atau menghasilkan data bisnis yang salah setelah upgrade, lakukan langkah-langkah berikut:
-
Batalkan deployment baru tersebut.
-
Ubah kembali versi engine deployment ke versi sebelum upgrade.
-
Jalankan deployment menggunakan savepoint yang disimpan sebelum upgrade untuk memulihkan kelangsungan bisnis.
Jika masalah berlanjut, atau ajukan tiket untuk dukungan teknis.
Untuk mendeteksi kegagalan upgrade sedini mungkin, konfigurasikan alert kegagalan deployment. Untuk detailnya, lihat Configure monitoring and alerts.