Rövid útmutató: AKS-gazdagép beállítása a Azure Stack HCI és számítási feladat fürt üzembe helyezése a PowerShell és egy proxykiszolgáló használatával

A következőkre vonatkozik: Azure Stack HCI 21H2 és 20H2; Windows Server 2022 Datacenter, Windows Server 2019 Datacenter

Ebből a rövid útmutatóból megtudhatja, hogyan állíthat be egy Azure Kubernetes Service-gazdagépet, és hogyan hozhat létre AKS-t Azure Stack HCI-fürtökön a PowerShell használatával olyan környezetben, ahol a proxykiszolgáló szűri és vizsgálja az internetes forgalmat. A felügyeleti központ Windows a Beállítás a felügyeleti Windows című témakörben.

Megjegyzés

Ha már vannak előre meghatározott fürtszolgáltatás-objektumok és DNS-rekordok, tekintse meg az AKS-gazdagép a PowerShell használatával, a fürtszolgáltatás objektumaival és DNS-rekordjaival való üzembe helyezésének további lépéseit.

Előkészületek

  • Győződjön meg arról, hogy minden előfeltétel teljesült a rendszerkövetelmények lapon.

  • Egy Azure-fiók, amely regisztrálja az AKS-gazdagépet a számlázáshoz. További információ: Azure-követelmények.

  • Az AKS-hez használt Azure-előfizetéshez a következő hozzáférési szintek legalább egyike Azure Stack HCI:

    • Beépített Tulajdonos szerepkörű felhasználói fiók. A hozzáférési szintet úgy ellenőrizheti, hogy megnyitja az előfizetését, a bal oldalon a "Hozzáférés-vezérlés (IAM)" elemre kattint Azure Portal majd a "Saját hozzáférés megtekintése" elemre kattint.
    • Szolgáltatásnév a beépített Kubernetes-fürttel – Azure Arc-bevezető szerepkör (minimum), beépített közreműködési szerepkör vagy beépített Tulajdonos szerepkör.
  • A regisztráció előtt elérhető Azure-erőforráscsoport az USA keleti régiójában, Délkelet-Ázsia vagy Nyugat-Európa Azure-régióban a fent említett előfizetésben.

  • A következők legalább egyike:

    • 2–4 csomópontos Azure Stack HCI fürt
    • Windows Server 2019 Datacenter feladatátvevő fürt

    Megjegyzés

    Javasoljuk, hogy egy 2–4 csomópontot Azure Stack HCI fürthöz. Ha a fentiek közül egyik sem található meg, kövesse a regisztrációs oldalon Azure Stack HCI utasításokat.

  • Proxykiszolgáló konfigurációs adatai:

    • HTTP URL-cím és port, http://proxy.corp.contoso.com:8080 például.
    • HTTPS URL-cím és port, https://proxy.corp.contoso.com:8443 például: .
    • (Nem kötelező) Érvényes hitelesítő adatok a proxykiszolgáló hitelesítéséhez.
    • (Nem kötelező) Érvényes tanúsítványlánc, ha a proxykiszolgáló úgy van konfigurálva, hogy elfogja az SSL-forgalmat. A rendszer importálja ezt a tanúsítványláncot az összes AKS-vezérlősíkra és munkavégző csomópontra, valamint a felügyeleti fürtre, hogy megbízható kapcsolatot létesítsen a proxykiszolgálóval.
    • Az IP-címtartományokat és tartományneveket ki kell zárni, hogy a rendszer ne küldje el őket a proxynak:
      • Kubernetes-csomópont IP-készlete
      • Kubernetes-szolgáltatások virtuális IP-készlete
      • A fürthálózat IP-címei
      • DNS-kiszolgáló IP-címei
      • Időszolgáltatás IP-címei
      • Helyi tartománynév(k)
      • Helyi állomásnév(k)
      • Az AksHci PowerShell alapértelmezett kizárási listája alább látható:
        • "localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16", amely mentesíti az összes privát alhálózatot a proxynak való elküldés alól:
          • 'localhost,127.0.0.1': standard localhost exclusion
          • '.svc': Helyettesítő karakteres kizárás az összes Kubernetes Services-gazdagépnévre
          • 172.16.0.0/12: Kubernetes-szolgáltatások IP-címkészlete
          • 192.168.0.0/16: Kubernetes-pod IP-címkészlete

Az Azure PowerShell és az AksHci PowerShell-modulok telepítése

Konfigurálja a rendszerproxy beállításait a fürt minden egyes fizikai csomópontján, és győződjön meg arról, hogy minden csomópont rendelkezik hozzáféréssel a rendszerkövetelmények között ismertetett URL-címekhez és portokhoz.

