Untuk memastikan kelangsungan bisnis serta mencegah risiko keamanan dan stabilitas akibat instans yang kedaluwarsa, Service Mesh (ASM) mendukung upgrade in-place dan rilis canary untuk meningkatkan lapisan kontrol dan bidang data. Topik ini menjelaskan tindakan pencegahan, petunjuk, jalur upgrade, metode, serta prosedur untuk upgrade instans ASM.
Prasyarat
Istilah
Mengapa upgrade diperlukan?
ASM biasanya memperbarui daftar versi utama Istio yang didukung setiap tiga bulan. Setelah versi utama dirilis, ASM kadang-kadang merilis versi patch, seperti 1.19.x.y, untuk menyediakan fitur baru dan memperbaiki kerentanan. Instans ASM yang kedaluwarsa menimbulkan risiko keamanan dan stabilitas. Kami menyarankan Anda segera meng-upgrade instans ASM Anda. Untuk informasi lebih lanjut mengenai versi yang didukung oleh ASM, lihat Mekanisme versi.
Secara proaktif meng-upgrade instans ASM Anda memberikan manfaat berikut:
Risiko keamanan dan stabilitas berkurang: Kerentanan keamanan dan stabilitas terus diperbaiki seiring iterasi versi ASM. Menggunakan instans ASM kedaluwarsa dalam jangka waktu lama dapat menimbulkan risiko keamanan dan stabilitas bagi bisnis Anda.
Dukungan maintenance yang lebih baik: Untuk versi instans yang kedaluwarsa, ASM tidak lagi menyediakan patch keamanan atau perbaikan bug dan tidak dapat menjamin kualitas dukungan teknis. Anda dapat menerima dukungan teknis dan layanan pelanggan yang lebih baik saat menggunakan versi ASM terbaru.
Akses ke fitur baru: Seiring evolusi open source Istio, versi-versi baru menyediakan fitur dan peningkatan baru. ASM menyesuaikan diri dengan versi-versi tersebut untuk memberikan pengalaman yang lebih baik bagi developer maupun operasi dan maintenance (O&M).
Tindakan pencegahan dan petunjuk untuk upgrade
Tindakan pencegahan
Untuk meng-upgrade mesh, Anda harus secara manual me-restart pod pada data plane agar sidecar versi baru dapat di-inject kembali. Kami menyarankan Anda melakukan upgrade selama jam sepi.
Jika Anda secara manual meng-upgrade gateway ASM, restart bergulir akan dipicu.
Selama proses upgrade, jangan melakukan operasi seperti rilis bertahap atau konfigurasi aturan traffic.
Ketika Anda melakukan in-place upgrade pada instans ASM, ASM akan melakukan pemeriksaan awal terhadap instans Anda. Namun, pemeriksaan ini tidak menjamin terdeteksinya semua konfigurasi fitur dan operasi API yang tidak kompatibel. Anda dapat tetap memantau informasi rilis versi melalui dokumen bantuan, informasi di konsol, dan pesan internal. Sebelum meng-upgrade instans, kami menyarankan Anda meninjau tindakan pencegahan upgrade untuk versi yang bersangkutan.
Untuk alasan keamanan, ASM menyediakan mekanisme berikut:
ASM berhak untuk secara paksa meng-upgrade instans yang kedaluwarsa ke versi didukung paling awal pada waktu tertentu setelah versi instans tersebut kedaluwarsa. Kami menyarankan Anda meng-upgrade instans terlebih dahulu sesuai yang dijelaskan dalam topik ini.
Untuk upgrade versi patch, seperti dari v1.18.0.123 ke v1.18.0.146, sistem secara berkala melakukan hot update otomatis tanpa mengirimkan notifikasi. Selama hot update otomatis, versi gateway dan sidecar proxy pada data plane tetap tidak berubah.
Petunjuk untuk in-place upgrade
Ketika melakukan in-place upgrade, Anda hanya dapat meng-upgrade instans ASM ke versi yang berdekatan. Upgrade lintas versi dan rollback tidak didukung.
Petunjuk untuk canary release
Dibandingkan dengan in-place upgrade, canary release memungkinkan Anda memverifikasi versi baru sebelum beralih sepenuhnya. Hal ini menyediakan metode upgrade yang lebih aman bagi bisnis Anda. Canary release mendukung upgrade hingga maksimal satu versi minor dan mendukung rollback selama proses upgrade.
Tipe | Deskripsi |
Versi yang berlaku | Instans Edisi Perusahaan atau Edisi Ultimate versi 1.16.4.91 atau lebih baru. |
Skenario |
Catatan Jika hanya versi asm-patch yang berubah, kami menyarankan Anda melakukan in-place upgrade. |
Format versi | Versi instans ASM memiliki format berikut: <major>.<minor>.<patch>.<asm-patch>[-<sequence>-aliyun]. Contoh: v1.18.0.158-gc6cf0b9c-aliyun (Enterprise Edition). Daftar berikut menjelaskan field dalam format tersebut:
|
Petunjuk untuk label injeksi Sidecar
Setelah Anda mengaktifkan fitur canary release untuk instans ASM, dua versi instans tersebut ada secara bersamaan pada control plane. Misalnya, jika Anda meng-upgrade instans ASM dari 1.17.2.42 ke versi 1.18.0 tertentu menggunakan canary release, kedua versi 1.17.2 dan 1.18.0 tersedia secara bersamaan pada control plane.
Selama canary release, Anda dapat menambahkan label injeksi ke namespace dalam kluster Kubernetes untuk menentukan versi sidecar yang akan di-inject ke workload dalam namespace tersebut. Label default adalah istio-injection=enabled, yang meng-inject versi saat ini.
Bagian berikut menjelaskan pemetaan antara versi sidecar yang di-inject dan label namespace ketika dua versi ada secara bersamaan:
Versi saat ini
Sidecar yang di-inject oleh label
istio-injection=enabledsesuai dengan versi ASM saat ini dan terhubung ke control plane versi saat ini.Tambahkan label
istio.io/rev=$revisionke namespace untuk menentukan versi sidecar yang akan di-inject. Format variabelrevisionadalahx-y-z, seperti1-17-2.Tambahkan label
istio.io/rev=stableke namespace untuk menentukan bahwa versi sidecar yang di-inject adalah versi ASM saat ini.
PentingAnda tidak dapat menambahkan label
istio-injectiondanistio.io/revke namespace secara bersamaan.
Versi canary
Jika layanan bisnis perlu di-inject sidecar yang sesuai dengan versi canary, Anda dapat menambahkan label
istio.io/rev=$revisionatauistio.io/rev=canaryke namespace. Format$revisionadalahx-y-z, seperti1-18-0. Kami menyarankan Anda menggunakan labelistio.io/rev=$revision.Untuk informasi lebih lanjut mengenai cara melakukan canary release, lihat Gunakan canary release untuk meningkatkan stabilitas upgrade.
Jalur peningkatan, metode, dan proses
Jalur upgrade
Contoh dalam bagian ini menggunakan upgrade dari v1.16 ke v1.18 untuk menggambarkan jalur upgrade. Contoh ini hanya sebagai referensi. Anda dapat memilih jalur upgrade berdasarkan lingkungan aktual Anda.
Versi awal | Versi tujuan | Metode upgrade |
1.16.4.93 | 1.17.2.42 | In-place upgrade atau canary release |
1.17.2.42 | 1.18.0.158 | In-place upgrade atau canary release |
1.16.4.93 | 1.18.0.158 | Canary release |
Metode upgrade
Konsol ASM: mendukung in-place upgrade dan canary release. Untuk informasi lebih lanjut, lihat Prosedur.
API: mendukung in-place upgrade. Untuk informasi lebih lanjut, lihat UpgradeMeshVersion, DescribeUpgradeVersion, dan DescribeServiceMeshUpgradeStatus.
Proses upgrade
Konfirmasi versi tujuan dan metode upgrade. Pahami tindakan pencegahan dan petunjuk upgrade sebelum melanjutkan.
Prosedur
In-place upgrade
Masuk ke Konsol ASM. Di panel navigasi sebelah kiri, pilih .
Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi sebelah kiri, pilih .
Pada halaman Upgrade Management, klik tab In-place Upgrade, lalu klik Perform Upgrade Precheck. Pada kotak dialog Important yang muncul, klik OK.
Setelah pemeriksaan awal upgrade berhasil, klik Start Upgrade. Pada kotak dialog Important, klik OK.
Pada bagian Data Plane, temukan kolom Upgrade, pilih gateway target, lalu klik Upgrade Gateway. Pada kotak dialog Important, klik OK.
Restart workload sesuai kebutuhan. Untuk informasi lebih lanjut, lihat Redeploy workloads.
Canary release
Untuk informasi lebih lanjut, lihat Gunakan canary release untuk meningkatkan stabilitas upgrade.
FAQ tentang upgrade
Ketika versi canary dialihkan menjadi versi resmi, sidecar yang di-inject ke layanan yang telah diterapkan sebelumnya merupakan versi lama. Bagaimana cara meng-upgrade sidecar tersebut ke versi baru?
Pada halaman Upgrade Management, klik tab Canary Upgrade, lalu klik tab Data plane. Pada bagian Workloads To Be Upgraded, klik Rolling Upgrade di sebelah kanan workload target untuk memicu rolling update deployment layanan tersebut.
Apakah in-place upgrade memengaruhi traffic layanan yang sudah ada?
In-place upgrade hanya memengaruhi control plane, bukan traffic pada data plane.
Berapa kali instans ASM perlu di-upgrade untuk mencapai versi tujuan?
In-place upgrade hanya mendukung upgrade antar versi utama yang berdekatan. Canary release mendukung upgrade hingga maksimal satu versi minor. Anda dapat menghitung jumlah upgrade yang diperlukan sesuai kebutuhan.
Dapatkah saya memilih metode upgrade apa pun untuk setiap versi instans ASM?
Untuk instans ASM versi sebelum 1.16.4.91, hanya in-place upgrade yang didukung. Untuk instans ASM versi 1.16.4.91 atau lebih baru, baik in-place upgrade maupun canary release didukung.
Setelah instans ASM di-upgrade, ke versi berapa kluster ACK yang terkait perlu di-upgrade?
Anda dapat merujuk ke Kompatibilitas versi ASM dan ACK dan meng-upgrade kluster sesuai kebutuhan. Untuk informasi lebih lanjut mengenai cara meng-upgrade kluster ACK, lihat Manually upgrade a cluster.
Dokumen terkait
Anda dapat mendiagnosis mesh secara tepat waktu untuk potensi masalah. Item pemeriksaan mencakup versi komponen data plane, port layanan, layanan terkait, label aplikasi dan versi, alamat tujuan, serta konflik virtual service. Untuk informasi lebih lanjut, lihat Gunakan diagnostik mesh ASM.
Platform kecerdasan buatan untuk operasi TI (AIOps) untuk kontainer menyediakan kemampuan diagnosis gangguan satu klik. Kemampuan ini mencakup diagnosis node, pod, Service, Ingress, memori, dan jaringan, yang dapat membantu Anda mengidentifikasi masalah dalam kluster. Untuk informasi lebih lanjut, lihat Gunakan diagnosa kluster.
Untuk informasi terbaru mengenai fitur ASM, lihat Catatan rilis.