Rychlý start: Nastavení hostitele AKS na Azure Stack HCI a nasazení clusteru úloh pomocí PowerShellu a proxy server

Platí pro: Azure Stack HCI, verze 21H2 a 20H2; Windows Server 2022 Datacenter, Windows Server 2019 Datacenter

V tomto rychlém startu se dozvíte, jak nastavit hostitele Azure Kubernetes Service a vytvořit AKS na clusterech Azure Stack HCI pomocí PowerShellu v prostředí, kde proxy server filtruje a kontroluje provoz vázaný na internet. Pokud místo toho chcete Windows Admin Center, podívejte se na nastavení pomocí Windows Admin Center.

Poznámka

Pokud máte předzpracované objekty clusterové služby a záznamy DNS, podívejte se na další kroky v tématu Nasazení hostitele AKS s objekty předzpracované clusterové služby a záznamy DNS pomocí PowerShellu.

Než začnete

  • Ujistěte se, že jste na stránce s požadavky na systém splňuje všechny požadavky.

  • Účet Azure pro registraci hostitele AKS pro fakturaci. Další informace najdete v požadavcích Azure.

  • Alespoň jedna z následujících úrovní přístupu k předplatnému Azure, které používáte pro AKS na Azure Stack HCI:

    • Uživatelský účet s předdefinovou rolí Vlastník. Úroveň přístupu můžete zkontrolovat tak, že přejdete do svého předplatného, kliknete na Řízení přístupu (IAM) na levé straně Azure Portal a pak kliknete na Zobrazit můj přístup.
    • Instanční objekt s integrovanou rolí Cluster Kubernetes – Azure Arc Onboarding (minimálně), předdefinovou rolí Contributer nebo předdefinovou rolí Vlastník.
  • Skupina prostředků Azure v USA – východ, Jihovýchodní Asie nebo Západní Evropa Azure, která je dostupná před registrací, v předplatném uvedeném výše.

  • Alespoň jednu z následujících možností:

    • Cluster se 2 až 4 Azure Stack HCI uzly
    • Windows server 2019 Datacenter s podporou převzetí služeb při selhání

    Poznámka

    Doporučujeme mít v clusteru Azure Stack HCI 2 až 4 uzly. Pokud žádné z výše uvedených informací nemáte, postupujte podle pokynů na Azure Stack HCI registrace.

  • Informace o konfiguraci proxy serveru:

    • Adresa URL a port HTTP, například http://proxy.corp.contoso.com:8080 .
    • Adresa URL a port HTTPS, například https://proxy.corp.contoso.com:8443 .
    • (Volitelné) Platné přihlašovací údaje pro ověřování proxy server.
    • (Volitelné) Platný řetěz certifikátů, pokud je proxy server nakonfigurovaný tak, aby zachycoval provoz SSL. Tento řetěz certifikátů se naimportuje do všech řídicích rovin a pracovních uzlů AKS a také do clusteru pro správu, aby se vytvořilo důvěryhodné připojení k proxy server.
    • Rozsahy IP adres a názvy domén, které se mají vyloučit, aby se neposílaly na proxy server:
      • Fond IP adres uzlů Kubernetes
      • Fond VIP služeb Kubernetes
      • IP adresy sítě s clustery
      • IP adresy serveru DNS
      • IP adresy časových služeb
      • Názvy místních domén
      • Název místního hostitele
      • Výchozí seznam vyloučení v AksHci PowerShellu je zobrazený níže:
        • 'localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16', který vyjmout všechny privátní podsítě z odeslání na proxy server:
          • localhost,127.0.0.1: standardní vyloučení localhost
          • '.svc': Vyloučení se zástupnými znaky pro všechny názvy hostitelů služby Kubernetes Services
          • 172.16.0.0/12: Fond IP adres služeb Kubernetes
          • 192.168.0.0/16: Fond IP adres podů Kubernetes

Instalace modulů Azure PowerShell PowerShellu a AksHci