Ha távoli PowerShellt használ, a CredSSP-t kell használnia.

Megjegyzés

Ha a környezet proxykiszolgálót használ az internet eléréséhez, előfordulhat, hogy proxyparamétereket kell hozzáadnia az Install-Module parancshoz, mielőtt telepítené az AKS-t a Azure Stack HCI. A részletekért tekintse meg az Install-Module dokumentációt, Azure Stack HCI a fizikai fürtcsomópontok proxybeállításának konfigurálására vonatkozó dokumentációjában talál további információt.

Zárja be az összes megnyitott PowerShell-ablakot. Ha eltávolított egy régebbi telepítést a rendszerből, törölje az elérési úton található összes meglévő könyvtárat az AksHci, az AksHci.Day2, a Kva, az Moc és az MSK8sDownloadAgent könyvtárból, majd telepítse a következő Azure PowerShell %systemdrive%\program files\windowspowershell\modules modulokat.

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

Zárja be az összes PowerShell-ablakot, és nyisson meg újra egy új felügyeleti munkamenetet, és ellenőrizze, hogy a PowerShell-modul legújabb verzióját nyitja-e meg.

Get-Command -Module AksHci

Az AksHci PowerShell-parancsok teljes listájának megtekintéséhez lásd: AksHci PowerShell.

Az erőforrás-szolgáltató regisztrálása az előfizetésben

Használja az Az PowerShell-modult proxy mögött. Ha egy HTTP-kéréshez proxyra van szükség, a Azure PowerShell csapat a következő proxykonfigurációt javasolja a különböző platformokhoz:

Platform Ajánlott proxybeállítások Gépház Megjegyzés
Windows PowerShell 5.1 Rendszerproxy-beállítások Javasoljuk, hogy ne állítson be HTTP_PROXY/HTTPS_PROXY környezeti változókat.
PowerShell 7 a Windows Rendszerproxy-beállítások A proxy konfigurálható a környezeti változók HTTP_PROXY HTTPS_PROXY beállításával.
PowerShell 7 macOS rendszeren Rendszerproxy-beállítások A proxy konfigurálható a környezeti változók HTTP_PROXY HTTPS_PROXY beállításával.
PowerShell 7 Linux rendszeren Állítsa be a HTTP_PROXY és HTTPS_PROXY környezeti változókat, valamint a NO_PROXY (nem kötelező) A környezeti változókat a PowerShell indítása előtt kell beállítania, ellenkező esetben előfordulhat, hogy azok nem lesznek figyelembe állítva.

A használt környezeti változók a következők:

  • HTTP_PROXY: a HTTP-kérések esetén használt proxykiszolgáló.
  • HTTPS_PROXY: a HTTPS-kérések esetén használt proxykiszolgáló.
  • NO_PROXY: azon állomásnevek és IP-címek vesszővel elválasztott listája, amelyek ki lesznek zárva a proxyból.

Megjegyzés

Olyan rendszerekben, ahol a környezeti változók megkülönböztetik a kis- és nagybetűket, a változók neve kis- vagy nagybetűs is lehet. Először a kisbetűs neveket kell ellenőrizni.

A regisztrációs folyamat előtt engedélyeznie kell a megfelelő erőforrás-szolgáltatót az Azure-ban az AKS-hez Azure Stack HCI regisztráció során. Futtassa az alábbi PowerShell-parancsokat.

Az Azure-ba való bejelentkezéshez futtassa a Csatlakozás-AzAccount PowerShell-parancsot:

Connect-AzAccount

Ha másik előfizetésre szeretne váltani, futtassa a Set-AzContext PowerShell-parancsot:

Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"

Az alábbi parancs futtatásával regisztrálja Azure-előfizetését Azure Arc Kubernetes-erőforrásszolgáltatókhoz. Ez a regisztrációs folyamat akár 10 percig is eltarthat, de csak egyszer kell elvégezni egy adott előfizetésen.

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

A regisztrációs folyamat érvényesítéséhez futtassa a következő PowerShell-parancsot:

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

1. lépés: A gép(ök) előkészítése az üzembe helyezéshez

Futtatassa az összes fizikai csomópont ellenőrzését annak ellenőrzéséhez, hogy az összes követelmény teljesül-e a Azure Stack HCI-n üzemelő Azure Kubernetes Service. Nyissa meg a PowerShellt rendszergazdaként, és futtassa a következő Initialize-AksHciNode parancsot.

Initialize-AksHciNode

2. lépés: A Active Directory dns-kiszolgáló előkészítése az üzembe helyezéshez

