Systemkrav för Azure Kubernetes Service på Azure Stack HCI

Gäller för: Azure Stack HCI, versionerna 21H2 och 20H2; Windows Server 2022 Datacenter, Windows Server 2019 Datacenter

Den här artikeln beskriver kraven för att konfigurera Azure Kubernetes Service på Azure Stack HCI eller på Windows Server 2019 Datacenter och använda det för att skapa Kubernetes-kluster. En översikt över Azure Kubernetes Service på Azure Stack HCI finns i AKS Azure Stack HCI översikt.

Fastställa maskinvarukrav

Microsoft rekommenderar att du köper en Azure Stack HCI en maskinvaru-/programvarulösning från våra partner. Dessa lösningar är utformade, sammanställda och verifierade mot vår referensarkitektur för att säkerställa kompatibilitet och tillförlitlighet så att du snabbt kommer igång. Du bör kontrollera att de system, komponenter, enheter och drivrutiner som du använder är Windows Server 2019-certifierade enligt Windows Server Catalog. Besök webbplatsen Azure Stack HCI för verifierade lösningar.

Allmänna krav

För Azure Kubernetes Service på Azure Stack HCI eller Windows Server 2019 Datacenter ska fungera optimalt i en Active Directory-miljö måste följande krav uppfyllas:

  • Se till att tidssynkroniseringen har ställts in och att avvikelsen inte är större än 2 minuter över alla klusternoder och domänkontrollanten. Information om hur du ställer in tidssynkronisering finns i Windows Time Service.

  • Se till att de användarkonton som lägger till uppdateringar och hanterar Azure Kubernetes Service på Azure Stack HCI- eller Windows Server 2019 Datacenter-kluster har rätt behörigheter i Active Directory. Om du använder organisationsenheter (OU) för att hantera grupprinciper för servrar och tjänster, kräver användarkontona behörigheterna lista, läsa, ändra och ta bort för alla objekt i organisationsenheten.

  • Vi rekommenderar att du använder en separat organisationsenhet för de servrar och tjänster som du lägger till Azure Kubernetes Service på Azure Stack HCI eller Windows Server 2019 Datacenter-kluster till. Med hjälp av en separat organisationsenhet kan du styra åtkomst och behörigheter med mer kornighet.

  • Om du använder GPO-mallar på containrar i Active Directory, se till att distribution av AKS på Azure Stack HCI är undantaget från principen. Serverhärdning blir tillgänglig i en senare version.

Krav för Azure

Azure-konto och -prenumeration

Om du inte redan har ett Azure-konto skapar du ett. Du kan använda en befintlig prenumeration av valfri typ:

Azure AD-behörigheter, roll- och åtkomstnivå

Du måste ha tillräcklig behörighet för att registrera ett program med din Azure AD-klientorganisation.

Kontrollera att du har tillräcklig behörighet genom att följa informationen nedan:

  • Gå till Azure Portal och klicka på Roller och administratörer under Azure Active Directory för att kontrollera din roll.
  • Om din roll är Användaremåste du se till att icke-administratörer kan registrera program.
  • Om du vill kontrollera om du kan registrera program går du till Användarinställningar under Azure Active Directory tjänsten för att kontrollera om du har behörighet att registrera ett program.

Om inställningen för appregistreringar är inställd på Nejkan endast användare med en administratörsroll registrera dessa typer av program. Mer information om tillgängliga administratörsroller och de specifika behörigheter i Azure AD som ges till varje roll finns i Inbyggda Roller i Azure AD. Om ditt konto har tilldelats användarrollen, men appregistreringsinställningen är begränsad till administratörsanvändare, ber du administratören antingen att tilldela dig en av de administratörsroller som kan skapa och hantera alla aspekter av appregistreringar eller att låta användarna registrera appar.