Nakonfigurujte nastavení systémového proxy serveru na všech fyzických uzlech v clusteru a ujistěte se, že všechny uzly mají přístup k adresám URL a portům popsaným v tématu Požadavky na systém.

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

Poznámka

Pokud vaše prostředí používá proxy server přístup k internetu, možná budete muset přidat parametry proxy serveru do příkazu Install-Module před instalací AKS na Azure Stack HCI. Podrobnosti najdete v dokumentaci k modulu Install-Module a postupujte Azure Stack HCI dokumentaci ke konfiguraci nastavení proxy serveru na uzlech fyzického clusteru.

Zavřete všechna otevřená okna PowerShellu. Pokud jste ze systému odebrali starší instalaci, odstraňte všechny existující adresáře pro AksHci, AksHci.Day2, Kva, Moc a MSK8sDownloadAgent umístěné v cestě a pak %systemdrive%\program files\windowspowershell\modules nainstalujte následující Azure PowerShell moduly.

Install-Module -Name Az.Accounts -Repository PSGallery -RequiredVersion 2.2.4
Install-Module -Name Az.Resources -Repository PSGallery -RequiredVersion 3.2.0
Install-Module -Name AzureAD -Repository PSGallery -RequiredVersion 2.0.2.128
Install-Module -Name AksHci -Repository PSGallery
Import-Module Az.Accounts
Import-Module Az.Resources
Import-Module AzureAD
Import-Module AksHci

Zavřete všechna okna PowerShellu a znovu otevřete novou relaci pro správu a zkontrolujte, jestli máte nejnovější verzi modulu PowerShellu.

Get-Command -Module AksHci

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

Registrace poskytovatele prostředků ve vašem předplatném

Použijte modul Az PowerShell za proxy serverem. Pokud je pro požadavek HTTP potřeba proxy server, tým Azure PowerShell pro různé platformy doporučuje následující konfiguraci proxy serveru:

Platforma Doporučené proxy Nastavení Komentář
Windows PowerShell 5.1 Nastavení systémového proxy serveru Doporučujeme, abyste nastavovat proměnné HTTP_PROXY/HTTPS_PROXY prostředí.
PowerShell 7 v Windows Nastavení systémového proxy serveru Proxy server můžete nakonfigurovat nastavením proměnných prostředí HTTP_PROXY i HTTPS_PROXY prostředí.
PowerShell 7 v macOS Nastavení systémového proxy serveru Proxy server můžete nakonfigurovat nastavením proměnných prostředí HTTP_PROXY i HTTPS_PROXY prostředí.
PowerShell 7 v Linuxu Nastavte HTTP_PROXY a HTTPS_PROXY prostředí plus NO_PROXY (volitelné). Před spuštěním PowerShellu byste měli nastavit proměnné prostředí, jinak se tyto proměnné nemusí respektovat.

Mezi použité proměnné prostředí patří:

  • HTTP_PROXY: proxy server se používá u požadavků HTTP.
  • HTTPS_PROXY: proxy server se používá u požadavků HTTPS.
  • NO_PROXY: čárkami oddělený seznam názvy hostitelů a IP adres, které by měly být vyloučeny z proxy serveru.

Poznámka

V systémech, kde se v proměnných prostředí rozlišují malá a velká písmena, mohou být názvy proměnných malými nebo velkými písmeny. Názvy malými písmeny se zaškrtnuté jako první.

Před registrací musíte v Azure povolit příslušného poskytovatele prostředků pro AKS na Azure Stack HCI prostředků. K tomu spusťte následující příkazy PowerShellu.

Pokud se chcete přihlásit k Azure, spusťte Připojení-AzAccount PowerShellu:

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ího příkazu zaregistrujte své předplatné Azure pro Azure Arc prostředků Kubernetes. Tento proces registrace může trvat až 10 minut, ale v konkrétním předplatném je potřeba ho provést jenom jednou.

Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration

Pokud chcete ověřit proces registrace, spusťte následující příkaz PowerShellu:

Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration

Krok 1: Příprava počítače na nasazení

