Samouczek: wdrażanie klastra obciążenia w hybrydowej usłudze AKS
Dotyczy: usługa AKS w usłudze Azure Stack HCI, usługa AKS w systemie Windows Server
Usługa Kubernetes zapewnia rozproszoną platformę dla konteneryzowanych aplikacji.
W tym samouczku, część trzecia z siedmiu, klaster Azure Kubernetes Service (AKS) jest wdrażany w hybrydowej usłudze AKS. Omawiane tematy:
- Wdrażanie klastra usługi AKS w usłudze Azure Stack HCI
- Instalowanie interfejsu wiersza polecenia rozwiązania Kubernetes (kubectl)
- Konfigurowanie narzędzia kubectl w celu nawiązania połączenia z klastrem obciążeń
W kolejnych samouczkach aplikacja Azure Vote jest wdrażana w klastrze, skalowana i aktualizowana.
Zanim rozpoczniesz
W poprzednich samouczkach utworzono obraz kontenera i przekazano go do wystąpienia usługi Azure Container Registry. Jeśli te kroki nie zostały wykonane, zacznij od samouczka 1 — tworzenie obrazów kontenerów.
W tym samouczku jest używany moduł programu PowerShell usługi AksHci.
Wykonaj następujące kroki we wszystkich węzłach klastra usługi Azure Stack HCI lub klastra systemu Windows Server:
Uwaga
Jeśli używasz zdalnego programu PowerShell, musisz użyć programu CredSSP.
Zamknij wszystkie otwarte okna programu PowerShell, otwórz nową sesję programu PowerShell jako administrator i uruchom następujące polecenie we wszystkich węzłach w klastrze usługi Azure Stack HCI lub Windows Server:
Install-PackageProvider -Name NuGet -Force Install-Module -Name PowershellGet -Force -Confirm:$false -SkipPublisherCheck
Aby upewnić się, że załadowane moduły zostały odświeżone, należy ponownie zamknąć wszystkie istniejące okna programu PowerShell. Nie należy przechodzić do następnego kroku, dopóki nie zamkniesz wszystkich otwartych okien programu PowerShell.
Zainstaluj moduł AKS-HCI programu PowerShell, uruchamiając następujące polecenie we wszystkich węzłach w klastrze usługi Azure Stack HCI lub Windows Server:
Install-Module -Name AksHci -Repository PSGallery -Force
Aby upewnić się, że załadowane moduły zostały odświeżone, należy ponownie zamknąć wszystkie istniejące okna programu PowerShell. Nie należy przechodzić do następnego kroku, dopóki nie zamkniesz wszystkich otwartych okien programu PowerShell.
Skrypt pomocnika umożliwia usunięcie starych modułów programu PowerShell AKS-HCI, aby uniknąć problemów związanych z wersją programu PowerShell we wdrożeniu usługi AKS.
Weryfikowanie instalacji
Get-Command -Module AksHci
Aby wyświetlić pełną listę poleceń programu PowerShell usługi AksHci, zobacz AksHci PowerShell.
Instalowanie hosta Azure Kubernetes Service
Najpierw należy skonfigurować ustawienia rejestracji.
Set-AksHciRegistration -subscription mysubscription -resourceGroupName myresourcegroup
Te wartości należy dostosować zgodnie z nazwą subskrypcji platformy Azure i grupy zasobów.
Następnie uruchom następujące polecenie, aby upewnić się, że wszystkie wymagania dotyczące każdego węzła fizycznego są spełnione, aby zainstalować usługę AKS w usłudze Azure Stack HCI.
Initialize-AksHciNode
Następnie utworzymy sieć wirtualną. Musisz uzyskać nazwy dostępnych przełączników zewnętrznych:
Get-VMSwitch
Przykładowe dane wyjściowe:
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
extSwitch External Mellanox ConnectX-3 Pro Ethernet Adapter
Uruchom następujące polecenie, aby utworzyć sieć wirtualną ze statycznym adresem IP.
$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
Następnie skonfiguruj wdrożenie za pomocą następującego polecenia.
Set-AksHciConfig -imageDir c:\clusterstorage\volume1\Images -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16"
Teraz możesz zainstalować hosta usługi AKS.
Install-AksHCi
Tworzenie klastra Kubernetes
Utwórz klaster Kubernetes przy użyciu polecenia New-AksHciCluster. Poniższy przykład tworzy klaster o nazwie mycluster z jedną pulą węzłów systemu Linux o nazwie linuxnodepool, która ma liczbę węzłów 1.
New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1
Aby sprawdzić, czy wdrożenie zakończyło się pomyślnie, uruchom następujące polecenie.
Get-AksHcicluster -name mycluster
Wyjście:
ProvisioningState : provisioned
KubernetesVersion : v1.20.7
NodePools : linuxnodepool
WindowsNodeCount : 0
LinuxNodeCount : 0
ControlPlaneNodeCount : 1
Name : mycluster
Uwaga
Jeśli używasz nowych zestawów parametrów w New-AksHciCluster
programie do wdrożenia klastra, a następnie uruchomisz polecenie Get-AksHciCluster
, aby uzyskać informacje o klastrze, pola WindowsNodeCount
i LinuxNodeCount
dane wyjściowe będą zwracać polecenie 0
. Aby uzyskać dokładną liczbę węzłów w każdej puli węzłów, użyj polecenia Get-AksHciNodePool
o określonej nazwie klastra.
Aby uzyskać listę pul węzłów w klastrze, uruchom następujące polecenie Get-AksHciNodePool programu PowerShell.
Get-AksHciNodePool -clusterName mycluster
ClusterName : mycluster
NodePoolName : linuxnodepool
Version : v1.20.7
OsType : Linux
NodeCount : 1
VmSize : Standard_K8S3_v1
Phase : Deployed
Instalowanie interfejsu wiersza polecenia rozwiązania Kubernetes
Aby nawiązać połączenie z klastrem Kubernetes z komputera lokalnego, należy użyć narzędzia kubectl, czyli klienta wiersza polecenia usługi Kubernetes.
Nawiązywanie połączenia z klastrem przy użyciu narzędzia kubectl
Aby skonfigurować kubectl
połączenie z klastrem Kubernetes, użyj polecenia Get-AksHciCredential . Poniższy przykład pobiera poświadczenia dla klastra o nazwie mycluster.
Get-AksHciCredential -name mycluster
Aby zweryfikować połączenie z klastrem, uruchom polecenie kubectl get nodes , aby zwrócić listę węzłów klastra:
kubectl get nodes
Wyjście:
NAME STATUS ROLES AGE VERSION
moc-lbs6got5dqo Ready <none> 6d20h v1.20.7
moc-lel7tzxdt30 Ready control-plane,master 6d20h v1.20.7
Następne kroki
W tym samouczku wdrożono klaster Kubernetes w usłudze AKS i skonfigurowano narzędzie kubectl
w celu nawiązania z nim połączenia. W tym samouczku omówiono:
- Wdrażanie klastra usługi AKS w usłudze Azure Stack HCI
- Instalowanie interfejsu wiersza polecenia rozwiązania Kubernetes (kubectl)
- Konfigurowanie narzędzia kubectl w celu nawiązania połączenia z klastrem AKS
Przejdź do następnego samouczka, aby dowiedzieć się, jak wdrożyć aplikację w klastrze.