Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam tutorial ini, bagian tiga dari lima, Anda memigrasikan simpul yang ada ke ACL. Anda dapat memigrasikan simpul yang ada menggunakan salah satu metode berikut:
- Hapus kumpulan simpul yang ada dan tambahkan kumpulan simpul ACL baru.
- Lakukan migrasi SKU sistem operasi (OS) di tempat.
Perintah dalam tutorial ini menggunakan variabel lingkungan yang diatur dalam Tutorial 1: Membuat kluster dengan ACL untuk AKS.
Jika Anda tidak memiliki simpul yang sudah ada untuk dimigrasikan, langsung saja ke tutorial berikutnya. Dalam tutorial selanjutnya, Anda mempelajari cara mengaktifkan telemetri dan pemantauan di kluster Anda dan meningkatkan simpul ACL.
Prerequisites
- Dalam tutorial sebelumnya, Anda membuat dan menyebarkan kluster ACL. Jika Anda belum menyelesaikan langkah-langkah ini dan ingin mengikutinya, lihat Tutorial 1: Membuat kluster dengan ACL untuk AKS.
- Azure Container Linux memerlukan versi Azure CLI 2.86.0 atau yang lebih tinggi.
az versionGunakan perintah untuk menemukan versi. Untuk meningkatkan ke versi terbaru, gunakanaz upgradeperintah .
Pertimbangan dan batasan Azure Container Linux (ACL)
Sebelum memulai, tinjau pertimbangan dan batasan berikut untuk ACL:
- ACL umumnya tersedia mulai AKS v1.34.
- ACL memerlukan Peluncuran Tepercaya dengan Boot Aman dan vTPM. Varian peluncuran nontepercaya tidak tersedia.
- ACL di Arm64 memerlukan SKU berbasis Cobalt (v6) untuk mengaktifkan kompatibilitas Peluncuran Tepercaya.
-
NodeImagedanNonemerupakan satu-satunya saluran peningkatan sistem operasi (OS) yang didukung.UnmanageddanSecurityPatchtidak kompatibel dengan ACL karena direktori yang tidak dapat/usrdiubah. - Artifact Streaming tidak didukung.
- Pod Sandboxing tidak didukung.
- Confidential Virtual Machines (CVM) tidak didukung.
- VM Generasi 1 tidak didukung.
Menambahkan kumpulan simpul ACL dan menghapus kumpulan simpul yang ada
Tambahkan kumpulan simpul ACL baru menggunakan
az aks nodepool addperintah . Gunakan--mode Systemagar kumpulan baru dapat berfungsi sebagai kumpulan agen sistem, yang memungkinkan Anda menghapus kumpulan simpul asli di langkah berikutnya. Contoh berikut membuat kumpulan simpul bernama aclsystem yang menambahkan tiga simpul ke kluster:az aks nodepool add \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name aclsystem \ --mode System \ --os-sku AzureContainerLinux \ --node-count 3Contoh output:
{ "id": "/subscriptions/xxxxx/resourceGroups/myACLResourceGroup/providers/Microsoft.ContainerService/managedClusters/myACLCluster/nodePools/aclsystem", "name": "aclsystem", "osSku": "AzureContainerLinux", "provisioningState": "Succeeded" }Hapus kumpulan simpul yang ada menggunakan
az aks nodepool deleteperintah .az aks nodepool delete \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name <existing-node-pool-name>
Migrasi SKU OS langsung
Batasan untuk migrasi SKU OS di tempat
Ada beberapa pengaturan yang dapat memblokir permintaan migrasi SKU OS. Untuk memastikan keberhasilan migrasi, tinjau panduan dan batasan berikut:
- Fitur migrasi SKU OS tidak tersedia melalui PowerShell atau portal Microsoft Azure.
- Fitur migrasi SKU OS tidak mendukung penggantian nama kumpulan simpul yang ada.
- Ubuntu, Azure Linux, dan AzureContainerLinux adalah satu-satunya target migrasi SKU OS Linux yang didukung.
- ACL memerlukan Trusted Launch. Jika belum diaktifkan pada pool node Anda, Anda harus menambahkan
--enable-secure-bootdan--enable-vtpmsaat bermigrasi ke SKU OSAzureContainerLinux. Ukuran VM kumpulan simpul Anda juga harus mendukung Trusted Launch. Jika ukuran VM Anda saat ini tidak mendukungnya, Anda perlu mengubah ukuran atau membuat ulang kumpulan simpul dengan ukuran VM yang didukung sebelum bermigrasi. - VM Generasi 1 tidak didukung.
- SKU OS Ubuntu dengan
UseGPUDedicatedVHDdiaktifkan tidak dapat melakukan migrasi SKU OS. - Confidential Virtual Machines (CVM) tidak didukung.
- Pod Sandboxing tidak didukung.
- Migrasi SKU OS Windows tidak didukung.
Prasyarat untuk migrasi SKU OS di tempat
- Kluster AKS yang sudah ada dengan setidaknya satu pool node Linux.
- Kami menyarankan agar Anda memverifikasi bahwa beban kerja Anda berjalan dengan sukses di ACL dengan menyebarkan kluster ACL di lingkungan pengembangan atau penahapan sebelum memigrasikan kluster produksi.
- Pastikan fitur migrasi berfungsi untuk Anda dalam pengujian/dev sebelum menggunakan proses pada kluster produksi.
- Pastikan pod Anda memiliki cukup Pod Disruption Budget (PDB) agar AKS dapat memindahkan pod di antara VM selama proses upgrade.
- Anda memerlukan Azure CLI versi 2.61.0 atau yang lebih tinggi.
az versionGunakan perintah untuk menemukan versi. Untuk meningkatkan ke versi terbaru, gunakanaz upgradeperintah .
Migrasi ke ACL menggunakan migrasi SKU OS secara langsung
Anda dapat memigrasikan kumpulan simpul Ubuntu atau Azure Linux yang ada ke ACL dengan mengubah SKU sistem operasi kumpulan simpul, yang akan memperbarui kluster melalui proses peningkatan image simpul standar. Metode ini tidak memerlukan pembuatan kumpulan simpul baru; sebagai gantinya, kumpulan simpul Anda yang ada secara otomatis direimage.
Important
ACL memerlukan Trusted Launch. Anda harus menyertakan --enable-secure-boot dan --enable-vtpm saat bermigrasi ke AzureContainerLinux SKU OS. Ukuran VM kumpulan simpul Anda juga harus mendukung Trusted Launch.
Migrasi SKU OS dari node pool Anda ke ACL menggunakan perintah az aks nodepool update. Perintah ini memicu gambaran ulang kumpulan simpul Anda. Perubahan SKU OS memicu operasi peningkatan segera, yang membutuhkan waktu beberapa menit untuk diselesaikan.
az aks nodepool update \
--resource-group $RESOURCE_GROUP \
--cluster-name $CLUSTER_NAME \
--name <existing-node-pool-name> \
--os-sku AzureContainerLinux \
--enable-secure-boot \
--enable-vtpm
Contoh output:
{
"id": "/subscriptions/xxxxx/resourceGroups/myACLResourceGroup/providers/Microsoft.ContainerService/managedClusters/myACLCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureContainerLinux",
"provisioningState": "Succeeded"
}
Note
Jika Anda mengalami masalah selama migrasi SKU OS, Anda dapat kembali ke SKU OS Anda sebelumnya.
Memverifikasi migrasi SKU OS
Setelah migrasi selesai pada kluster pengujian Anda, verifikasi hal berikut untuk memastikan keberhasilan migrasi:
Konfirmasikan bahwa simpul baru menjalankan ACL menggunakan perintah berikut:
kubectl get nodes -o widePastikan semua pod dan daemonset Anda berjalan di pool node baru dengan menggunakan perintah berikut:
kubectl get pods -o wide -APastikan semua label node dalam kumpulan node yang telah ditingkatkan sesuai dengan yang Anda harapkan dengan menggunakan perintah berikut:
kubectl get nodes --show-labelsPeriksa versi gambar simpul menggunakan
az aks nodepool listperintah .az aks nodepool list \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --query '[].{name: name, osSku: osSku, nodeImageVersion: nodeImageVersion}'Contoh output:
[ { "name": "nodepool1", "nodeImageVersion": "AKSAzureContainerLinux-202606.01.0", "osSku": "AzureContainerLinux" } ]
Tip
Sebaiknya pantau kesehatan layanan Anda selama beberapa minggu sebelum memigrasikan kluster produksi Anda.
Kembali ke SKU sistem operasi Anda sebelumnya
Jika Anda mengalami masalah selama migrasi SKU OS, Anda dapat kembali ke SKU OS Anda sebelumnya. Untuk melakukannya, ubah kolom SKU OS kembali ke nilai yang sebelumnya Anda gunakan dan kirim ulang penyebaran tersebut, yang akan memicu operasi peningkatan versi lain dan mencitra ulang kumpulan node ke SKU OS sebelumnya.
Kembali ke SKU OS Anda sebelumnya menggunakan perintah az aks nodepool update. Contoh ini kembali dari ACL ke Azure Linux:
az aks nodepool update \
--resource-group $RESOURCE_GROUP \
--cluster-name $CLUSTER_NAME \
--name <existing-node-pool-name> \
--os-sku AzureLinux
Langkah selanjutnya
Dalam tutorial ini, Anda memigrasikan simpul yang ada ke ACL. Dalam tutorial berikutnya, Anda mempelajari cara mengaktifkan telemetri dan pemantauan untuk kluster ACL Anda.