Spusťte na každém fyzickém uzlu kontrolu, jestli jsou splněné všechny požadavky na instalaci Azure Kubernetes Service v Azure Stack HCI. Otevřete PowerShell jako správce a spusťte následující příkaz Initialize-AksHciNode.

Initialize-AksHciNode

Krok 2: Příprava služby Active Directory a serveru DNS pro nasazení

Pokud v prostředí DNS nemůžete povolit dynamické aktualizace DNS, aby služba AKS v Azure Stack HCI mohla zaregistrovat obecný název clusteru CloudAgent ve službě Active Directory a systému DNS ke zjišťování, musíte předem vytvořit příslušné záznamy ve službě Active Directory a DNS.

Ve službě Active Directory vytvořte obecnou clusterovou službu s názvem (nebo názvem podle vašeho výběru), ale nesmí být delší než ca-cloudagent 32 znaků. Musíte také vytvořit přidružený záznam DNS odkazující na plně kvalifikovaný název domény obecné clusterové služby se poskytnutou cloudservicecidr adresou. Další podrobnosti o krocích v tomto procesu najdete v dokumentaci ke clusteringus podporou převzetí služeb při selhání.

Služba AKS v Azure Stack HCI se pokusí vyhledat zadaný parametr ve službě clusterRoleName Active Directory, než bude pokračovat v nasazení.

Poznámka

Po nasazení služby AKS Azure Stack HCI nasazení se tyto informace nelišou.

Postupujte podle kroku 3a za krokem 2 a v souboru zadejte název předem vytvořeného Set-AksHciConfig objektu.

Krok 3: Vytvoření virtuální sítě

Spuštěním následujícího příkazu získejte názvy dostupných přepínačů. Ujistěte SwitchType se, ž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 PowerShellu New-AksHciNetworkSetting . Použije se později ke konfiguraci nasazení, které používá statickou IP adresu. Pokud chcete nakonfigurovat nasazení AKS pomocí DHCP, přejděte k příklady v New-AksHciNetworkSetting . Můžete si také projít některé Koncepty síťových uzlů.

#static IP
$vnet = New-AksHciNetworkSetting -name myvnet -vSwitchName "extSwitch" -macPoolName myMacPool -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 uvedené v tomto ukázkovém příkazu se budou muset přizpůsobit pro vaše prostředí.

Krok 4: konfigurace nasazení

Pomocí příkazu set-AksHciConfig nastavte konfigurační nastavení pro hostitele služby Azure Kubernetes. Je nutné zadat imageDir parametry, workingDir a cloudConfigLocation . Pokud chcete resetovat podrobnosti konfigurace, spusťte příkaz znovu s novými parametry.

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

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

Poznámka

Hodnoty uvedené v tomto ukázkovém příkazu se budou muset přizpůsobit pro vaše prostředí.

Krok 5: konfigurace nasazení, pokud jste připravili objekty Clusterové služby a záznamy DNS

Pomocí příkazu set-AksHciConfig nastavte konfigurační nastavení pro hostitele služby Azure Kubernetes. Je nutné zadat imageDir parametry, workingDir , clusterrolenamecloudservicecidr a cloudConfigLocation . Pokud chcete resetovat podrobnosti konfigurace, spusťte příkaz znovu s novými parametry.

Nakonfigurujte nasazení pomocí následujícího příkazu:

PS C:\> $vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -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 7

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16" -clusterRoleName "ca-cloudagent"

Poznámka

Hodnoty uvedené v tomto ukázkovém příkazu se budou muset přizpůsobit pro vaše prostředí.

Krok 6: přihlášení k Azure a konfigurace nastavení registrace

Pokud se chcete přihlásit do Azure, spusťte následující příkaz prostředí PowerShell set-AksHciRegistration s vaším předplatným a názvem skupiny prostředků. Abyste mohli pokračovat, musíte mít předplatné Azure a stávající skupinu prostředků Azure v oblastech Východní USA, jihovýchodní Asie nebo Západní Evropa Azure.

Set-AksHciRegistration -subscriptionId "<subscriptionId>" -resourceGroupName "<resourceGroupName>"

Krok 7: spuštění nového nasazení