Om du inte har tillräcklig behörighet för att registrera ett program och administratören inte kan ge dig dessa behörigheter är det enklaste sättet att distribuera AKS på Azure Stack HCI att be Azure-administratören att skapa ett huvudnamn för tjänsten med rätt behörigheter. Administratörer kan kontrollera följande avsnitt för att lära sig hur du skapar ett huvudnamn för tjänsten.

Azure-prenumerationsroll och åtkomstnivå

Om du vill kontrollera din åtkomstnivå går du till din prenumeration, klickar på Åtkomstkontroll (IAM) till vänster i Azure Portal och klickar sedan på Visa min åtkomst.

  • Om du använder administrationscentret för Windows för att distribuera en AKS-värd eller ett AKS-arbetsbelastningskluster måste du ha en Azure-prenumeration där du är ägare.
  • Om du använder PowerShell för att distribuera en AKS-värd eller ett AKS-arbetsbelastningskluster måste användaren som registrerar klustret ha minst ett av följande:

Om din Azure-prenumeration är via ett EA eller CSP är det enklaste sättet att distribuera AKS på Azure Stack HCI att be Azure-administratören att skapa ett huvudnamn för tjänsten med rätt behörigheter. Administratörer kan läsa avsnittet nedan om hur du skapar ett huvudnamn för tjänsten.

Valfritt: Skapa ett nytt huvudnamn för tjänsten

Kör följande steg för att skapa ett nytt huvudnamn för tjänsten med den inbyggda microsoft.Kubernetes-anslutna klusterrollen. Observera att endast prenumerationsägare kan skapa tjänstens huvudnamn med rätt rolltilldelning. Du kan kontrollera din åtkomstnivå genom att gå till din prenumeration, klicka på Åtkomstkontroll (IAM) till vänster i Azure Portal och sedan klicka på Visa min åtkomst.

Installera och importera följande Azure PowerShell moduler:

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

Stäng alla PowerShell-fönster och öppna en ny administrativ session igen.

Logga in på Azure med hjälp Anslut PowerShell-kommandot Anslut-AzAccount:

Connect-AzAccount

Ange den prenumeration som du vill använda för att registrera din AKS-värd för fakturering som standardprenumeration genom att köra kommandot Set-AzContext.

Set-AzContext -Subscription myAzureSubscription

Kontrollera att inloggningskontexten är korrekt genom att köra PowerShell-kommandot Get-AzContext. Kontrollera att prenumerationen, klientorganisationen och kontot är det du vill använda för att registrera din AKS-värd för fakturering.

