Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Windows Server Datacenter
Ten przewodnik szybkiego startu poprowadzi Cię przez konfigurację hosta usługi Azure Kubernetes Service (AKS). Klastry Kubernetes są tworzone na Windows Server przy użyciu programu PowerShell. Aby zamiast tego użyć Windows Admin Center, zobacz Konfigurowanie przy użyciu Windows Admin Center.
Uwaga / Notatka
- Jeśli wstępnie przygotowano obiekty usługi klastra i rekordy DNS, zobacz artykuł Wdrażanie hosta AKS ze wstępnie przygotowanymi obiektami usługi klastra i rekordami DNS przy użyciu programu PowerShell.
- Jeśli masz serwer proxy, zobacz Konfigurowanie hosta usługi AKS i wdrażanie klastra obciążenia przy użyciu programu PowerShell i serwera proxy.
Zanim rozpoczniesz
- Upewnij się, że spełnisz wszystkie wymagania wstępne w wymaganiach systemowych.
- Użyj konta Azure, aby zarejestrować hosta usługi AKS na potrzeby rozliczeń. Aby uzyskać więcej informacji, zobacz Wymagania dotyczące platformy Azure.
Instalowanie modułu programu PowerShell usługi AksHci
Wykonaj następujące kroki we wszystkich węzłach w klastrze Windows Server:
Uwaga / Notatka
Jeśli używasz zdalnego programu PowerShell, musisz użyć protokołu 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 Windows Server:
Install-PackageProvider -Name NuGet -Force Install-Module -Name PowershellGet -Force -Confirm:$falseNależy ponownie zamknąć wszystkie istniejące okna programu PowerShell, aby upewnić się, że załadowane moduły są odświeżane. Nie przejdź do następnego kroku, dopóki nie zamkniesz wszystkich otwartych okien programu PowerShell.
Zainstaluj moduł AksHci programu PowerShell, uruchamiając następujące polecenie we wszystkich węzłach w klastrze Windows Server:
Install-Module -Name AksHci -Repository PSGallery -Force -AcceptLicenseNależy ponownie zamknąć wszystkie istniejące okna programu PowerShell, aby upewnić się, że załadowane moduły są odświeżane. Nie przejdź do następnego kroku, dopóki nie zamkniesz wszystkich otwartych okien programu PowerShell.
Możesz użyć skryptu pomocnika, aby usunąć stare moduły programu AKS-HCI PowerShell, aby uniknąć problemów związanych z wersją programu PowerShell we wdrożeniu usługi AKS.
Weryfikowanie instalacji
Get-Command -Module AksHci
Aby uzyskać pełną listę poleceń programu PowerShell usługi AksHci , zobacz AksHci PowerShell.
Rejestrowanie dostawcy zasobów w ramach subskrypcji
Przed procesem rejestracji włącz odpowiedniego dostawcę zasobów w Azure na potrzeby rejestracji usługi AKS. W tym celu uruchom następujące polecenia programu PowerShell:
Aby zalogować się do Azure, uruchom polecenie Connect-AzAccount programu PowerShell:
Connect-AzAccount
Jeśli chcesz przełączyć się do innej subskrypcji, uruchom polecenie Set-AzContext programu PowerShell:
Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"
Uruchom następujące polecenia, aby zarejestrować subskrypcję platformy Azure dla dostawców zasobów Kubernetes z obsługą usługi Azure Arc. Ten proces rejestracji może potrwać do 10 minut, ale należy wykonać go tylko raz w określonej subskrypcji:
Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Aby zweryfikować proces rejestracji, uruchom następujące polecenia programu PowerShell:
Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Get-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Krok 1. Przygotowanie maszyn do wdrożenia
Uruchom kontrole na każdym węźle fizycznym, aby sprawdzić, czy spełnione są wszystkie wymagania dotyczące instalowania usługi AKS. Otwórz program PowerShell jako administrator i uruchom następujące polecenie Initialize-AksHciNode na wszystkich węzłach w klastrze Windows Server:
Initialize-AksHciNode
Krok 2. Tworzenie sieci wirtualnej
Uruchom następujące polecenia w dowolnym węźle w klastrze Windows Server.
Aby uzyskać nazwy dostępnych przełączników, uruchom następujące polecenie. Upewnij się, że SwitchType przełącznik VM ma typ Zewnętrzny:
Get-VMSwitch
Przykładowe dane wyjściowe:
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
extSwitch External Mellanox ConnectX-3 Pro Ethernet Adapter
Aby utworzyć sieć wirtualną dla węzłów we wdrożeniu do użycia, utwórz zmienną środowiskową za pomocą polecenia New-AksHciNetworkSetting programu PowerShell. Ta sieć wirtualna jest używana później do konfigurowania wdrożenia korzystającego ze statycznego adresu IP. Jeśli chcesz skonfigurować wdrożenie usługi AKS przy użyciu protokołu DHCP, zobacz New-AksHciNetworkSetting , aby zapoznać się z przykładami. Możesz również zapoznać się z niektórymi pojęciami dotyczącymi węzłów sieciowych.
# 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
Uwaga / Notatka
Musisz dostosować wartości wyświetlane w tym przykładowym poleceniu dla środowiska.
Krok 3. Konfigurowanie wdrożenia
Uruchom następujące polecenia w dowolnym węźle w klastrze Windows Server.
Aby utworzyć ustawienia konfiguracji hosta usługi AKS, użyj polecenia Set-AksHciConfig . Należy określić parametry imageDir, workingDir i cloudConfigLocation. Jeśli chcesz zresetować szczegóły konfiguracji, uruchom ponownie polecenie z nowymi parametrami.
Skonfiguruj wdrożenie przy użyciu następującego polecenia:
$csvPath = 'C:\clusterstorage\volume01' # Specify your preferred CSV path
Set-AksHciConfig -imageDir $csvPath\Images -workingDir $csvPath\ImageStore -cloudConfigLocation $csvPath\Config -vnet $vnet
Uwaga / Notatka
Musisz dostosować wartości wyświetlane w tym przykładowym poleceniu dla środowiska, ale nie można zmienić nazwy maszyny wirtualnej na hoście ani w klastrze Kubernetes.
Krok 4. Logowanie się do Azure i konfigurowanie ustawień rejestracji
Opcja 1. Użyj konta Microsoft Entra, jeśli masz uprawnienia "Właściciel"
Uruchom następujące polecenie Set-AksHciRegistration programu PowerShell z nazwą subskrypcji i grupy zasobów, aby zalogować się do Azure. Musisz mieć subskrypcję Azure i istniejącą grupę zasobów Azure w regionach Australia Wschodnia, Wschodnie stany USA, Azja Południowo-Wschodnia lub Europa Zachodnia Azure:
Set-AksHciRegistration -subscriptionId "<subscriptionId>" -resourceGroupName "<resourceGroupName>"
Opcja 2: używanie jednostki usługi Azure
Jeśli nie masz dostępu do subskrypcji, w której jesteś Właścicielem, możesz zarejestrować hosta AKS w platformie Azure do celów rozliczeniowych przy użyciu jednostki usługi. Aby uzyskać więcej informacji o tym, jak używać nazwy głównej usługi, zobacz rejestrowanie usługi AKS w systemie Windows Server przy użyciu nazwy głównej usługi.
Krok 5. Rozpoczęcie nowego wdrożenia
Uruchom następujące polecenie w dowolnym węźle w klastrze Windows Server.
Po skonfigurowaniu wdrożenia należy je uruchomić, aby zainstalować agentów i usługi AKS oraz hosta AKS. Aby rozpocząć wdrażanie, uruchom następujące polecenie:
Wskazówka
Aby wyświetlić dodatkowe szczegóły stanu podczas instalacji, ustaw przed $VerbosePreference = "Continue" kontynuowaniem.
Install-AksHci
Warning
Podczas instalacji hosta AKS, w grupie zasobów ustawionej podczas rejestracji, tworzony jest typ zasobu Kubernetes — Azure Arc. Nie usuwaj tego zasobu, ponieważ reprezentuje on hosta usługi AKS. Zasób można zidentyfikować, sprawdzając jego pole dystrybucji pod kątem aks_managementwartości . Jeśli usuniesz ten zasób, spowoduje to wdrożenie niezgodne z zasadami.
Krok 6. Tworzenie klastra Kubernetes
Po zainstalowaniu hosta usługi AKS można wdrożyć klaster Kubernetes. Otwórz program PowerShell jako administrator i uruchom następujące polecenie New-AksHciCluster . To przykładowe polecenie tworzy nowy klaster Kubernetes z jedną pulą węzłów systemu Linux o nazwie linuxnodepool z liczbą węzłów 1.
Aby uzyskać więcej informacji na temat pul węzłów, zobacz artykuł Korzystanie z pul węzłów w usłudze AKS.
New-AksHciCluster -name mycluster -nodePoolName linuxnodepool -nodeCount 1 -osType Linux
Sprawdzanie wdrożonych klastrów
Aby uzyskać listę wdrożonych klastrów Kubernetes, uruchom następujące polecenie Get-AksHciCluster programu PowerShell:
Get-AksHciCluster
ProvisioningState : provisioned
KubernetesVersion : v1.20.7
NodePools : linuxnodepool
WindowsNodeCount : 0
LinuxNodeCount : 0
ControlPlaneNodeCount : 1
Name : mycluster
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
Krok 7: połącz klaster z usługą Azure Arc-enabled Kubernetes
Połącz klaster z usługą Arc-enabled Kubernetes, uruchamiając polecenie Enable-AksHciArcConnection. Poniższy przykład łączy klaster Kubernetes z usługą Arc przy użyciu szczegółów subskrypcji i grupy zasobów przekazanych w poleceniu Set-AksHciRegistration :
Connect-AzAccount
Enable-AksHciArcConnection -name mycluster
Uwaga / Notatka
Jeśli podczas procesu instalacji wystąpią problemy lub komunikaty o błędach, zobacz Znane problemy i błędy instalacji , aby uzyskać więcej informacji.
Skalowanie klastra Kubernetes
Jeśli chcesz skalować klaster w górę lub w dół, możesz zmienić liczbę węzłów płaszczyzny sterowania za pomocą polecenia Set-AksHciCluster . Aby zmienić liczbę węzłów roboczych systemu Linux lub Windows w puli węzłów, użyj polecenia Set-AksHciNodePool.
Aby skalować węzły płaszczyzny sterowania, uruchom następujące polecenie:
Set-AksHciCluster -name mycluster -controlPlaneNodeCount 3
Aby skalować węzły robocze w puli węzłów, uruchom następujące polecenie:
Set-AksHciNodePool -clusterName mycluster -name linuxnodepool -count 3
Uwaga / Notatka
W poprzednich wersjach usługi AKS w Windows Server polecenie Set-AksHciCluster było również używane do skalowania węzłów roboczych. Teraz, gdy usługa AKS wprowadza pule węzłów w klastrach obciążeń, można użyć tego polecenia tylko do skalowania węzłów roboczych, jeśli klaster został utworzony przy użyciu starego zestawu parametrów w elemecie New-AksHciCluster.
Aby skalować węzły robocze w puli węzłów, użyj polecenia Set-AksHciNodePool.
Uzyskiwanie dostępu do klastrów przy użyciu narzędzia kubectl
Aby uzyskać dostęp do klastrów Kubernetes przy użyciu narzędzia kubectl, uruchom polecenie Get-AksHciCredential programu PowerShell. To polecenie używa pliku kubeconfig określonego klastra jako domyślnego pliku kubeconfig dla narzędzia kubectl. Możesz również użyć narzędzia kubectl do wdrażania aplikacji przy użyciu narzędzia Helm:
Get-AksHciCredential -name mycluster
Usuwanie klastra Kubernetes
Aby usunąć klaster Kubernetes, uruchom następujące polecenie:
Remove-AksHciCluster -name mycluster
Uwaga / Notatka
Upewnij się, że klaster został usunięty, przeglądając istniejące maszyny wirtualne w programie Hyper-V Manager. Jeśli nie zostaną usunięte, możesz ręcznie usunąć maszyny wirtualne. Następnie uruchom polecenie Restart-Service wssdagent. Uruchom to polecenie na każdym węźle klastra pracy awaryjnej.
Pobierz logi
Aby pobrać dzienniki ze wszystkich podów, uruchom polecenie Get-AksHciLogs. To polecenie tworzy w katalogu roboczym skompresowany folder wyjściowy o nazwie akshcilogs.zip. Pełna ścieżka do folderu akshcilogs.zip jest wynikiem po uruchomieniu następującego polecenia:
Get-AksHciLogs
W tym przewodniku Szybki start przedstawiono sposób konfigurowania hosta usługi AKS i tworzenia klastrów Kubernetes przy użyciu programu PowerShell. Pokazano również, jak za pomocą programu PowerShell skalować klaster Kubernetes i uzyskiwać dostęp do klastrów za pomocą narzędzia kubectl.