Až nakonfigurujete nasazení, musíte ho spustit. Tím se nainstaluje služba Azure Kubernetes na Azure Stack agenti a služby HCI a hostitele služby Azure Kubernetes. Nasazení zahájíte spuštěním následujícího příkazu.

Install-AksHci

Upozornění

Během instalace hostitele služby Azure Kuberenetes se ve skupině prostředků, která je nastavená během registrace, vytvoří typ prostředku ARC Kubernetes-Azure . Tento prostředek neodstraňujte, protože reprezentuje hostitele služby Azure Kuberenetes. Prostředek můžete identifikovat tak, že zkontrolujete jeho distribuční pole s hodnotou aks_management . Odstranění tohoto prostředku způsobí nasazení mimo zásadu.

Krok 8: Vytvoření clusteru Kubernetes

Po instalaci hostitele služby Azure Kubernetes jste připraveni 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 uzlů pro Linux s názvem linuxnodepool s počtem uzlů 1. Další informace o fondech uzlů najdete v tématu použití fondů uzlů v AKS na Azure Stack HCI.

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

Kontrolovat nasazené clustery

Pokud chcete získat seznam nasazených clusterů Kubernetes, spusťte následující příkaz Get-AksHciCluster PowerShellu.

Get-AksHciCluster

Výstup

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 9: Připojení váš cluster na Kubernetes s povoleným obloukem

spuštěním příkazu Enable-AksHciArcConnection Připojení svůj cluster na Kubernetes s povoleným Arc. Následující příklad spojuje vaše AKS na Azure Stack clusteru HCI s obloukem pomocí podrobností o předplatném a skupině prostředků, které jste předali v Set-AksHciRegistration příkazu.

Connect-AzAccount
Enable-AksHciArcConnection -name mycluster

Poznámka

Pokud narazíte na problémy nebo chybové zprávy během procesu instalace, další informace najdete v části instalace známých problémů a chyb .

Škálování clusteru Kubernetes

pokud potřebujete škálovat cluster nahoru nebo dolů, můžete změnit počet uzlů řídicí plochy pomocí příkazu set-AksHciCluster a pomocí příkazu set-AksHciNodePool můžete změnit počet uzlů pro Linux nebo Windows pracovních uzlů ve fondu uzlů.

Chcete-li změnit velikost uzlů řídicích rovin, spusťte následující příkaz.

Set-AksHciCluster –name mycluster -controlPlaneNodeCount 3

Chcete-li š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 na Azure Stack HCI se také použil příkaz set-AksHciCluster pro škálování pracovních uzlů. AKS na Azure Stack HCI zavádí fondy uzlů v clusterech úloh nyní, takže tento příkaz lze použít pouze ke škálování pracovních uzlů, pokud byl cluster vytvořen se starou sadou parametrů v New-AksHciCluster. Chcete-li š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 Get-AksHciCredential PowerShell. Tato akce použije zadaný soubor kubeconfig clusteru jako výchozí soubor kubeconfig pro kubectl. Kubectl můžete použít také k nasazení aplikací pomocí Helm.

Get-AksHciCredential -name mycluster

Odstranění clusteru Kubernetes

Pokud potřebujete odstranit cluster Kubernetes, spusťte následující příkaz.

Remove-AksHciCluster -name mycluster

Poznámka

Ujistěte se, že jste cluster odstranili, a Prohlédněte si stávají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 . To by mělo být provedeno 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 lusků, spusťte příkaz Get-AksHciLogs . Tento příkaz vytvoří výstupní složku zip akshcilogs.zip s názvem v pracovním adresáři. Úplná cesta ke akshcilogs.zip složce bude výstup po spuštění příkazu níže.

Get-AksHciLogs

V tomto rychlém startu jste zjistili, jak nastavit hostitele služby Azure Kubernetes a vytvořit AKS v Azure Stack clusterech HCI pomocí PowerShellu. Zjistili jste také, jak pomocí PowerShellu škálovat cluster Kubernetes a přistupovat k clusterům pomocí kubectl .

Další kroky