Get-AzContext
Name                                     Account                      SubscriptionName             Environment                  TenantId
----                                     -------                      ----------------             -----------                  --------
myAzureSubscription (92391anf-...        user@contoso.com             myAzureSubscription          AzureCloud                   xxxxxx-xxxx-xxxx-xxxxxx

Skapa ett huvudnamn för tjänsten genom att köra PowerShell-kommandot New-AzADServicePrincipal. Det här kommandot skapar ett huvudnamn för tjänsten med rollen "Microsoft.Kubernetes-anslutet kluster" och anger omfånget på prenumerationsnivå. Mer information om hur du skapar tjänstens huvudnamn finns i Create an Azure service principal with Azure PowerShell.

$sp = New-AzADServicePrincipal -role "Microsoft.Kubernetes connected cluster"

Hämta lösenordet för tjänstens huvudnamn genom att köra följande kommando:

$secret = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto([System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($sp.Secret))
Write-Host "Application ID: $($sp.ApplicationId)"
Write-Host "App Secret: $secret"

I utdata ovan har du nu program-ID:t och hemligheten som är tillgängliga när du distribuerar AKS Azure Stack HCI. Du bör anteckna dessa objekt och lagra dem på ett säkert sätt. Med det som skapades i Azure Portal, under Prenumerationer, Access Controloch sedan Rolltilldelningar, bör du se ditt nya huvudnamn för tjänsten.

Azure-resursgrupp

Du måste ha en Azure-resursgrupp i Azure-regionen USA, Sydostasien, eller Europa, västra tillgänglig före registreringen.

Beräkningskrav

  • För testmiljöer: ett Azure Stack HCI eller ett Windows Server 2019 Datacenter-redundanskluster med högst fyra servrar i klustret. Vi rekommenderar att varje server i klustret har minst 8 (rekommenderade 16) processorkärnor och minst 256 GB RAM-minne.

  • För produktionsmiljöer: ett Azure Stack HCI eller ett Windows Server 2019 Datacenter-redundanskluster med högst fyra servrar i klustret. Vi rekommenderar att varje server i klustret har minst 16 (rekommenderade 32) processorkärnor och minst 256 GB RAM-minne. Den slutliga storleksändringen beror på programmet och antalet arbetsnoder som du planerar att distribuera Azure Stack HCI klustret.

  • Tekniskt sett kan du köra Azure Kubernetes Service på en enskild nod Windows Server 2019 Datacenter, men vi rekommenderar inte att du gör det. Du kan dock köra Azure Kubernetes Service på en enskild nod Windows Server 2019 Datacenter i utvärderingssyfte.

  • Andra beräkningskrav för Azure Kubernetes Service på Azure Stack HCI är i linje Azure Stack HCI kraven. Besök Azure Stack HCI systemkrav för mer information om Azure Stack HCI serverkrav.

  • Du måste installera Azure Stack HCI på varje server i klustret med region- och språkval för EN-US. För stunden kan du inte ändra de här inställningarna efter installationen.

Allmänna nätverkskrav

Följande krav gäller för ett Azure Stack HCI kluster samt ett Windows Server 2019 Datacenter-kluster:

  • Kontrollera att du har en befintlig, extern virtuell växel konfigurerad om du använder Windows Administrationscenter. För Azure Stack HCI kluster måste den här växeln och dess namn vara samma för alla klusternoder.

  • Kontrollera att du har inaktiverat IPv6 på alla nätverkskort.

  • För att distributionen ska lyckas måste Azure Stack HCI-klusternoder och virtuella Kubernetes-kluster-datorer ha en extern Internetanslutning.

  • Kontrollera att alla undernät som du definierar för klustret är dirigerbara mellan varandra och till Internet.

  • Kontrollera att det finns en nätverksanslutning mellan Azure Stack HCI och de virtuella klientdatorerna.

  • DNS-namnmatchning krävs för att alla noder ska kunna kommunicera med varandra.

  • (Rekommenderas) Aktivera dynamiska DNS-uppdateringar i DNS-miljön så att AKS på Azure Stack HCI kan registrera molnagentens allmänna klusternamn i DNS-systemet för identifiering. Om dynamisk DNS inte är ett alternativ använder du de steg som anges i "Set-AksHciConfig".

IP-adresstilldelning

I AKS på Azure Stack HCI används virtuella nätverk för att allokera IP-adresser till De Kubernetes-resurser som kräver dem, enligt listan ovan. Det finns två nätverksmodeller att välja mellan, beroende på din önskade AKS Azure Stack HCI nätverksarkitekturen.

Anteckning

Den virtuella nätverksarkitektur som definieras här för AKS på Azure Stack HCI-distributioner skiljer sig från den underliggande fysiska nätverksarkitekturen i ditt datacenter.

  • Statiskt IP-nätverk – Det virtuella nätverket allokerar statiska IP-adresser till Kubernetes-klustrets API-server, Kubernetes-noder, underliggande virtuella datorer, lastbalanserare och eventuella Kubernetes-tjänster som du kör ovanpå klustret.

  • DHCP-nätverk – Det virtuella nätverket allokerar dynamiska IP-adresser till Kubernetes-noderna, underliggande virtuella datorer och lastbalanserare med hjälp av en DHCP-server. Kubernetes-klustrets API-server och alla Kubernetes-tjänster som du kör ovanpå klustret allokeras fortfarande statiska IP-adresser.

Minsta IP-adressreservation

Du bör minst reservera följande antal IP-adresser för distributionen:

Klustertyp Kontrollplansnod Arbetsnod För uppdateringsåtgärder Lastbalanserare
AKS-värd 1 IP-adress NA 2 IP-adresser NA
Arbetsbelastningskluster 1 IP per nod 1 IP per nod 5 IP-adresser 1 IP-adress

Dessutom bör du reservera följande antal IP-adresser för din VIP-pool:

Resurstyp Antal IP-adresser
Kluster-API-server 1 per kluster
Kubernetes Services 1 per tjänst

Som du ser varierar antalet ip-adresser som krävs beroende på AKS på Azure Stack HCI-arkitekturen och antalet tjänster som du kör i Kubernetes-klustret. Vi rekommenderar att du reserverar totalt 256 IP-adresser (/24 undernät) för din distribution.

Mer information om nätverkskrav finns i node networking concepts in AKS on Azure Stack HCI and container networking concepts in AKS on Azure Stack HCI.

Krav för nätverksport och URL

När du skapar ett Azure Kubernetes Azure Stack HCI kluster öppnas följande brandväggsportar automatiskt på varje server i klustret.

Brandväggsport Description
45000 wssdagent GPRC-serverport
45001 wssdagent GPRC-autentiseringsport
55 000 wssdcloudagent GPRC-serverport
65000 wssdcloudagent GPRC-autentiseringsport

Brandväggs-URL-undantag krävs för Windows Admin Center-datorn och alla noder i Azure Stack HCI klustret.

URL Port Kommentarer
msk8s.api.cdp.microsoft.com 443 Används när du laddar ned AKS på Azure Stack HCI, produktkatalog, produktdelar och OS-avbildningar från SFS. Inträffar när du Set-AksHciConfig kör och när som helst du laddar ned från SFS.
msk8s.b.tlu.dl.delivery.mp.microsoft.com 80 Används när du laddar ned AKS på Azure Stack HCI, produktkatalog, produktdelar och OS-avbildningar från SFS. Inträffar när du Set-AksHciConfig kör och när som helst du laddar ned från SFS.
msk8s.f.tlu.dl.delivery.mp.microsoft.com 80 Används när du laddar ned AKS på Azure Stack HCI, produktkatalog, produktdelar och OS-avbildningar från SFS. Inträffar när du Set-AksHciConfig kör och när som helst du laddar ned från SFS.
login.microsoftonline.com 443 Används när du loggar in på Azure när du kör Set-AksHciRegistration .
login.windows.net 443 Används när du loggar in på Azure när du kör Set-AksHciRegistration .
management.azure.com 443 Används när du loggar in på Azure när du kör Set-AksHciRegistration .
www.microsoft.com 443 Används när du loggar in på Azure när du kör Set-AksHciRegistration .
msft.sts.microsoft.com 443 Används när du loggar in på Azure när du kör Set-AksHciRegistration .
graph.windows.net 443 Används när du kör Install-AksHci .
ecpacr.azurecr.io 443 Krävs för att hämta containeravbildningar när du kör Install-AksHci .
*.blob.core.windows.net
USA-slutpunkt: wus2replica*.blob.core.windows.net
443 Krävs för att hämta containeravbildningar när du kör Install-AksHci .
mcr.microsoft.com 443 Krävs för att hämta containeravbildningar när du kör Install-AksHci .
*.mcr.microsoft.com 443 Krävs för att hämta containeravbildningar när du kör Install-AksHci .
*.data.mcr.microsoft.com 443 Krävs för att hämta containeravbildningar när du kör Install-AksHci .
akshci.azurefd.net 443 Krävs för AKS på Azure Stack HCI när du kör Install-AksHci .

Anteckning

Eftersom hanteringsklustret (AKS-värden) använder Azure Arc fakturering måste du följa dessa nätverkskrav för Azure Arc Kubernetes-kluster. Du bör också granska Azure Stack HCI URL:er.

Storage krav

Följande lagringsimplementering stöds av Azure Kubernetes Service på Azure Stack HCI:

Name Lagringstyp Nödvändig kapacitet
Azure Stack HCI kluster Klusterdelade volymer 1 TB
Windows Server 2019 Datacenter-redundanskluster Klusterdelade volymer 1 TB
Ennods-Windows Server 2019 Datacenter Direktkopplad Storage 500 GB

För ett Azure Stack HCI-kluster har du två lagringskonfigurationer som stöds för att köra arbetsbelastningar för virtuella datorer. Hybridlagring som balanserar prestanda och kapacitet med hjälp av alla flash-lagrings- och hårddiskenheter (HDD) och all-flash-lagring som maximerar prestanda med ssd-enheter (SOLID-State Drives) eller NVMe. System som endast har HDD-baserad lagring stöds inte av Azure Stack HCI och rekommenderas därför inte för att köra AKS på Azure Stack HCI. Du kan läsa mer om rekommenderade enhetskonfigurationer i Azure Stack HCI dokumentationen. Alla system som har verifierats i Azure Stack HCI finns i någon av de två lagringskonfigurationer som stöds ovan.

För ett Windows Server 2019 Datacenter-baserat kluster kan du antingen distribuera med lokal lagring eller SAN-baserad lagring. För lokal lagring rekommenderar vi att du använder den inbyggda Lagringsutrymmen Direct,eller en motsvarande certifierad virtuell SAN-lösning för att skapa en hyperkonvergerad infrastruktur som visar klusterdelade volymer för användning av arbetsbelastningar. För Lagringsutrymmen Direct måste lagringen antingen vara hybrid (flash + HDD) som balanserar prestanda och kapacitet, eller all flash (SSD, NVMe) som maximerar prestanda. Om du väljer att distribuera med SAN-baserad lagring ska du se till att din SAN-lagring kan leverera tillräckligt med prestanda för att köra flera arbetsbelastningar på virtuella datorer. Äldre HDD-baserad SAN-lagring kanske inte levererar de prestandanivåer som krävs för att köra flera arbetsbelastningar på virtuella datorer, och du kan se prestandaproblem och tidsgränser.

För distributioner med en nod Windows Server 2019 med lokal lagring, rekommenderas användning av all-flash-lagring (SSD, NVMe) starkt för att leverera de prestanda som krävs för att vara värd för flera virtuella datorer på en enda fysisk värd. Utan flash-lagring kan de lägre prestandanivåerna på hårddiskar orsaka distributionsproblem och tidsgränser.

Granska maximalt antal maskinvaruspecifikationer som stöds

Azure Kubernetes Service på Azure Stack HCI distributioner som överskrider följande specifikationer stöds inte:

Resurs Maximal
Fysiska servrar per kluster 4
Kubernetes-kluster 4
Totalt antal virtuella datorer 200

Windows Admin Center

Windows Admin Center är användargränssnittet för att skapa och hantera Azure Kubernetes Service på Azure Stack HCI. Om du Windows administrationscenter med Azure Kubernetes Service på Azure Stack HCI måste du uppfylla alla kriterier i listan nedan.

Här är kraven för datorn som kör gatewayen Windows Administrationscenter:

  • Windows 10 eller Windows Server-dator
  • Registrerad med Azure
  • I samma domän som Azure Stack HCI eller Windows Server 2019 Datacenter-klustret
  • En Azure-prenumeration där du är ägare. Du kan kontrollera din åtkomstnivå genom att gå till din prenumeration och klicka på Åtkomstkontroll (IAM) till vänster i Azure Portal och sedan klicka på Visa min åtkomst.

Nästa steg

När du har uppfyllt alla krav ovan kan du konfigurera en värd Azure Kubernetes Service på Azure Stack HCI med: