Delen via


Zelfstudie: Een workloadcluster implementeren op AKS ingeschakeld door Arc

Van toepassing op: AKS in Azure Local 22H2, AKS op Windows Server

Kubernetes biedt een gedistribueerd platform voor toepassingen in containers.

In deze zelfstudie wordt deel drie van zeven een Kubernetes-cluster geïmplementeerd op AKS in Azure Local. U leert het volgende:

  • Een AKS-cluster implementeren in Azure Local
  • De Kubernetes-CLI (kubectl) installeren
  • Kubectl configureren om verbinding te maken met uw workloadcluster

In latere zelfstudies wordt de Azure Vote-toepassing geïmplementeerd in het cluster, geschaald en bijgewerkt.

Voordat u begint

In de vorige zelfstudies is een containerinstallatiekopie gemaakt en geüpload naar een Azure Container Registry-exemplaar. Als u deze stappen nog niet hebt uitgevoerd, begint u bij zelfstudie 1: Containerinstallatiekopieën maken.

In deze zelfstudie wordt de AksHci PowerShell-module gebruikt.

Volg deze stappen op alle knooppunten in uw lokale Azure-cluster of Windows Server-cluster:

Notitie

Als u externe PowerShell gebruikt, moet u CredSSP gebruiken.

  1. Sluit alle geopende PowerShell-vensters, open een nieuwe PowerShell-sessie als beheerder en voer de volgende opdracht uit op alle knooppunten in uw Lokale Azure- of Windows Server-cluster:

    Install-PackageProvider -Name NuGet -Force 
    Install-Module -Name PowershellGet -Force -Confirm:$false
    

    U moet alle bestaande PowerShell-vensters opnieuw sluiten om ervoor te zorgen dat geladen modules worden vernieuwd. Ga niet verder met de volgende stap totdat u alle geopende PowerShell-vensters sluit.

  2. Installeer de AKS-HCI PowerShell-module door de volgende opdracht uit te voeren op alle knooppunten in uw Lokale Azure- of Windows Server-cluster:

    Install-Module -Name AksHci -Repository PSGallery -Force -AcceptLicense
    

    U moet alle bestaande PowerShell-vensters opnieuw sluiten om ervoor te zorgen dat geladen modules worden vernieuwd. Ga niet verder met de volgende stap totdat u alle geopende PowerShell-vensters sluit.

U kunt een helperscript gebruiken om oude AKS-HCI PowerShell-modules te verwijderen om eventuele problemen met de Versie van PowerShell in uw AKS-implementatie te voorkomen.

Uw installatie valideren

Get-Command -Module AksHci

Zie AksHci PowerShell om de volledige lijst met AksHci PowerShell-opdrachten weer te geven.

De Azure Kubernetes Service-host installeren

Configureer eerst uw registratie-instellingen.

Set-AksHciRegistration -subscription mysubscription -resourceGroupName myresourcegroup

U moet deze waarden aanpassen op basis van de naam van uw Azure-abonnement en resourcegroep.

Voer vervolgens de volgende opdracht uit om ervoor te zorgen dat aan alle vereisten op elk fysiek knooppunt wordt voldaan om AKS te installeren op Azure Local:

Initialize-AksHciNode

Maak vervolgens een virtueel netwerk. U hebt de namen van uw beschikbare externe switches nodig:

Get-VMSwitch

Voorbeelduitvoer:

Name        SwitchType    NetAdapterInterfaceDescription
----        ----------    ------------------------------
extSwitch   External      Mellanox ConnectX-3 Pro Ethernet Adapter

Voer de volgende opdracht uit om een virtueel netwerk met een statisch IP-adres te maken:

$vnet = New-AksHciNetworkSetting -name myvnet -vSwitchName "extSwitch" -macPoolName myMacPool -k8sNodeIpPoolStart "172.16.10.0" -k8sNodeIpPoolEnd "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipAddressPrefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsServers "172.16.0.1" -vlanId 9

Configureer vervolgens uw implementatie met de volgende opdracht.

Set-AksHciConfig -imageDir c:\clusterstorage\volume1\Images -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16" 

U bent nu klaar om de AKS-host te installeren:

Install-AksHCi

Een Kubernetes-cluster maken

Maak een Kubernetes-cluster met behulp van de opdracht New-AksHciCluster. In het volgende voorbeeld wordt een cluster gemaakt met de naam één Linux-knooppuntgroep myclustermet de naam linuxnodepool , met een aantal knooppunten van 1:

New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1

Voer de volgende opdracht uit om te controleren of de implementatie is geslaagd.

Get-AksHcicluster -name mycluster
ProvisioningState     : provisioned
KubernetesVersion     : v1.20.7
NodePools             : linuxnodepool
WindowsNodeCount      : 0
LinuxNodeCount        : 0
ControlPlaneNodeCount : 1
Name                  : mycluster

Notitie

Als u de nieuwe parametersets gebruikt New-AksHciCluster om een cluster te implementeren en vervolgens uitvoert Get-AksHciCluster om de clustergegevens op te halen, worden de velden WindowsNodeCount en LinuxNodeCount in de uitvoer geretourneerd 0. Als u het nauwkeurige aantal knooppunten in elke knooppuntgroep wilt ophalen, gebruikt u de opdracht Get-AksHciNodePool met de opgegeven clusternaam.

Voer de volgende Get-AksHciNodePool PowerShell-opdracht uit om een lijst met de knooppuntgroepen in het cluster op te halen:

Get-AksHciNodePool -clusterName mycluster
ClusterName  : mycluster
NodePoolName : linuxnodepool
Version      : v1.20.7
OsType       : Linux
NodeCount    : 1
VmSize       : Standard_K8S3_v1
Phase        : Deployed

De Kubernetes-CLI installeren

Als u vanaf uw lokale computer verbinding wilt maken met het Kubernetes-cluster, gebruikt u kubectl, de Kubernetes-opdrachtregelclient.

Verbinding maken met cluster met behulp van kubectl

Gebruik de kubectl om verbinding te maken met uw Kubernetes-cluster. In het volgende voorbeeld worden referenties opgehaald voor het cluster met de naam mycluster:

Get-AksHciCredential -name mycluster

Als u de verbinding met uw cluster wilt controleren, voert u de opdracht kubectl get nodes uit om een lijst met de clusterknooppunten te retourneren:

kubectl get nodes
NAME              STATUS   ROLES                  AGE     VERSION
moc-lbs6got5dqo   Ready    <none>                 6d20h   v1.20.7
moc-lel7tzxdt30   Ready    control-plane,master   6d20h   v1.20.7

Volgende stappen

In deze zelfstudie is een Kubernetes-cluster geïmplementeerd in AKS, en hebt u kubectl geconfigureerd om er verbinding mee te maken. U hebt geleerd hoe u:

  • Een AKS-cluster implementeren in Azure Local
  • De Kubernetes-CLI (kubectl) installeren
  • Kubectl configureren om verbinding te maken met uw AKS-cluster

Ga door naar de volgende zelfstudie voor informatie over het implementeren van toepassingen naar het cluster.