Tersambung dengan RDP ke node kluster Azure Kubernetes Service (AKS) Windows Server untuk pemeliharaan atau pemecahan masalah
Sepanjang siklus hidup kluster Azure Kubernetes Service (AKS), Anda mungkin perlu mengakses simpul AKS Windows Server. Akses ini bisa untuk pemeliharaan, pengumpulan log, atau operasi pemecahan masalah lainnya. Anda dapat mengakses node AKS Windows Server menggunakan RDP. Untuk tujuan keamanan, simpul AKS tidak terekspos ke internet.
Atau, jika Anda ingin SSH ke simpul AKS Windows Server Anda, Anda memerlukan akses ke pasangan kunci yang sama yang digunakan selama pembuatan kluster. Ikuti langkah-langkah dalam SSH ke dalam node kluster Azure Kubernetes Service (AKS).
Artikel ini menunjukkan cara membuat koneksi RDP dengan simpul AKS menggunakan alamat IP privat mereka.
Sebelum Anda mulai
Artikel ini mengasumsikan bahwa Anda memiliki kluster AKS yang ada dengan simpul Window Server. Jika Anda memerlukan kluster AKS, lihat artikel tentang membuat kluster AKS dengan kontainer Windows menggunakan Azure CLI. Anda memerlukan nama pengguna dan kata sandi administrator Windows untuk simpul Windows Server yang ingin Anda pecahkan masalahnya. Anda juga memerlukan klien RDP seperti Desktop Jauh Microsoft.
Jika Anda perlu mengatur ulang kata sandi, gunakan az aks update
untuk mengubah kata sandi tersebut.
az aks update --resource-group myResourceGroup --name myAKSCluster --windows-admin-password $WINDOWS_ADMIN_PASSWORD
Jika Anda perlu mengatur ulang nama pengguna dan kata sandi, lihat Mereset Layanan Desktop Jauh atau kata sandi administratornya di VM Windows.
Anda juga membutuhkan Azure CLI versi 2.0.61 atau versi terbaru yang terpasang dan terkonfigurasi. Jalankan az --version
untuk menemukan versinya. Jika Anda perlu memasang atau meningkatkan, lihat Memasang Azure CLI.
Menyebarkan komputer virtual ke subnet yang sama dengan kluster Anda
Simpul Windows Server pada kluster AKS Anda tidak memiliki alamat IP yang dapat diakses secara eksternal. Untuk membuat koneksi RDP, Anda dapat menyebarkan komputer virtual dengan alamat IP yang dapat diakses publik ke subnet yang sama dengan simpul Windows Server Anda.
Contoh berikut ini menampilkan cara membuat komputer virtual bernama myVM di grup sumber daya bernama myResourceGroup.
Anda perlu mendapatkan ID subnet yang digunakan oleh kumpulan simpul Windows Server dan kueri untuk:
- Grup sumber daya node kluster
- Jaringan virtual
- Nama subnet
- ID subnet
CLUSTER_RG=$(az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv)
VNET_NAME=$(az network vnet list --resource-group $CLUSTER_RG --query [0].name -o tsv)
SUBNET_NAME=$(az network vnet subnet list --resource-group $CLUSTER_RG --vnet-name $VNET_NAME --query [0].name -o tsv)
SUBNET_ID=$(az network vnet subnet show --resource-group $CLUSTER_RG --vnet-name $VNET_NAME --name $SUBNET_NAME --query id -o tsv)
Karena Anda memiliki SUBNET_ID, jalankan perintah berikut ini di jendela Azure Cloud Shell yang sama untuk membuat mesin virtual:
PUBLIC_IP_ADDRESS="myVMPublicIP"
az vm create \
--resource-group myResourceGroup \
--name myVM \
--image win2019datacenter \
--admin-username azureuser \
--admin-password {admin-password} \
--subnet $SUBNET_ID \
--nic-delete-option delete \
--os-disk-delete-option delete \
--nsg "" \
--public-ip-address $PUBLIC_IP_ADDRESS \
--query publicIpAddress -o tsv
Contoh output berikut menunjukkan komputer virtual telah berhasil dibuat dan menampilkan alamat IP publik dari komputer virtual.
13.62.204.18
Sekarang telusuri ke alamat IP publik dari komputer virtual. Anda akan menggunakan alamat ini di langkah berikutnya.
Mengizinkan akses ke komputer virtual
Subnet kumpulan simpul AKS dilindungi dengan NSGs (Grup Keamanan Jaringan) secara default. Untuk mendapatkan akses ke komputer virtual, Anda harus mengaktifkan akses di NSG.
Catatan
NSGs dikendalikan oleh layanan AKS. Setiap perubahan yang Anda lakukan pada NSG akan ditimpa kapan saja oleh sarana kontrol.
Pertama, dapatkan grup sumber daya dan nama NSG untuk menambahkan aturan ke:
CLUSTER_RG=$(az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv)
NSG_NAME=$(az network nsg list --resource-group $CLUSTER_RG --query [].name -o tsv)
Kemudian, buat aturan NSG:
az network nsg rule create \
--name tempRDPAccess \
--resource-group $CLUSTER_RG \
--nsg-name $NSG_NAME \
--priority 100 \
--destination-port-range 3389 \
--protocol Tcp \
--description "Temporary RDP access to Windows nodes"
Mendapatkan alamat simpul
Untuk mengelola kluster Kubernetes, Anda menggunakan kubectl, klien baris perintah Kubernetes. Jika Anda menggunakan Azure Cloud Shell, kubectl
sudah terpasang. Untuk memasang kubectl
secara lokal, gunakan perintah az aks install-cli:
az aks install-cli
Untuk mengonfigurasi kubectl
agar tersambung ke kluster Kubernetes, gunakan perintah az aks get-credentials. Perintah ini mengunduh informasi masuk dan mengonfigurasi CLI Kube untuk menggunakannya.
az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Daftar alamat IP internal simpul Windows Server menggunakan perintah kubectl get:
kubectl get nodes -o wide
Contoh output berikut ini menunjukkan alamat IP internal dari semua simpul di dalam kluster, termasuk simpul Windows Server.
$ kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
aks-nodepool1-42485177-vmss000000 Ready agent 18h v1.12.7 10.240.0.4 <none> Ubuntu 16.04.6 LTS 4.15.0-1040-azure docker://3.0.4
aksnpwin000000 Ready agent 13h v1.12.7 10.240.0.67 <none> Windows Server Datacenter 10.0.17763.437
Rekam alamat IP internal dari simpul Windows Server yang ingin Anda pecahkan masalahnya. Anda akan menggunakan alamat ini di langkah berikutnya.
Tersambung ke komputer virtual dan simpul
Sambungkan ke alamat IP publik komputer virtual yang Anda buat sebelumnya menggunakan klien RDP seperti Desktop Jauh Microsoft.
Setelah Anda tersambung ke komputer virtual Anda, sambungkan ke alamat IP internal simpul Windows Server yang ingin Anda pecahkan masalahnya menggunakan klien RDP dari dalam komputer virtual Anda.
Saat ini, Anda tersambung ke node Windows Server Anda.
Kini Anda dapat menjalankan perintah pemecahan masalah di jendela cmd. Karena simpul Windows Server menggunakan Windows Server Core, tidak ada GUI penuh atau alat GUI lainnya ketika Anda tersambung ke simpul Windows Server melalui RDP.
Menghapus akses RDP
Setelah selesai, keluar dari koneksi RDP ke simpul Windows Server kemudian keluar dari sesi RDP ke komputer virtual. Setelah Anda keluar dari kedua sesi RDP, hapus mesin virtual dengan perintah az vm delete:
# Delete the virtual machine
az vm delete \
--resource-group myResourceGroup \
--name myVM
Hapus IP publik yang terkait dengan mesin virtual:
az network public-ip delete \
--resource-group myResourceGroup \
--name $PUBLIC_IP_ADDRESS
Hapus aturan NSG:
CLUSTER_RG=$(az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv)
NSG_NAME=$(az network nsg list --resource-group $CLUSTER_RG --query [].name -o tsv)
az network nsg rule delete \
--resource-group $CLUSTER_RG \
--nsg-name $NSG_NAME \
--name tempRDPAccess
Menyambungkan dengan Azure Bastion
Atau, Anda bisa menggunakan Azure Bastion untuk membuat sambungan ke node Windows Server Anda.
Sebarkan Azure Bastion
Untuk menyebarkan Azure Bastion, Anda harus menemukan jaringan virtual yang tersambung dengan kluster AKS Anda.
- Di portal Azure, bukalah Jaringan virtual. Pilih jaringan virtual yang tersambung dengan kluster AKS Anda.
- Di Pengaturan, pilih Bastion, lalu pilih Sebarkan Bastion. Tunggu hingga proses selesai sebelum melanjutkan ke langkah selanjutnya.
Membuat sambungan ke node Windows Server Anda menggunakan Azure Bastion
Buka grup sumber daya node pada kluster AKS. Jalankan perintah di bawah ini pada Azure Cloud Shell untuk mendapatkan nama grup sumber daya node Anda:
az aks show --name myAKSCluster --resource-group myResourceGroup --query 'nodeResourceGroup' -o tsv
- Pilih Gambaran Umum, lalu pilih set skala mesin virtual kumpulan node Windows Anda.
- Di bagian Pengaturan, pilih Instans. Pilih node server Windows yang ingin Anda sambungkan.
- Di Dukungan + pemecahan masalah, pilih Bastion.
- Masukkan informasi masuk yang Anda siapkan ketika kluster AKS dibuat. Pilih Sambungkan.
Kini Anda dapat menjalankan perintah pemecahan masalah di jendela cmd. Karena simpul Windows Server menggunakan Windows Server Core, tidak ada GUI penuh atau alat GUI lainnya ketika Anda tersambung ke simpul Windows Server melalui RDP.
Catatan
Apabila Anda menutup jendela terminal, tekan CTRL + ALT + End, pilih Pengelola Tugas, pilih Detail selengkapnya, pilih File, pilih Jalankan tugas baru, dan masukkan cmd.exe untuk membuka terminal lain. Anda juga bisa keluar dan terhubung kembali dengan Bastion.
Menghapus akses Bastion
Ketika Anda selesai, keluar dari sesi Bastion dan hapus sumber daya Bastion.
- Di portal Microsoft Azure, buka Bastion dan pilih sumber daya Bastion yang Anda buat.
- Di bagian atas halaman, pilih Hapus. Tunggu hingga proses selesai sebelum melanjutkan ke langkah berikutnya.
- Di portal Azure, bukalah Jaringan virtual. Pilih jaringan virtual yang tersambung dengan kluster AKS Anda.
- Di Pengaturan, pilih Subnet, dan hapus subnet AzureBastionSubnet yang dibuat untuk sumber daya Bastion.
Langkah berikutnya
Jika Anda memerlukan data pemecahan masalah tambahan, Anda bisa melihat log node utama Kubernetes atau Azure Monitor.
Azure Kubernetes Service