Ha nem tudja engedélyezni a dinamikus DNS-frissítéseket a DNS-környezetben, hogy az Azure Stack HCI-on az AKS regisztrálja a CloudAgent általános fürtnevét az Active Directory-ban és a DNS-rendszert a felderítéshez, előzetesen létre kell hoznia a megfelelő rekordokat a Active Directory-ban és a DNS-ben.

Hozzon létre egy általános fürtszolgáltatást a Active Directory névvel (vagy egy ön által választott névvel), de ne legyen hosszabb ca-cloudagent 32 karakternél. Létre kell hoznia egy társított DNS-rekordot is, amely az általános fürtszolgáltatás teljes tartománynevére mutat a megadott cloudservicecidr címmel. A folyamat lépéseit a Feladatátvételi fürtszolgáltatás dokumentációjában találhatja meg.

Az üzembe Azure Stack HCI AKS megkísérli megkeresni a Active Directory az üzembe helyezés clusterRoleName előtt.

Megjegyzés

Az AKS Azure Stack HCI üzembe helyezése után ez az információ nem módosítható.

A 2. lépés utáni 3a lépéssel adja meg az előre létrehozott objektum nevét a Set-AksHciConfig fájlban.

3. lépés: Virtuális hálózat létrehozása

Az elérhető kapcsolók nevének lekérhetők az alábbi parancs futtatásával. Győződjön meg arról, SwitchType hogy a virtuálisgép-kapcsoló kapcsolója "External" (Külső) legyen.

Get-VMSwitch

Példa a kimenetre:

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

Virtuális hálózat létrehozásához az üzemelő példány csomópontjai számára hozzon létre egy környezeti változót a New-AksHciNetworkSetting PowerShell-paranccsal. Ezt a későbbiekben statikus IP-címet használó üzemelő példány konfigurálhatja. Ha az AKS-telepítést DHCP-vel szeretné konfigurálni, példákért látogasson el a New-AksHciNetworkSetting webhelyre. A hálózati csomópontokkal kapcsolatos néhány fogalmat is áttekinthet.

#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

Megjegyzés

Az ebben a példaparancsban megadott értékeket testre kell szabni a környezetnek megfelelően.

4. lépés: Az üzemelő példány konfigurálása

Adja meg a gazdagép konfigurációs Azure Kubernetes Service a Set-AksHciConfig paranccsal. Meg kell adnia a imageDir , workingDir és cloudConfigLocation paramétereket. Ha alaphelyzetbe szeretné állítani a konfigurációs adatokat, futtassa újra a parancsot az új paraméterekkel.

Konfigurálja az üzemelő példányát a következő paranccsal.

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"

Megjegyzés

Az ebben a példaparancsban megadott értékeket testre kell szabni a környezetnek megfelelően.

5. lépés: A telepítés konfigurálása, ha előre beállított fürtszolgáltatás-objektumokkal és DNS-rekordokkal is

Adja meg a gazdagép konfigurációs Azure Kubernetes Service a Set-AksHciConfig paranccsal. Meg kell adnia a imageDir , workingDir , és clusterrolenamecloudservicecidrcloudConfigLocation paramétereket. Ha alaphelyzetbe szeretné állítani a konfigurációs adatokat, futtassa újra a parancsot az új paraméterekkel.

Konfigurálja az üzemelő példányát a következő paranccsal:

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"

Megjegyzés

Az ebben a példaparancsban megadott értékeket testre kell szabni a környezetnek megfelelően.

6. lépés: Jelentkezzen be az Azure-ba, és konfigurálja a regisztrációs beállításokat

Futtassa a következő Set-AksHciRegistration PowerShell-parancsot az előfizetésével és az erőforráscsoport nevével az Azure-ba való bejelentkezéshez. A folytatáshoz Azure-előfizetéssel és egy meglévő Azure-erőforráscsoporttal kell rendelkezik az USA keleti régiójában, Délkelet-Ázsiában vagy Nyugat-Európában.

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

7. lépés: Új központi telepítés kezdete

Miután konfigurálta az üzemelő példányt, el kell kezdenie azt. Ez telepíti a Azure Stack HCI-n üzemelő Azure Kubernetes Service ügynököket/szolgáltatásokat és a Azure Kubernetes Service gazdagépet. Az üzembe helyezés megkezdéséhez futtassa a következő parancsot.

Install-AksHci

Figyelmeztetés

Az Azure Kuberenetes Service-gazdagép telepítése során a rendszer létrehoz egy Kubernetes – Azure Arc típusú erőforrást a regisztráció során beállított erőforráscsoportban. Ne törölje ezt az erőforrást, mert az az Azure Kuberenetes Service-gazdagépet jelöli. Az erőforrás azonosításához ellenőrizze a eloszlás mezőjében a aks_management értéket. Az erőforrás törlése szabályzaton nem megfelelő üzembe helyezést eredményez.

