Skalowanie w górę na wielu maszynach
Teraz, gdy usługa AKS Edge Essentials jest zainstalowana na komputerze podstawowym, w tym artykule opisano sposób skalowania klastra do innych maszyn pomocniczych w celu utworzenia wdrożenia wielu maszyn.
Uwaga
Skalowanie do dodatkowych węzłów jest funkcją eksperymentalną.
Wymagania wstępne
- Skonfiguruj skalowalny klaster Kubernetes .
- Skonfiguruj maszyny pomocnicze zgodnie z opisem w artykule Konfigurowanie maszyny. Nie można mieszać różnych dystrybucji Kubernetes w klastrze. Jeśli klaster na maszynie podstawowej jest uruchomiony K8s, należy również zainstalować plik MSI K8s na maszynach pomocniczych.
Krok 1. Pobieranie konfiguracji klastra z komputera podstawowego
Na komputerze podstawowym, na którym utworzono skalowalne wdrożenie, uruchom następujące kroki w oknie programu PowerShell z podwyższonym poziomem uprawnień, aby utworzyć odpowiedni plik konfiguracji na podstawie wymagań.
Aby przeprowadzić skalowanie przez dodanie węzła roboczego tylko dla systemu Linux, utwórz wymagany plik konfiguracji przy użyciu następującego polecenia i określ
NodeType
jako "Linux" i podaj unikatowy i dostępny adres IP dla tego węzła:New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
Aby przeprowadzić skalowanie przez dodanie większej liczby węzłów płaszczyzny sterowania systemu Linux, określ
NodeType
wartość "Linux", ustawControlPlane
flagę na wartość true i podaj unikatowy adres IP dla węzła systemu Linux:New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Linux -LinuxNodeIp x.x.x.x -ControlPlane -outFile .\ScaleConfig.json | Out-Null
Aby przeprowadzić skalowanie przez dodanie węzła roboczego tylko dla systemu Windows, określ
NodeType
wartość "Windows" i podaj unikatowy adres IP dla węzła systemu Windows:New-AksEdgeScaleConfig -scaleType AddMachine -NodeType Windows -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
Aby dodać węzeł roboczy systemu Linux i Windows, określ
NodeType
wartość "LinuxAndWindows" i podaj unikatowy adres IP dla węzłów systemów Linux i Windows:New-AksEdgeScaleConfig -scaleType AddMachine -NodeType LinuxandWindows -LinuxNodeIp x.x.x.x -WindowsNodeIp x.x.x.x -outFile .\ScaleConfig.json | Out-Null
Aby dodać węzeł płaszczyzny sterowania systemu Linux i węzeł procesu roboczego systemu Windows, określ
NodeType
jako "LinuxAndWindows", ustaw flagęControlPlane
jakotrue
, i podaj unikatowy adres IP dla węzłów systemów Linux i Windows:New-AksEdgeScaleConfig -scaleType AddMachine -NodeType LinuxandWindows -LinuxNodeIp x.x.x.x -WindowsNodeIp x.x.x.x -ControlPlane -outFile .\ScaleConfig.json | Out-Null
Te polecenia eksportują niezbędne dane, aby dołączyć klaster w formacie JSON, zwrócić je jako ciąg JSON i zapisać w pliku określonym za pomocą outFile
parametru.
Uwaga
Za każdym razem, gdy uruchamiasz New-AksEdgeScaleConfig
polecenie, wcześniej utworzone polecenie ClusterJoinToken
staje się nieprawidłowe, więc nie można użyć wcześniej utworzonego pliku ScaleConfig.json . ClusterJoinToken
Ponadto jest ważny tylko przez 24 godziny.
Krok 2. Weryfikowanie parametrów konfiguracji
Plik konfiguracji .\ScaleConfig.json zawiera konfigurację z komputera podstawowego. Przejrzyj i zaktualizuj niezbędne sekcje oraz podaj szczegółowe informacje dotyczące maszyny, do której się skalujesz.
Zweryfikuj element
NetworkConnection.AdapterName
z odwołaniem do maszyny pomocniczej. Jeśli na maszynie pomocniczej utworzono przełącznik zewnętrzny funkcji Hyper-V, możesz określić szczegóły przełącznika wirtualnego w pliku ScaleConfig.json . Jeśli nie utworzysz przełącznika zewnętrznego w Menedżerze funkcji Hyper-V i uruchomiszNew-AksEdgeDeployment
polecenie, usługa AKS Edge Essentials automatycznie utworzy przełącznik zewnętrzny o nazwieaksedgesw-ext
i użyje go do wdrożenia.Uwaga
W tej wersji występuje znany problem podczas automatycznego tworzenia przełączników zewnętrznych za
New-AksEdgeDeployment
pomocą polecenia , jeśli używasz adaptera Wi-Fi dla przełącznika. W tym przypadku najpierw utwórz przełącznik zewnętrzny przy użyciu menedżera funkcji Hyper-V — Menedżera przełącznika wirtualnego i zamapuj przełącznik na kartę sieci Wi-Fi. Następnie podaj szczegóły przełącznika w pliku JSON konfiguracji zgodnie z opisem w tej sekcji.Element
Network.NetworkPlugin
jestflannel
domyślnie. Flannel jest domyślną siecią CNI klastra K3S. W przypadku klastra K8S zmień wartość naNetworkPlugin
calico
.Sprawdź konfigurację zasobów dla węzłów pomocniczych. Te parametry można modyfikować zgodnie z potrzebami. Upewnij się, że masz wystarczającą ilość pamięci dla każdego węzła. Jeśli określono
MacAddress
na komputerze podstawowym, sprawdź i podaj odpowiedni adres MAC odpowiedni dla maszyny pomocniczej.Jedyną obsługiwaną ustawieniem jest nieparzysta liczba węzłów płaszczyzny sterowania. W związku z tym, jeśli chcesz skalować płaszczyznę sterowania w górę/w dół, upewnij się, że masz jeden, trzy lub pięć węzłów płaszczyzny sterowania.
Krok 3. Wywoływanie węzła na maszynie pomocniczej
Teraz możesz przystąpić do uruchamiania węzłów na maszynach pomocniczych i dodawania ich do klastra.
Aby wdrożyć odpowiedni węzeł na maszynie pomocniczej, możesz teraz użyć pliku ScaleConfig.json utworzonego w poprzednim kroku:
New-AksEdgeDeployment -JsonConfigFilePath .\ScaleConfig.json
Krok 4. Weryfikowanie konfiguracji klastra
W dowolnym węźle w klastrze uruchom następujące polecenie cmdlet:
kubectl get nodes -o wide
Powinny być widoczne wszystkie węzły klastra.
Krok 5. Dodawanie kolejnych węzłów
Możesz wygenerować nowy plik ScaleConfig na podstawie wymaganego typu nodeType, powtarzając kroki 1–4. Upewnij się, że podajesz adresy IP, które są dostępne w sieci za każdym razem, gdy dodajesz węzeł.
Krok 6. Dodawanie drugiego węzła (Linux/Windows) na maszynie, która ma już węzeł (opcjonalnie)
Możesz dodać kolejny węzeł do istniejącej maszyny, która ma już węzeł. Jeśli na przykład na maszynie jest uruchomiony węzeł systemu Linux, możesz dodać do niego węzeł systemu Windows:
New-AksEdgeScaleConfig -ScaleType AddNode -NodeType Windows -WindowsNodeIp "xxx" -outFile .\ScaleConfig.json | Out-Null
Można również określić parametry, takie jak CpuCount
i/lub MemoryInMB
dla maszyny wirtualnej z systemem Windows.
Uwaga
Uruchamiaj New-AksEdgeScaleConfig
tylko na maszynach z węzłem systemu Linux z rolą ControlPlane .
Możesz użyć wygenerowanego pliku konfiguracji i uruchomić następujące polecenie, aby dodać węzeł systemu Windows:
Add-AksEdgeNode -JsonConfigFilePath .\ScaleConfig.json
W tym miejscu możesz również określić parametry, takie jak CpuCount
i/lub MemoryInMB
dla maszyny wirtualnej z systemem Windows.