Verbinding maken met RDP met AKS-cluster (Azure Kubernetes Service) Windows Server-knooppunten voor onderhoud of probleemoplossing
Tijdens de levenscyclus van uw AKS-cluster (Azure Kubernetes Service) moet u mogelijk toegang krijgen tot een AKS Windows Server-knooppunt. Deze toegang kan betrekking hebben op onderhoud, logboekverzameling of andere probleemoplossingsbewerkingen. U hebt toegang tot de AKS Windows Server-knooppunten met behulp van RDP. Voor beveiligingsdoeleinden worden de AKS-knooppunten niet blootgesteld aan internet.
Als u SSH wilt gebruiken voor uw AKS Windows Server-knooppunten, hebt u ook toegang nodig tot hetzelfde sleutelpaar dat is gebruikt tijdens het maken van het cluster. Volg de stappen in SSH in AKS-clusterknooppunten (Azure Kubernetes Service).
In dit artikel leest u hoe u een RDP-verbinding maakt met een AKS-knooppunt met behulp van hun privé-IP-adressen.
Voordat u begint
In dit artikel wordt ervan uitgegaan dat u een bestaand AKS-cluster met een Windows Server-knooppunt hebt. Als u een AKS-cluster nodig hebt, raadpleegt u het artikel over het maken van een AKS-cluster met een Windows-container met behulp van de Azure CLI. U hebt de gebruikersnaam en het wachtwoord van de Windows-beheerder nodig voor het Windows Server-knooppunt dat u wilt oplossen. U hebt ook een RDP-client nodig, zoals Microsoft Extern bureaublad.
Als u het wachtwoord opnieuw wilt instellen, gebruikt az aks update
u dit om het wachtwoord te wijzigen.
az aks update --resource-group myResourceGroup --name myAKSCluster --windows-admin-password $WINDOWS_ADMIN_PASSWORD
Als u de gebruikersnaam en het wachtwoord opnieuw wilt instellen, raadpleegt u Extern bureaublad-services of het bijbehorende beheerderswachtwoord opnieuw instellen op een Windows-VM.
U hebt ook azure CLI versie 2.0.61 of hoger geïnstalleerd en geconfigureerd. Voer az --version
uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.
Een virtuele machine implementeren in hetzelfde subnet als uw cluster
De Windows Server-knooppunten van uw AKS-cluster hebben geen extern toegankelijke IP-adressen. Als u een RDP-verbinding wilt maken, kunt u een virtuele machine implementeren met een openbaar toegankelijk IP-adres naar hetzelfde subnet als uw Windows Server-knooppunten.
In het volgende voorbeeld wordt een virtuele machine met de naam myVM gemaakt in de resourcegroep myResourceGroup .
U moet de subnet-id ophalen die wordt gebruikt door uw Windows Server-knooppuntgroep en een query uitvoeren op:
- De knooppuntresourcegroep van het cluster
- Het virtuele netwerk
- De naam van het subnet
- De subnet-id
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)
Nu u de SUBNET_ID hebt, voert u de volgende opdracht uit in hetzelfde Azure Cloud Shell-venster om de virtuele machine te maken:
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
In de volgende voorbeelduitvoer ziet u dat de virtuele machine is gemaakt en wordt het openbare IP-adres van de virtuele machine weergegeven.
13.62.204.18
Noteer het openbare IP-adres van de virtuele machine. U gebruikt dit adres in een latere stap.
Toegang tot de virtuele machine toestaan
Subnetten van AKS-knooppuntgroepen worden standaard beveiligd met NSG's (netwerkbeveiligingsgroepen). Als u toegang wilt krijgen tot de virtuele machine, moet u toegang inschakelen in de NSG.
Notitie
De NSG's worden beheerd door de AKS-service. Elke wijziging die u in de NSG aanbrengt, wordt op elk gewenst moment overschreven door het besturingsvlak.
Haal eerst de resourcegroep en de naam van de NSG op om de regel toe te voegen aan:
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)
Maak vervolgens de NSG-regel:
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"
Het knooppuntadres ophalen
Als u een Kubernetes-cluster wilt beheren, gebruikt u kubectl, de Kubernetes-opdrachtregelclient. Als u Azure Cloud Shell gebruikt, is kubectl
al geïnstalleerd. Als u kubectl
lokaal wilt installeren, gebruikt u de opdracht az aks install-cli:
az aks install-cli
Gebruik de opdracht az aks get-credentials om kubectl
zodanig te configureren dat er verbinding wordt gemaakt met het Kubernetes-cluster. Bij deze opdracht worden referenties gedownload en wordt Kubernetes CLI geconfigureerd voor het gebruik van deze referenties.
az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Geef het interne IP-adres van de Windows Server-knooppunten weer met behulp van de opdracht kubectl get :
kubectl get nodes -o wide
In de volgende voorbeelduitvoer ziet u de interne IP-adressen van alle knooppunten in het cluster, inclusief de Windows Server-knooppunten.
$ 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
Noteer het interne IP-adres van het Windows Server-knooppunt dat u wilt oplossen. U gebruikt dit adres in een latere stap.
Verbinding maken met de virtuele machine en het knooppunt
Maak verbinding met het openbare IP-adres van de virtuele machine die u eerder hebt gemaakt met behulp van een RDP-client, zoals Microsoft Extern bureaublad.
Nadat u verbinding hebt gemaakt met uw virtuele machine, maakt u verbinding met het interne IP-adres van het Windows Server-knooppunt dat u wilt oplossen met behulp van een RDP-client vanuit uw virtuele machine.
U bent nu verbonden met uw Windows Server-knooppunt.
U kunt nu alle opdrachten voor probleemoplossing uitvoeren in het cmd-venster . Omdat Windows Server-knooppunten Windows Server Core gebruiken, is er geen volledige GUI of andere GUI-hulpprogramma's wanneer u via RDP verbinding maakt met een Windows Server-knooppunt.
RDP-toegang verwijderen
Wanneer u klaar bent, sluit u de RDP-verbinding met het Windows Server-knooppunt en sluit u vervolgens de RDP-sessie af op de virtuele machine. Nadat u beide RDP-sessies hebt afgesloten, verwijdert u de virtuele machine met de opdracht az vm delete :
# Delete the virtual machine
az vm delete \
--resource-group myResourceGroup \
--name myVM
Verwijder het openbare IP-adres dat is gekoppeld aan de virtuele machine:
az network public-ip delete \
--resource-group myResourceGroup \
--name $PUBLIC_IP_ADDRESS
Verwijder de NSG-regel:
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
Verbinding maken met Azure Bastion
U kunt ook Azure Bastion gebruiken om verbinding te maken met uw Windows Server-knooppunt.
Azure Bastion implementeren
Als u Azure Bastion wilt implementeren, moet u het virtuele netwerk vinden waar uw AKS-cluster mee is verbonden.
- Ga in Azure Portal naar Virtuele netwerken. Selecteer het virtuele netwerk waaraan uw AKS-cluster is gekoppeld.
- Selecteer Bastion onder Instellingen en selecteer Vervolgens Bastion implementeren. Wacht totdat het proces is voltooid voordat u naar de volgende stap gaat.
Verbinding maken met uw Windows Server-knooppunten met behulp van Azure Bastion
Ga naar de knooppuntresourcegroep van het AKS-cluster. Voer de onderstaande opdracht uit in Azure Cloud Shell om de naam van uw knooppuntresourcegroep op te halen:
az aks show --name myAKSCluster --resource-group myResourceGroup --query 'nodeResourceGroup' -o tsv
- Selecteer Overzicht en selecteer de virtuele-machineschaalset van uw Windows-knooppuntgroep.
- Selecteer onder Instellingen de optie Instanties. Selecteer een Windows-serverknooppunt waarmee u verbinding wilt maken.
- Selecteer Bastion onder Ondersteuning en probleemoplossing.
- Voer de referenties in die u hebt ingesteld toen het AKS-cluster werd gemaakt. Selecteer Verbinding maken.
U kunt nu alle opdrachten voor probleemoplossing uitvoeren in het cmd-venster . Omdat Windows Server-knooppunten Windows Server Core gebruiken, is er geen volledige GUI of andere GUI-hulpprogramma's wanneer u via RDP verbinding maakt met een Windows Server-knooppunt.
Notitie
Als u het terminalvenster sluit, drukt u op Ctrl+Alt+End, selecteert u Taakbeheer, selecteert u Meer details, selecteert u Bestand, selecteert u Nieuwe taak uitvoeren en voert u cmd.exe in om een andere terminal te openen. U kunt ook afmelden en opnieuw verbinding maken met Bastion.
Bastion-toegang verwijderen
Wanneer u klaar bent, sluit u de Bastion-sessie af en verwijdert u de Bastion-resource.
- Ga in Azure Portal naar Bastion en selecteer de Bastion-resource die u hebt gemaakt.
- Selecteer Verwijderen bovenaan de pagina. Wacht totdat het proces is voltooid voordat u doorgaat met de volgende stap.
- Ga in Azure Portal naar Virtuele netwerken. Selecteer het virtuele netwerk waarmee uw AKS-cluster is verbonden.
- Selecteer onder Instellingen het subnet en verwijder het subnet AzureBastionSubnet dat is gemaakt voor de Bastion-resource.
Volgende stappen
Als u meer gegevens voor probleemoplossing nodig hebt, kunt u de logboeken van het primaire Kubernetes-knooppunt of Azure Monitor bekijken.
Azure Kubernetes Service