Menonaktifkan fitur nodepool Windows di Azure Local
Berlaku untuk: Azure Local, versi 23H2
Saat Anda menginstal Azure Local, tiga hard disk virtual (VHD) - Azure Linux, Windows Server 2019, dan Windows Server 2022 - diunduh secara otomatis. VHD diperlukan untuk menyebarkan AKS di Azure Local karena berfungsi sebagai gambar sistem operasi dasar untuk node Kubernetes dalam kluster AKS Anda. Untuk lingkungan MIXED-OS (simpul Windows dan Linux), VHD Windows Server 2019 atau Windows Server 2022 diperlukan untuk menyediakan nodepool Windows Server 2019, atau 2022. Nodepool Linux menggunakan Azure Linux VHD yang dioptimalkan untuk menjalankan Kubernetes. Di lingkungan di mana hanya kontainer Linux yang digunakan, namun, Windows VHD tidak perlu. Anda dapat menonaktifkan fitur nodepool Windows untuk menghindari pengunduhan dan penyimpanan file besar ini, yang menghemat bandwidth dan ruang penyimpanan.
Artikel panduan ini memancang Anda melalui cara menonaktifkan fitur nodepool Windows untuk Azure Kubernetes Service (AKS) di Azure Local. Menonaktifkan fitur ini mencegah pengunduhan otomatis Windows Virtual Hard Disk (VHD), yang berukuran sekitar 20 GB dan diperlukan untuk membuat nodepool berbasis Windows. Dengan demikian, perusahaan dengan bandwidth internet terbatas dapat menghindari unduhan yang tidak perlu, terutama jika beban kerja mereka secara eksklusif menggunakan kontainer Linux. Fitur ini membantu mengoptimalkan penggunaan bandwidth dan menyederhanakan manajemen sumber daya untuk lingkungan di mana simpul Windows tidak diperlukan.
Sebelum Anda mulai
Sebelum memulai, pastikan Anda memiliki prasyarat berikut:
- Azure Local disebarkan. Artikel ini hanya berlaku jika Anda sudah menyebarkan Azure Local, rilis 2411. Anda tidak dapat menjalankan perintah dalam artikel ini sebelum menyebarkan rilis Lokal Azure 2411. Saat ini kami tidak mendukung kemampuan untuk membuat perubahan ini sebelum penyebaran rilis Lokal Azure awal 2411.
- Izin Azure RBAC untuk memperbarui konfigurasi Azure Local. Pastikan Anda memiliki peran berikut. Untuk informasi selengkapnya, lihat izin yang diperlukan untuk penyebaran:
- Administrator Lokal Azure
- Pembaca
- Lokasi Kustom. Nama lokasi kustom. Lokasi kustom dikonfigurasi selama penyebaran Azure Local. Jika Anda berada di portal Azure, buka halaman Server Gambaran Umum > di sumber daya sistem Lokal Azure. Anda akan melihat lokasi kustom untuk kluster Anda.
- Grup sumber daya Azure. Grup sumber daya Azure tempat Azure Local disebarkan.
Opsi yang direkomendasikan: nonaktifkan nodepool Windows dari sesi Azure CloudShell
Untuk membantu menyederhanakan konfigurasi, langkah-langkah berikut menentukan variabel lingkungan yang direferensikan dalam artikel ini. Ingatlah untuk mengganti nilai yang ditampilkan dengan nilai Anda sendiri.
Atur lokasi kustom dan nilai grup sumber daya dalam variabel lingkungan:
$customlocationName = <The custom location name for Azure Local>
$resourceGroup = <The Azure resource group in which Azure Local is deployed>
Selanjutnya, jalankan perintah berikut untuk mendapatkan clusterName
parameter . Parameter ini adalah nama Arc Resource Bridge yang Anda sebarkan di Azure Local:
az customlocation show -n $customlocationName -g $resourceGroup --query hostResourceId
Output yang diharapkan:
/subscriptions/f3dwer-00000-4383-2345-00000/resourceGroups/SanJose/providers/Microsoft.ResourceConnector/appliances/sanjose-arcbridge
Dalam output ini, sanjose-arcbridge
adalah nama jembatan sumber daya Arc yang Anda sebarkan di kluster lokal Azure. Nama ini berbeda untuk penyebaran Anda.
$clusterName = <Name of Arc resource bridge deployed on the Azure Local cluster>
Selanjutnya, dapatkan nama ekstensi AKS Arc yang Anda sebarkan ke lokasi kustom. Untuk mendapatkan nama ini, jalankan perintah berikut untuk mencantumkan ekstensi yang diinstal pada lokasi kustom:
az customlocation show -n $customlocationID -g $resourceGroup --query clusterExtensionIds -o tsv
Output yang diharapkan:
/subscriptions/fbaf508b-cb61-4383-9cda-a42bfa0c7bc9/resourceGroups/SanJose/providers/Microsoft.ResourceConnector/appliances/sanjose-arcbridge/providers/Microsoft.KubernetesConfiguration/extensions/hybridaksextension
/subscriptions/fbaf508b-cb61-4383-9cda-a42bfa0c7bc9/resourceGroups/SanJose/providers/Microsoft.ResourceConnector/appliances/sanjose-arcbridge/providers/Microsoft.KubernetesConfiguration/extensions/vmss-hci
Anda harus menginstal dua ekstensi di lokasi kustom Anda: Manajemen AKS Arc dan Arc VM. Salin nama ekstensi untuk AKS ke dalam variabel lingkungan. Dalam contoh output, nama ekstensinya adalah hybridaksextension
. Ini mungkin berbeda dari apa yang Anda lihat:
$extensionName = <Name of AKS Arc extension you deployed on the custom location>
Setelah Anda memiliki nama ekstensi, buat variabel untuk parameter berikut, lalu nonaktifkan fitur nodepool Windows:
$extensionVersion = "$(az k8s-extension show -n $extensionName -g $resourceGroup -c $clusterName --cluster-type appliances --query version -o tsv)"
$releaseTrain = "$(az k8s-extension show -n $extensionName -g $resourceGroup -c $clusterName --cluster-type appliances --query releaseTrain -o tsv)"
az k8s-extension update --resource-group $resourceGroup --cluster-name $clusterName --cluster-type appliances --name $extensionName --version $extensionVersion --release-train $releaseTrain --config disable-windows-nodepool=true --yes
Opsi alternatif: nonaktifkan nodepool Windows setelah menyambungkan ke simpul fisik Lokal Azure melalui Desktop Jauh
Jika karena alasan tertentu Anda tidak dapat menggunakan Azure CloudShell atau mesin dengan konektivitas ke Azure untuk menonaktifkan nodepool Windows, Anda dapat menonaktifkan nodepool Windows setelah menyambungkan ke salah satu simpul fisik Lokal Azure dengan Desktop Jauh. Anda harus terlebih dahulu masuk ke Azure:
az k8s-extension update --resource-group $resourceGroup --cluster-name $clusterName --cluster-type appliances --name $extensionName --version $extensionVersion --release-train $releaseTrain --config disable-windows-nodepool=true --yes
Memvalidasi apakah fitur nodepool Windows dinonaktifkan
Anda dapat memeriksa apakah pengaturan konfigurasi diterapkan dengan menjalankan az k8s-extension show
, sebagai berikut:
az k8s-extension show --name $extensionName --resource-group $resourceGroup --cluster-name $clusterName --cluster-type appliances --query configurationSettings
Output yang diharapkan:
...
"disable-windows-nodepool": "true",
...
Selanjutnya, periksa apakah nodepool Windows dinonaktifkan dengan menjalankan perintah berikut:
az aksarc get-versions --resource-group $resourceGroup --custom-location $customlocationName
Output untuk osType=Windows
harus mengatakan "fitur nodepool Windows dinonaktifkan" dan ready
statusnya harus false
, untuk setiap opsi versi Kubernetes:
...
"1.27.7": {
"readiness": [
{
"errorMessage": null,
"osSku": "CBLMariner",
"osType": "Linux",
"ready": true
},
{
"errorMessage": "Windows nodepool feature is disabled",
"osSku": "Windows2019",
"osType": "Windows",
"ready": false
},
{
"errorMessage": "Windows nodepool feature is disabled",
"osSku": "Windows2022",
"osType": "Windows",
"ready": false
}
],
...
FAQ
Apa yang terjadi jika saya mencoba menonaktifkan kumpulan simpul Windows dan kumpulan simpul Windows ada pada setidaknya 1 kluster AKS pada penyebaran lokal Azure?
Anda harus menghapus nodepool Windows secara manual sebelum menonaktifkan fitur ini. Jika ada nodepool Windows yang ada, Anda tidak dapat menonaktifkan fitur tersebut.
Apa yang terjadi pada VHD Windows yang diunduh jika saya menonaktifkan kumpulan simpul Windows?
VHD Windows yang sebelumnya diunduh secara otomatis dihapus jika fitur nodepool Windows dinonaktifkan. Anda dapat memverifikasi apakah VHD Windows dihapus dari jalur penyimpanan Lokal Azure. Penghapusan bisa memakan waktu. Tunggu 30 menit sebelum memeriksa. Anda harus memeriksa semua jalur penyimpanan, karena VHD Windows ditetapkan ke jalur penyimpanan dengan cara round-robin, berdasarkan kapasitas penyimpanan yang tersedia.