8. lépés: Kubernetes-fürt létrehozása

A gazdagép Azure Kubernetes Service után készen áll egy Kubernetes-fürt üzembe helyezésére. Nyissa meg a PowerShellt rendszergazdaként, és futtassa a következő New-AksHciCluster parancsot. Ez a példaparancs létrehoz egy új Kubernetes-fürtöt egy linuxnodepool nevű Linux-csomópontkészlettel, 1 csomópontszámmal. A csomópontkészletekkel kapcsolatos további információkért lásd: Csomópontkészletek használata az AKS-ban a Azure Stack HCI.

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

Az üzembe helyezett fürtök ellenőrzése

Az üzembe helyezett Kubernetes-fürtök listájának leözéséhez futtassa a következő Get-AksHciCluster PowerShell-parancsot.

Get-AksHciCluster

Kimenet

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

A fürtben található csomópontkészletek listájának lehöz futtassa a következő Get-AksHciNodePool PowerShell-parancsot.

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

9. lépés: Csatlakozás létrehozása Arc-kompatibilis Kubernetes-hez

Csatlakozás az Arc-kompatibilis Kubernetesbe az Enable-AksHciHciConnection parancs futtatásával. Az alábbi példa az AKS-Azure Stack HCI az Archoz csatlakoztatja a parancsban átadott előfizetési és erőforráscsoport-adatok Set-AksHciRegistration használatával.

Connect-AzAccount
Enable-AksHciArcConnection -name mycluster

Megjegyzés

Ha problémákat vagy hibaüzeneteket lát a telepítési folyamat során, további információért tekintse meg a telepítéssel kapcsolatos ismert problémákat és hibákat.

Kubernetes-fürt méretezése

Ha felfelé vagy lefelé kell skálázni a fürtöt, a vezérlősík csomópontjainak számát a Set-AksHciCluster paranccsal módosíthatja, a csomópontkészletben lévő Linux- vagy Windows feldolgozó csomópontok számát pedig a Set-AksHciNodePool paranccsal módosíthatja.

A vezérlősík csomópontjainak skálázása érdekében futtassa a következő parancsot.

Set-AksHciCluster –name mycluster -controlPlaneNodeCount 3

A csomópontkészletben lévő munkavégző csomópontok méretezése a következő paranccsal történik.

Set-AksHciNodePool –clusterName mycluster -name linuxnodepool -count 3

Megjegyzés

Az AKS korábbi verzióiban a Azure Stack HCI a Set-AksHciCluster parancsot is használták a munkavégző csomópontok skálázása során. A Azure Stack HCI AKS bevezeti a csomópontkészleteket a számítási feladatfürtökben, így ez a parancs csak akkor használható a munkavégző csomópontok méretezésére, ha a fürt a New-AksHciClusterrégi paraméterkészletével lett létrehozva. A csomópontkészletekben lévő munkavégző csomópontok méretezése a Set-AksHciNodePool paranccsal történik.

A fürtök elérése a kubectl használatával

A Kubernetes-fürtök kubectl használatával való eléréséhez futtassa a Get-AksHciCredential PowerShell-parancsot. Ez a megadott fürt kubeconfig fájlját használja a kubectl alapértelmezett kubeconfig-fájljaként. A kubectl használatával is üzembe helyezhet alkalmazásokat a Helm használatával.

Get-AksHciCredential -name mycluster

Kubernetes-fürt törlése

Ha törölnie kell egy Kubernetes-fürtöt, futtassa a következő parancsot.

Remove-AksHciCluster -name mycluster

Megjegyzés

A Hyper-V kezelője meglévő virtuális gépei között ellenőrizze, hogy a fürt törölve lett-e. Ha nem törli őket, manuálisan törölheti a virtuális gépeket. Ezután futtassa a Restart-Service wssdagent parancsot. Ezt a feladatátvevő fürt minden csomópontján meg kell tenni.

Naplók lekérése

A Get-AksHciLogs paranccsal lekért naplók az összes podról. Ez a parancs létrehoz egy tömörített kimeneti mappát néven akshcilogs.zip a munkakönyvtárban. A mappa teljes elérési útja az alábbi parancs futtatása utáni akshcilogs.zip kimenet lesz.

Get-AksHciLogs

Ebben a rövid útmutatóban megtanulta, hogyan állíthat be egy Azure Kubernetes Service-gazdagépet, és hogyan hozhat létre AKS-t Azure Stack HCI fürtökön a PowerShell használatával. Azt is megtanulta, hogyan skáláz egy Kubernetes-fürtöt a PowerShell használatával, és hogyan férhet hozzá a fürtökhöz a kubectl használatával.

Következő lépések