Topik ini menjelaskan cara melakukan peningkatan versi mesin utama kluster ApsaraDB for ClickHouse Community-compatible Edition dengan satu klik di Konsol.
Latar Belakang
Untuk meningkatkan pengalaman layanan Anda, segera tingkatkan kluster lama ke versi terbaru. ApsaraDB for ClickHouse Community-compatible Edition menyediakan fitur peningkatan satu klik di Konsol. Proses peningkatan berbeda tergantung pada arsitektur kluster:
Untuk kluster arsitektur lama, sistem secara otomatis membuat kluster baru yang menjalankan versi terbaru dan memigrasikan data dari kluster sumber ke kluster baru untuk menyelesaikan peningkatan.
Untuk kluster arsitektur baru, sistem langsung memperbarui versi instans dengan mengkloning instans dan meningkatkan kernel.
Pilih operasi peningkatan yang sesuai dengan arsitektur kluster Anda untuk memastikan transisi yang lancar.
Persiapan: Konfirmasi arsitektur kluster
Sebelum melakukan peningkatan, konfirmasi arsitektur kluster di Konsol untuk memilih metode dan prosedur validasi yang tepat. Prosedurnya sebagai berikut:
Pada halaman Clusters, klik ID kluster target untuk membuka halaman Cluster Information.
Di bagian Cluster Properties , klik Major Version Upgrade di sebelah kanan Version.
Di kotak dialog Major Version Upgrade , lihat item konfigurasi ketiga untuk pengaturan waktu.
Version Upgrade Execution Time: Menunjukkan kluster arsitektur baru.
Time of Stopping Data Writing: Menunjukkan kluster arsitektur lama.
Untuk meningkatkan kluster arsitektur baru, lihat Upgrade a new-architecture cluster.
Untuk meningkatkan kluster arsitektur lama, lihat Upgrade an old-architecture cluster.
Upgrade a new-architecture cluster
Prasyarat
Kluster berada dalam status Running.
Catatan Penggunaan
Setelah proses peningkatan versi mesin utama dengan satu klik dimulai, proses tersebut tidak dapat dibatalkan.
CatatanRollback versi tidak didukung setelah peningkatan versi mesin utama dengan satu klik. Jika Anda memerlukan kemampuan untuk kembali ke versi sebelumnya setelah peningkatan, Anda dapat melakukan peningkatan dengan mengkloning kluster. Untuk informasi selengkapnya, lihat Upgrade the major engine version by cloning.
Peningkatan versi mesin utama dengan satu klik berlaku untuk satu kluster saja, dan Anda tidak dapat kembali ke versi sumber setelah peningkatan selesai.
Untuk memastikan peningkatan berjalan lancar, hentikan operasi write dari aplikasi Anda sebelum memulai peningkatan. Kluster akan secara otomatis menghentikan write selama peningkatan. Namun, jika aplikasi Anda tidak menghentikan write terlebih dahulu, waktu tunggu sinkronisasi mungkin menjadi sangat lama atau sinkronisasi tidak selesai tepat waktu, sehingga memengaruhi ketepatan waktu peningkatan.
Untuk mengurangi dampak peningkatan terhadap layanan Anda, lakukan validasi berikut sebelum memulai peningkatan.
Validasi kompatibilitas dan performa: Validasi perbedaan fitur, sintaks, serta performa operasi write dan query.
Validasi durasi peningkatan: Instans akan restart beberapa kali selama peningkatan versi. Beberapa instans mungkin memerlukan waktu lama untuk restart karena memiliki banyak database, tabel, atau partisi (Parts).
PentingJika kluster memiliki volume besar data dingin dan Anda menggunakan validasi kloning, peningkatan satu klik akan memakan waktu lebih lama daripada validasi kloning karena operasi kloning tidak mencakup data dingin.
Untuk informasi selengkapnya tentang cara melakukan validasi, lihat Validate version compatibility.
Dampak terhadap kluster
Selama peningkatan versi, kluster akan restart beberapa kali dan tidak tersedia untuk operasi read maupun write. Lakukan peningkatan selama jam sepi.
Validasi kompatibilitas versi
Karena peningkatan versi mesin utama dengan satu klik hanya melibatkan satu kluster dan tidak dapat dikembalikan, Anda harus menguji peningkatan terlebih dahulu. Sebelum melanjutkan, pastikan versi baru sepenuhnya kompatibel dengan fitur-fitur versi sumber dan verifikasi durasi peningkatan. Langkah-langkah berikut menjelaskan prosedurnya:
Jika Tiered Storage of Hot and Cold Data diaktifkan untuk kluster, operasi kloning hanya mencakup data panas. Anda tidak dapat melakukan query terhadap data dingin di kluster baru.
Buka halaman Cluster Information instans target. Di panel navigasi sebelah kiri, klik Backup and Restoration. Setelah instans dibackup, klik Restore Instance.
Pilih untuk mengkloning dari replika real-time dan atur versi kernel tujuan ke versi peningkatan target.
Buat kluster hasil kloning.
Lakukan validasi kompatibilitas.
Validasi kompatibilitas query aplikasi Anda dengan versi baru. Untuk informasi selengkapnya, lihat SQL compatibility validation.
Kembalikan ke fitur bisnis.
Prosedur
Masuk ke ApsaraDB for ClickHouse console dengan Akun Alibaba Cloud Anda.
Di pojok kiri atas halaman, pilih wilayah tempat kluster target berada.
Di panel navigasi sebelah kiri, klik Clusters of Community-compatible Edition.
Temukan kluster target dan klik ID kluster untuk membuka halaman Cluster Information.
Di bagian Cluster Properties , klik Major Version Upgrade di sebelah kanan Version.
Konfigurasikan parameter berikut sesuai petunjuk dan klik tombol OK .
Configuration item
Description
Example
Upgrade Cluster Kernel Version to
Versi target kluster. Versi tidak dapat dikembalikan setelah peningkatan.
Saat ini, hanya versi 25.3 yang didukung.
23.8 (LTS Version)
Version Upgrade Execution Time
Waktu eksekusi untuk peningkatan versi kluster.
PentingSetelah Anda memilih waktu tertentu atau peningkatan dalam jendela pemeliharaan, status kluster berubah dari Running menjadi Upgrading. Sebelum waktu yang ditentukan atau jendela pemeliharaan tiba, kluster tetap dapat melayani permintaan read dan write secara normal, tetapi Anda tidak dapat melakukan operasi O&M seperti upgrade, downgrade, scaling, atau migrasi.
Specified Time: Pilih titik waktu di masa depan untuk melakukan peningkatan versi utama.
Upgrade Within Maintenance Window: Jendela pemeliharaan kluster saat ini dipilih secara default.
Update Now: Jalankan operasi peningkatan segera.
2024-05-29 14:46
Whether to Perform Clone Validation
Pilih Clone Validation Performed atau Skip Clone Verification (Not Recommended).
Clone Validation Performed
Upgrade an old-architecture cluster
Prasyarat
Kluster berada dalam status Running.
Catatan Penggunaan
Peningkatan versi mesin utama dengan satu klik berlaku untuk satu kluster saja, dan Anda tidak dapat kembali ke versi sumber setelah peningkatan selesai.
CatatanRollback versi tidak didukung setelah peningkatan versi mesin utama dengan satu klik. Jika Anda memerlukan kemampuan untuk kembali ke versi sebelumnya setelah peningkatan, Anda dapat melakukan peningkatan dengan migrasi data. Untuk informasi selengkapnya, lihat Upgrade by migration.
Saat meningkatkan kluster, perhatikan poin-poin berikut mengenai database dan tabel:
Untuk tabel yang menggunakan engine keluarga MergeTree, data historis dimigrasikan ke kluster baru dan didistribusikan ulang secara otomatis selama peningkatan.
Untuk tabel yang tidak menggunakan engine keluarga MergeTree, seperti tabel eksternal atau tabel Log, hanya skema tabel yang dimigrasikan. Datanya tidak dimigrasikan.
Untuk materialized view, hanya skemanya yang dimigrasikan. Datanya tidak dimigrasikan.
Tabel yang menggunakan engine Kafka atau RabbitMQ tidak didukung untuk migrasi. Anda harus menghapus tabel-tabel tersebut sebelum peningkatan.
Setelah peningkatan, alamat IP node internal berubah. Jika proses write dan akses data bergantung pada alamat IP node, Anda harus mengambil kembali Blok CIDR VPC kluster. Untuk informasi selengkapnya, lihat Obtain the VPC CIDR block of a cluster.
Untuk mengurangi dampak peningkatan terhadap layanan Anda, lakukan validasi berikut sebelum memulai peningkatan.
Validasi kompatibilitas dan performa: Validasi perbedaan fitur, sintaks, serta performa operasi write dan query.
Validasi durasi peningkatan: Instans akan restart beberapa kali selama peningkatan versi. Beberapa instans mungkin memerlukan waktu lama untuk restart karena memiliki banyak database, tabel, atau partisi (Parts).
Untuk informasi selengkapnya tentang cara melakukan validasi, lihat Validate version compatibility.
Dampak terhadap kluster
Selama peningkatan kluster Community-compatible Edition, kluster tetap tersedia untuk operasi read dan write, kecuali pada 10 menit terakhir migrasi ketika write tidak diizinkan. Untuk melihat sisa waktu migrasi, lihat View the upgrade progress.
Validasi kompatibilitas versi
Karena peningkatan versi mesin utama dengan satu klik hanya melibatkan satu kluster dan tidak dapat dikembalikan, Anda harus menguji peningkatan terlebih dahulu. Sebelum melanjutkan, pastikan versi baru sepenuhnya kompatibel dengan fitur-fitur versi sumber dan verifikasi durasi peningkatan. Langkah-langkah berikut menjelaskan prosedurnya:
Beli kluster baru untuk melakukan validasi migrasi. Untuk informasi selengkapnya, lihat Upgrade the major engine version by data migration.
Di kluster baru, lakukan validasi kompatibilitas SQL. Untuk informasi selengkapnya, lihat SQL compatibility validation.
Lakukan pengujian regresi terhadap fitur aplikasi Anda untuk memvalidasinya.
Upgrade the cluster
Masuk ke ApsaraDB for ClickHouse console dengan Akun Alibaba Cloud Anda.
Di pojok kiri atas halaman, pilih wilayah tempat kluster target berada.
Di panel navigasi sebelah kiri, klik Clusters of Community-compatible Edition.
Temukan kluster target dan klik ID kluster untuk membuka halaman Cluster Information.
Di bagian Cluster Properties , klik Major Version Upgrade di sebelah kanan Version.
Konfigurasikan parameter berikut sesuai petunjuk dan klik tombol OK .
Item Konfigurasi
Deskripsi
Contoh
Upgrade Instance Kernel Version To
Versi kluster target. Versi tidak dapat dikembalikan setelah upgrade.
Saat ini, hanya versi 23.8 yang didukung.
23.8 (LTS Version)
Time of Stopping Data Writing
Untuk memastikan konsistensi data antara kondisi sebelum dan sesudah upgrade, kluster secara otomatis menghentikan operasi penulisan selama 10 menit terakhir proses upgrade. Aturan berikut berlaku untuk pengaturan waktu penangguhan penulisan:
Untuk memastikan keberhasilan upgrade, atur waktu penangguhan penulisan minimal 30 menit.
Upgrade harus selesai dalam waktu 5 hari. Oleh karena itu, tanggal akhir Time of Stopping Data Writing harus kurang dari atau sama dengan
current date + 5 days.Untuk meminimalkan dampak penangguhan penulisan terhadap bisnis Anda, atur waktu penangguhan penulisan pada periode jam sepi.
2025-03-20 10:08-2025-03-25 10:08Perform Instance Migration Validation
Pilih Verification Performed atau Skip Instance Migration Validation (not Recommended).
Instance migration validation performed
Langkah selanjutnya:
Untuk melihat progres peningkatan, lihat View the upgrade progress.
Jika waktu suspensi write yang ditentukan telah lewat tetapi status kluster masih Upgrading, Anda harus modify the write suspension time untuk menyelesaikan migrasi.
Jika peningkatan memengaruhi layanan Anda dan Anda ingin menghentikannya, Anda dapat cancel the upgrade.
View the upgrade progress
Masuk ke ApsaraDB for ClickHouse console dengan Akun Alibaba Cloud Anda.
Di pojok kiri atas halaman, pilih wilayah tempat kluster target berada.
Di panel navigasi sebelah kiri, klik Clusters of Community-compatible Edition.
Temukan kluster target dan klik ID kluster untuk membuka halaman Cluster Information.
Di bagian Cluster Status , klik View Progress di sebelah kanan Status.
Di kotak dialog Modify Data Write-Stop Time Window yang muncul, Anda dapat melihat progres peningkatan. Misalnya, Anda dapat melihat progres migrasi skema MergeTree, migrasi data, perkiraan sisa waktu migrasi data, dan progres migrasi skema lainnya.
Modify the write suspension time
Jika waktu suspensi write yang ditentukan telah lewat tetapi status kluster masih Upgrading, migrasi data belum selesai. Anda harus menyesuaikan waktu suspensi write untuk memastikan peningkatan selesai dengan sukses.
Masuk ke ApsaraDB for ClickHouse console dengan Akun Alibaba Cloud Anda.
Di pojok kiri atas halaman, pilih wilayah tempat kluster target berada.
Di panel navigasi sebelah kiri, klik Clusters of Community-compatible Edition.
Temukan kluster target dan klik ID kluster untuk membuka halaman Cluster Information.
Di bagian Cluster Status , klik View Progress di sebelah kanan Status.
Di kotak dialog Modify Data Write-Stop Time Window yang muncul, ubah Time of Stopping Data Writing dan klik Confirm.
CatatanAturan untuk mengatur Time of Stopping Data Writing sama dengan aturan untuk parameter Time of Stopping Data Writing yang dijelaskan di Upgrade the cluster.
Cancel the upgrade
Jika peningkatan memengaruhi layanan Anda dan Anda ingin menghentikannya, Anda dapat membatalkan peningkatan.
Masuk ke ApsaraDB for ClickHouse console dengan Akun Alibaba Cloud Anda.
Di pojok kiri atas halaman, pilih wilayah tempat kluster target berada.
Di panel navigasi sebelah kiri, klik Clusters of Community-compatible Edition.
Temukan kluster target dan klik ID kluster untuk membuka halaman Cluster Information.
Di bagian Cluster Status , klik View Progress di sebelah kanan Status.
Di kotak dialog Modify Data Write-Stop Time Window yang muncul, klik Cancel Upgrade.
CatatanSetelah Anda mengklik Cancel Upgrade, tugas peningkatan tidak berhenti segera. Tugas tersebut akan benar-benar berhenti setelah sekitar 5 menit.
FAQ
Q: Apa yang harus saya lakukan jika muncul error Unsupported Kafka table definition selama peningkatan versi mesin utama?
A: Tabel Kafka pada versi saat ini tidak mendukung penggunaan kata kunci DEFAULT untuk mendefinisikan nilai default bidang. Hal ini menyebabkan paket kernel gagal memulai. Untuk mengatasi masalah ini, lakukan langkah-langkah berikut:
Jalankan pernyataan
select create_table_query from system.tables where engine = 'Kafka'untuk menemukan semua tabel Kafka.Backup pernyataan Data Definition Language (DDL) tabel-tabel tersebut.
Hapus tabel-tabel tersebut.
Buat ulang tabel-tabel tersebut.
PentingSaat membuat ulang tabel, jangan gunakan kata kunci
DEFAULTuntuk mendefinisikan nilai default bidang.
Q: Apa yang harus saya lakukan jika muncul error Unsupported MaterializedMySQL table definition selama peningkatan versi mesin utama?
A: Parameter konfigurasi engine MaterializedMySQL pada versi saat ini tidak kompatibel dengan versi kluster sumber. Untuk mengatasi masalah ini, lakukan langkah-langkah berikut:
Jalankan pernyataan
select name from system.databases where engine = 'MaterializedMySQL'untuk menemukan database yang menggunakan engine MaterializedMySQL.Backup pernyataan DDL database tersebut.
Hapus database tersebut.
Tingkatkan versi kernel.
Sesuaikan pernyataan DDL yang telah dibackup agar kompatibel dengan versi target, lalu buat ulang database yang menggunakan engine MaterializedMySQL.
Q: Apa yang harus saya lakukan jika muncul error Unsupported table definition other than 20.3: Nullable(Array(*))/SecondaryIndex(KEY definition exists) selama peningkatan versi mesin utama?
A: Jika versi kluster Anda adalah 20.3, Anda mungkin menggunakan beberapa fitur yang dikembangkan oleh Alibaba Cloud, seperti:
Mendefinisikan bidang tabel bertipe Nullable(Array(*)).
Indeks secondary yang didefinisikan menggunakan kata kunci KEY.
Karena fitur-fitur ini belum digabungkan kembali ke ClickHouse open source, versi instans setelah 20.8 tidak menyertakannya. Sesuaikan tabel terkait sebelum melakukan peningkatan. Anda dapat melakukan operasi berikut:
Validasi kompatibilitas antara versi kluster sumber dan versi target.
PentingKarena rentang versi antara 20.3 dan versi saat ini cukup besar, Anda harus melakukan validasi menyeluruh sebelum menerapkan peningkatan untuk menghindari dampak terhadap layanan Anda.
Hapus bidang yang dimodifikasi dengan
Nullable(Array(*)), lalu tambahkan kembali bidang tersebut.Hapus indeks secondary yang didefinisikan dengan kata kunci KEY. Setelah peningkatan selesai, tambahkan kembali skipping index ke tabel.
PentingKedua jenis indeks ini memiliki prinsip implementasi yang berbeda, yang dapat menyebabkan perbedaan performa.
Referensi
Data migration and synchronization.
Upgrading a major engine version through migration