Nastavení hostitele Azure Kubernetes Service v Azure Stack HCI a Windows Serveru a nasazení clusteru úloh pomocí PowerShellu
Platí pro: Azure Stack HCI nebo Windows Server Datacenter
Tento rychlý start vás provede nastavením hostitele Azure Kubernetes Service (AKS). Clustery Kubernetes vytvoříte v Azure Stack HCI a Windows Serveru pomocí PowerShellu. Pokud chcete místo toho použít Windows Admin Center, přečtěte si téma Nastavení pomocí Windows Admin Center.
Poznámka
- Pokud máte předem připravené objekty služby clusteru a záznamy DNS, přečtěte si téma Nasazení hostitele AKS s předzpracovanými objekty služby clusteru a záznamy DNS pomocí PowerShellu.
- Pokud máte proxy server, přečtěte si téma Nastavení hostitele AKS a nasazení clusteru úloh pomocí PowerShellu a proxy serveru.
- Instalace AKS na Azure Stack HCI po nastavení virtuálních počítačů Arc se nepodporuje. Další informace najdete v tématu známé problémy s virtuálními počítači Arc. Pokud chcete nainstalovat AKS ve službě Azure Stack HCI, musíte odinstalovat nástroj Arc Resource Bridge a pak nainstalovat AKS ve službě Azure Stack HCI. Po vyčištění a instalaci AKS můžete znovu nasadit nový most prostředků Arc, ale nebude si pamatovat entity virtuálních počítačů, které jste vytvořili dříve.
Než začnete
- Ujistěte se, že splňujete všechny požadavky v požadavcích na systém.
- Pomocí účtu Azure zaregistrujte hostitele AKS k fakturaci. Další informace najdete v tématu Požadavky na Azure.
Instalace modulu PowerShellu AksHci
Ve všech uzlech v clusteru Azure Stack HCI nebo clusteru Windows Serveru postupujte takto:
Poznámka
Pokud používáte vzdálený PowerShell, musíte použít CredSSP.
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
Pokud chcete zajistit, aby se načtené moduly aktualizovaly, musíte znovu zavřít všechna existující okna PowerShellu. Nepokračujte k dalšímu kroku, dokud nezavřete všechna otevřená okna PowerShellu.
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
Pokud chcete zajistit, aby se načtené moduly aktualizovaly, musíte znovu zavřít všechna existující okna PowerShellu. 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.
Registrace poskytovatele prostředků ve vašem předplatném
Před procesem registrace povolte příslušného poskytovatele prostředků v Azure pro AKS povolenou registrací Arc. Uděláte to tak, že spustíte následující příkazy PowerShellu:
Pokud se chcete přihlásit k Azure, spusťte příkaz PowerShellu Connect-AzAccount :
Connect-AzAccount
Pokud chcete přepnout na jiné předplatné, spusťte příkaz PowerShellu Set-AzContext :
Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"
Spuštěním následujících příkazů zaregistrujte své předplatné Azure k poskytovatelům prostředků Kubernetes s podporou Azure Arc. Tento proces registrace může trvat až 10 minut, ale v konkrétním předplatném ho stačí provést jenom jednou:
Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Pokud chcete ověřit proces registrace, spusťte následující příkazy PowerShellu:
Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Get-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Krok 1: Příprava počítačů k nasazení
Na každém fyzickém uzlu spusťte kontroly, abyste zjistili, jestli jsou splněné všechny požadavky na instalaci AKS povolené službou Arc. Otevřete PowerShell jako správce a na všech uzlech v clusteru Azure Stack HCI a Windows Serveru spusťte následující příkaz Initialize-AksHciNode :
Initialize-AksHciNode
Krok 2: Vytvoření virtuální sítě
Na libovolném uzlu v clusteru Azure Stack HCI a Windows Serveru spusťte následující příkazy.
Pokud chcete získat názvy dostupných přepínačů, spusťte následující příkaz. Ujistěte se, SwitchType
že přepínač virtuálního počítače je Externí:
Get-VMSwitch
Ukázkový výstup:
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
extSwitch External Mellanox ConnectX-3 Pro Ethernet Adapter
Pokud chcete vytvořit virtuální síť pro uzly ve vašem nasazení, které se mají použít, vytvořte proměnnou prostředí pomocí příkazu New-AksHciNetworkSetting PowerShellu. Tato virtuální síť se později použije ke konfiguraci nasazení, které používá statickou IP adresu. Pokud chcete nakonfigurovat nasazení AKS pomocí protokolu DHCP, příklady najdete v tématu New-AksHciNetworkSetting . Můžete si také projít některé koncepty síťových uzlů.
#static IP
$vnet = New-AksHciNetworkSetting -name myvnet -vSwitchName "extSwitch" -k8sNodeIpPoolStart "172.16.10.1" -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
Poznámka
Hodnoty zobrazené v tomto příkladu musíte přizpůsobit pro vaše prostředí.
Krok 3: Konfigurace nasazení
Na libovolném uzlu v clusteru Azure Stack HCI a Windows Serveru spusťte následující příkazy.
Pokud chcete vytvořit nastavení konfigurace pro hostitele AKS, použijte příkaz Set-AksHciConfig . Musíte zadat imageDir
parametry , workingDir
a cloudConfigLocation
. Pokud chcete resetovat podrobnosti o konfiguraci, spusťte příkaz znovu s novými parametry.
Nakonfigurujte nasazení pomocí následujícího příkazu:
$csvPath = 'C:\clusterstorage\volume01' # Specify your preferred CSV path
Set-AksHciConfig -imageDir $csvPath\Images -workingDir $csvPath\ImageStore -cloudConfigLocation $csvPath\Config -vnet $vnet
Poznámka
Hodnoty zobrazené v tomto příkladu musíte přizpůsobit pro vaše prostředí.
Krok 4: Přihlášení k Azure a konfigurace nastavení registrace
Možnost 1: Pokud máte oprávnění vlastníka, použijte svůj účet Microsoft Entra.
Spusťte následující příkaz PowerShellu Set-AksHciRegistration s vaším předplatným a názvem skupiny prostředků a přihlaste se k Azure. Musíte mít předplatné Azure a existující skupinu prostředků Azure v oblastech Azure Austrálie – východ, USA – východ, Jihovýchodní Asie nebo Západní Evropa:
Set-AksHciRegistration -subscriptionId "<subscriptionId>" -resourceGroupName "<resourceGroupName>"
Možnost 2: Použití instančního objektu Azure
Pokud nemáte přístup k předplatnému, ve kterém jste vlastníkem, můžete hostitele AKS zaregistrovat v Azure k fakturaci pomocí instančního objektu. Další informace o použití instančního objektu najdete v tématu registrace AKS ve službě Azure Stack HCI a Windows Serveru pomocí instančního objektu.
Krok 5: Spuštění nového nasazení
Na libovolném uzlu v clusteru Azure Stack HCI nebo Windows Serveru spusťte následující příkaz.
Po konfiguraci nasazení ho musíte spustit, abyste mohli nainstalovat agenty/služby AKS a hostitele AKS. Nasazení zahájíte spuštěním následujícího příkazu:
Tip
Pokud chcete během instalace zobrazit další podrobnosti o stavu, nastavte $VerbosePreference = "Continue"
ji před pokračováním.
Install-AksHci
Upozornění
Během instalace hostitele AKS se ve skupině prostředků nastavené během registrace vytvoří typ prostředku Kubernetes – Azure Arc . Neodstraňovat tento prostředek, protože představuje vašeho hostitele AKS. Zdroj můžete identifikovat tak, že v jeho distribučním poli zkontrolujete hodnotu aks_management
. Pokud tento prostředek odstraníte, dojde k nasazení mimo zásady.
Krok 6: Vytvoření clusteru Kubernetes
Po instalaci hostitele AKS můžete nasadit cluster Kubernetes. Otevřete PowerShell jako správce a spusťte následující příkaz New-AksHciCluster . Tento ukázkový příkaz vytvoří nový cluster Kubernetes s jedním fondem linuxových uzlů s názvem linuxnodepool
s počtem uzlů 1.
Další informace o fondech uzlů najdete v tématu Použití fondů uzlů v AKS.
New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1 -osType Linux
Kontrola nasazených clusterů
Pokud chcete získat seznam nasazených clusterů Kubernetes, spusťte následující příkaz PowerShellu Get-AksHciCluster :
Get-AksHciCluster
ProvisioningState : provisioned
KubernetesVersion : v1.20.7
NodePools : linuxnodepool
WindowsNodeCount : 0
LinuxNodeCount : 0
ControlPlaneNodeCount : 1
Name : mycluster
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
Krok 7: Připojení clusteru k Kubernetes s podporou Arc
Připojte cluster k Kubernetes s podporou arc spuštěním příkazu Enable-AksHciArcConnection . Následující příklad připojí cluster Kubernetes ke službě Arc pomocí podrobností o předplatném a skupině prostředků, které jste předali v příkazu Set-AksHciRegistration
:
Connect-AzAccount
Enable-AksHciArcConnection -name mycluster
Poznámka
Pokud během procesu instalace narazíte na problémy nebo chybové zprávy, další informace najdete v tématu Známé problémy a chyby instalace .
Škálování clusteru Kubernetes
Pokud potřebujete vertikálně navýšit nebo snížit kapacitu clusteru, můžete změnit počet uzlů řídicí roviny pomocí příkazu Set-AksHciCluster . Pokud chcete změnit počet pracovních uzlů s Linuxem nebo Windows ve fondu uzlů, použijte příkaz Set-AksHciNodePool .
Pokud chcete škálovat uzly řídicí roviny, spusťte následující příkaz:
Set-AksHciCluster -name mycluster -controlPlaneNodeCount 3
Pokud chcete škálovat pracovní uzly ve fondu uzlů, spusťte následující příkaz:
Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3
Poznámka
V předchozích verzích AKS v Azure Stack HCI a Windows Serveru se ke škálování pracovních uzlů používal také příkaz Set-AksHciCluster . Teď, když AKS zavádí fondy uzlů v clusterech úloh, můžete tento příkaz použít ke škálování pracovních uzlů pouze v případě, že byl váš cluster vytvořen se starým parametrem nastaveným v New-AksHciCluster.
Pokud chcete škálovat pracovní uzly ve fondu uzlů, použijte příkaz Set-AksHciNodePool .
Přístup ke clusterům pomocí kubectl
Pokud chcete získat přístup ke clusterům Kubernetes pomocí kubectl, spusťte příkaz PowerShellu Get-AksHciCredential . Použije se soubor kubeconfig zadaného clusteru jako výchozí soubor kubeconfig pro kubectl. K nasazení aplikací pomocí Helmu můžete použít také kubectl:
Get-AksHciCredential -name mycluster
Odstranění clusteru Kubernetes
Pokud chcete odstranit cluster Kubernetes, spusťte následující příkaz:
Remove-AksHciCluster -name mycluster
Poznámka
Ujistěte se, že je váš cluster odstraněný, a to tak, že se podíváte na existující virtuální počítače ve Správci technologie Hyper-V. Pokud se neodstraní, můžete virtuální počítače odstranit ručně. Potom spusťte příkaz Restart-Service wssdagent
. Spusťte tento příkaz na každém uzlu v clusteru s podporou převzetí služeb při selhání.
Získání protokolů
Pokud chcete získat protokoly ze všech podů, spusťte příkaz Get-AksHciLogs . Tento příkaz vytvoří výstupní komprimovanou složku s názvem akshcilogs.zip
v pracovním adresáři. Úplná cesta ke akshcilogs.zip
složce je výstupem po spuštění následujícího příkazu:
Get-AksHciLogs
V tomto rychlém startu jste zjistili, jak nastavit hostitele AKS a vytvořit clustery Kubernetes pomocí PowerShellu. Dozvěděli jste se také, jak pomocí PowerShellu škálovat cluster Kubernetes a přistupovat ke clusterům pomocí kubectl
.