Sdílet prostřednictvím


Kurz: Nasazení clusteru úloh v AKS s povolenou službou Arc

Platí pro: AKS v Azure Stack HCI 22H2, AKS na Windows Serveru

Kubernetes poskytuje distribuovanou platformu pro kontejnerizované aplikace.

V tomto kurzu, který je třetí částí sedmidílné série, se cluster Kubernetes nasadí v AKS v Azure Stack HCI. Dozvíte se, jak:

  • Nasazení clusteru AKS v Azure Stack HCI
  • Instalace rozhraní příkazového řádku Kubernetes (kubectl)
  • Konfigurace kubectl pro připojení ke clusteru úloh

V dalších kurzech se aplikace Azure Vote nasadí do clusteru, škáluje se a aktualizuje.

Než začnete

V předchozích kurzech se vytvořila image kontejneru a nahrála se do instance služby Azure Container Registry. Pokud jste tyto kroky ještě neudělali, začněte kurzem 1 – Vytváření imagí kontejnerů.

Tento kurz používá modul PowerShellu AksHci.

Na všech uzlech v clusteru Azure Stack HCI nebo clusteru s Windows Serverem postupujte takto:

Poznámka

Pokud používáte vzdálený PowerShell, musíte použít CredSSP.

  1. Zavřete všechna otevřená okna PowerShellu, otevřete novou relaci PowerShellu jako správce a na všech uzlech v clusteru Azure Stack HCI nebo Windows Serveru spusťte následující příkaz:

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

    Musíte znovu zavřít všechna existující okna PowerShellu, aby se zajistilo, že se načtené moduly aktualizují. Nepokračujte k dalšímu kroku, dokud nezavřete všechna otevřená okna PowerShellu.

  2. Nainstalujte modul PowerShellu AKS-HCI spuštěním následujícího příkazu na všech uzlech v clusteru Azure Stack HCI nebo Windows Serveru:

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

    Musíte znovu zavřít všechna existující okna PowerShellu, aby se zajistilo, že se načtené moduly aktualizují. Nepokračujte k dalšímu kroku, dokud nezavřete všechna otevřená okna PowerShellu.

Pomocí pomocného skriptu můžete odstranit staré moduly PowerShellu AKS-HCI, abyste se vyhnuli problémům souvisejícím s verzí PowerShellu v nasazení AKS.

Ověření instalace

Get-Command -Module AksHci

Úplný seznam příkazů PowerShellu AksHci najdete v tématu AksHci PowerShell.

Instalace hostitele Azure Kubernetes Service

Nejprve nakonfigurujte nastavení registrace.

Set-AksHciRegistration -subscription mysubscription -resourceGroupName myresourcegroup

Tyto hodnoty musíte přizpůsobit podle názvu vašeho předplatného Azure a skupiny prostředků.

Potom spuštěním následujícího příkazu ověřte, že jsou splněné všechny požadavky na každý fyzický uzel pro instalaci AKS do Azure Stack HCI:

Initialize-AksHciNode

Dále vytvořte virtuální síť. Budete potřebovat názvy dostupných externích přepínačů:

Get-VMSwitch

Ukázkový výstup:

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

Spuštěním následujícího příkazu vytvořte virtuální síť se statickou IP adresou:

$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

Potom nakonfigurujte nasazení pomocí následujícího příkazu.

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

Teď jste připraveni k instalaci hostitele AKS:

Install-AksHCi

Vytvoření clusteru Kubernetes

Vytvořte cluster Kubernetes pomocí příkazu New-AksHciCluster. Následující příklad vytvoří cluster s názvem mycluster s jedním fondem linuxových uzlů s názvem linuxnodepool, který má počet uzlů 1:

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

Pokud chcete ověřit, že nasazení proběhlo úspěšně, spusťte následující příkaz.

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

Poznámka

Pokud k nasazení clusteru použijete nové sady parametrů v New-AksHciCluster a pak spuštěním příkazu Get-AksHciCluster získáte informace o clusteru, pole WindowsNodeCount a LinuxNodeCount ve výstupu vrátí 0. Pokud chcete získat přesný počet uzlů v každém fondu uzlů, použijte příkaz Get-AksHciNodePool se zadaným názvem clusteru.

Pokud chcete získat seznam fondů uzlů v clusteru, spusťte následující příkaz PowerShellu Get-AksHciNodePool :

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

Instalace rozhraní příkazového řádku Kubernetes

Pokud se chcete připojit ke clusteru Kubernetes z místního počítače, použijte kubectl, klienta příkazového řádku Kubernetes.

Připojení ke clusteru pomocí kubectl

Pokud chcete nakonfigurovat kubectl připojení ke clusteru Kubernetes, použijte příkaz Get-AksHciCredential . Následující příklad získá přihlašovací údaje pro cluster s názvem mycluster:

Get-AksHciCredential -name mycluster

Pokud chcete ověřit připojení ke clusteru, spusťte příkaz kubectl get nodes , který vrátí seznam uzlů clusteru:

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

Další kroky

V tomto kurzu se nasadil cluster Kubernetes ve službě AKS a nakonfigurovali jste kubectl pro připojení k tomuto clusteru. Naučili jste se:

  • Nasazení clusteru AKS v Azure Stack HCI
  • Instalace rozhraní příkazového řádku Kubernetes (kubectl)
  • Konfigurace kubectl pro připojení ke clusteru AKS

V dalším kurzu se dozvíte, jak do clusteru nasadit aplikaci.