Przygotowywanie zagnieżdżonego środowiska wirtualizacji dla usługi AKS Edge Essentials
W tym artykule opisano sposób konfigurowania zagnieżdżonego środowiska wirtualizacji w celu wdrożenia klastra Azure Kubernetes Service (AKS) Edge Essentials.
Uwaga
Wdrażanie usługi AKS Edge Essentials na podstawie zagnieżdżonego środowiska wirtualizacji w środowisku VMware ESXi jest obsługiwane na KB2009916 VMware. Inne zagnieżdżone wdrożenia wirtualizacji nie są obsługiwane w scenariuszach produkcyjnych i są ograniczone do celów deweloperskich. W tym przewodniku założono, że używasz funkcji hypervisor funkcji Hyper-V. Nie obsługujemy używania funkcji hypervisor innej niż Microsoft, takiej jak KVM.
Wymagania wstępne
- Zobacz wymagania systemowe.
- Wymagania dotyczące systemu operacyjnego: zainstaluj Windows 10/11 IoT Enterprise/Enterprise/Pro na maszynie i aktywuj system Windows. Zalecamy użycie najnowszej wersji klienta 22H2 (kompilacja systemu operacyjnego 19045) lub serwera 2022 (kompilacja systemu operacyjnego 20348). Możesz pobrać wersję Windows 10 tutaj lub Windows 11 tutaj.
Wdrażanie na maszynie wirtualnej z systemem Windows na maszynie wirtualnej VMware ESXi
Wersje VMware ESXi 7.0 i 8.0 mogą hostować podstawowe elementy usługi AKS Edge na maszynie wirtualnej z systemem Windows. Aby uzyskać więcej informacji na temat obsługi wirtualizacji zagnieżdżonych programu VMware ESXi, zobacz VMware KB2009916 .
Aby skonfigurować usługę AKS Edge Essentials na maszynie wirtualnej VMware ESXi z systemem Windows, wykonaj następujące kroki:
- Utwórz maszynę wirtualną z systemem Windows na hoście VMware ESXi. Aby uzyskać więcej informacji na temat wdrażania maszyn wirtualnych VMware, zobacz VMware — Wdrażanie Virtual Machines.
Uwaga
Jeśli tworzysz maszynę wirtualną Windows 11, upewnij się, że spełnia ona minimalne wymagania firmy Microsoft dotyczące uruchamiania Windows 11. Aby uzyskać więcej informacji na temat obsługi oprogramowania VMware Windows 11 maszyn wirtualnych, zobacz Instalowanie Windows 11 jako system operacyjny gościa w programie VMware.
- Wyłącz maszynę wirtualną utworzoną w poprzednim kroku.
- Wybierz maszynę wirtualną z systemem Windows, a następnie pozycję Edytuj ustawienia.
- Wyszukaj wirtualizację sprzętu i włącz opcję Uwidacznij wirtualizację wspomaganą sprzętem w systemie operacyjnym gościa.
- Wybierz pozycję Zapisz i uruchom maszynę wirtualną.
- Zainstaluj funkcję hypervisor funkcji Hyper-V. Jeśli używasz klienta systemu Windows, upewnij się, że zainstalowano funkcję Hyper-V na Windows 10. Jeśli używasz systemu Windows Server, upewnij się, że zainstalowano rolę funkcji Hyper-V.
Wdrażanie na maszynach wirtualnych platformy Azure
Jeśli korzystasz z usługi AKS Edge Essentials na maszynie wirtualnej platformy Azure, upewnij się, że używasz jednostki obliczeniowej platformy Azure obsługującej wirtualizację zagnieżdżonych. Aby uzyskać więcej informacji, zobacz Azure Compute Unit (ACU). Ponadto maszyny wirtualne platformy Azure nie obsługują korzystania z zewnętrznego przełącznika wirtualnego, dlatego wdrożenia usługi AKS Edge Essentials na podstawie systemu operacyjnego hosta maszyny wirtualnej są ograniczone do klastrów jedno maszynowych.
Środowisko wdrażania
W tej sekcji opisano architekturę zagnieżdżonych, wyróżniając główne składniki i wymaganą konfigurację. Poziomy wirtualizacji opisane w dalszej części tego artykułu to:
- L0 System operacyjny hosta: system operacyjny hosta systemu Windows. Ten system operacyjny może być uruchomiony bez systemu operacyjnego lub jako maszyna wirtualna, ale w tym artykule system operacyjny hosta L0 jest tym, który tworzy zagnieżdżone maszyny wirtualne z systemem Windows L1.
- L1 Maszyna wirtualna: maszyna wirtualna z systemem Windows uruchomiona na platformie L0 systemu operacyjnego hosta systemu Windows. Ta maszyna wirtualna ma instalację AKS Edge Essentials.
- Maszyna wirtualna L2: zagnieżdżona maszyna wirtualna usługi AKS Edge Essentials (Linux lub Windows) uruchomiona na maszynie wirtualnej Z systemem Windows L1.
Środowisko zagnieżdżone można skonfigurować przy użyciu wewnętrznego lub zewnętrznego przełącznika wirtualnego. Jednak w tym artykule założono, że używasz wewnętrznego przełącznika wirtualnego. Adresy IP maszyny wirtualnej L0 z systemem Windows i maszyn wirtualnych L1/L2 mogą się zmieniać w zależności od scenariusza sieci. W tym artykule założono, że używasz rodziny adresów IP 172.20.1.0/24 .
Ponadto wdrażanie węzłów systemu Windows w usłudze AKS Edge Essentials jest opcjonalne i ma wpływ na przypisane wymagania dotyczące pamięci. W tym artykule opisano wdrożenie tylko dla systemu Linux, ale można dodać węzły systemu Windows, dodając odpowiednią konfigurację do plików JSON wdrożenia.
Porada
Jeśli do wdrożenia używasz zewnętrznych przełączników wirtualnych, upewnij się, że używasz prawidłowych kart sieciowych i alokacji adresów IP.
Na poprzednim diagramie przedstawiono różne maszyny wirtualne i składniki tej zagnieżdżonej architektury.
Urządzenie/maszyna wirtualna | System operacyjny | Poziom | Parent | Memory (Pamięć) | Adres IP |
---|---|---|---|---|---|
System operacyjny hosta systemu Windows | Windows | L0 | - | 32/64 GB | 172.20.1.1 |
Windows-VM-1 | Windows | L1 | System operacyjny hosta systemu Windows | 8/16 GB | 172.20.1.2 |
Maszyna wirtualna z systemem Windows-2 | Windows | L1 | System operacyjny hosta systemu Windows | 8/16 GB | 172.20.1.3 |
AKS-Edge-Linux-VM-1 | CBL-Mariner | L2 | Windows-VM-1 | 4 GB | 172.20.1.4 |
AKS-Edge-Windows-VM-1 (opcjonalnie) | Windows | L2 | Windows-VM-1 | 4 GB | 172.20.1.5 |
AKS-Edge-Linux-VM-2 | CBL-Mariner | L2 | Maszyna wirtualna z systemem Windows-2 | 4 GB | 172.20.1.6 |
AKS-Edge-Windows-VM-2 (opcjonalnie) | Windows | L2 | Maszyna wirtualna z systemem Windows-2 | 4 GB | 172.20.1.7 |
Konfigurowanie zagnieżdżonych maszyn wirtualnych
Poniższy przewodnik zawiera przykład alokacji adresów IP. Możesz użyć własnej alokacji na podstawie środowiska sieciowego i wymagań. Sugerowane są również konwencje nazewnictwa maszyn wirtualnych i przypisań sprzętu wirtualnego, ale można użyć własnej konfiguracji.
Otwórz sesję programu PowerShell z podwyższonym poziomem uprawnień.
Utwórz wewnętrzny przełącznik wirtualny:
New-VMSwitch -Name "AKS-Int" -SwitchType Internal
Jeśli przełącznik został utworzony poprawnie, powinien zostać wyświetlony komunikat podobny do następujących danych wyjściowych:
Name SwitchType NetAdapterInterfaceDescription ---- ---------- ------------------------------ AKS-Int Internal
Przypisz adres IP do przełącznika wirtualnego usługi AKS-Int . W tym przykładzie użyto sieci 172.20.1.0/24 . System operacyjny hosta systemu Windows używa tego adresu IP przełącznika wirtualnego do komunikowania się z innymi maszynami wirtualnymi i węzłami AKS Edge Essentials:
$ifIndex = (Get-NetAdapter -Name "vEthernet (AKS-Int)").ifIndex New-NetIPAddress –IPAddress "172.20.1.1" -PrefixLength "24" -InterfaceIndex $ifIndex
Utwórz tabelę NAT na potrzeby łączenia wewnętrznego przełącznika wirtualnego i urządzeń połączonych z siecią wewnętrzną z siecią zewnętrzną/internetową:
New-NetNat -Name "AKS-EE-Int-Network" -InternalIPInterfaceAddressPrefix "172.20.1.0/24"
Za pomocą Menedżera funkcji Hyper-V utwórz pierwszą maszynę wirtualną z systemem Windows i nadaj jej nazwę Windows-VM-1. Aby uzyskać więcej informacji na temat tworzenia maszyny wirtualnej, zobacz Wirtualizacja systemu Windows Server. Podczas konfigurowania maszyny wirtualnej upewnij się, że poprawnie skonfigurowaliśmy następujące parametry:
- Procesory: liczba procesorów wirtualnych: 4
- Pamięć: PAMIĘĆ RAM: 8192 MB
- Karta sieciowa: przełącznik wirtualny: AKS-Int
Po zakończeniu instalacji i konfiguracji systemu Windows wyłącz maszynę wirtualną z systemem Windows-VM-1 .
Włącz wirtualizację zagnieżdżona dla maszyny wirtualnej z systemem Windows-1. Aby uzyskać więcej informacji na temat wirtualizacji zagnieżdżonej, zobacz Uruchamianie funkcji Hyper-V na maszynie wirtualnej przy użyciu wirtualizacji zagnieżdżonej:
Set-VMProcessor -VMName <windows-vm-name> -ExposeVirtualizationExtensions $true
Włącz fałszowanie mac dla maszyny wirtualnej z systemem Windows-1:
Get-VMNetworkAdapter -VMName <windows-vm-name> | Set-VMNetworkAdapter -MacAddressSpoofing On
Włącz maszynę wirtualną z systemem Windows-VM-1 i nawiąż połączenie przy użyciu opcji Podłączanie funkcji Hyper-V.
Na maszynie wirtualnej z systemem Windows-VM-1 otwórz sesję programu PowerShell z podwyższonym poziomem uprawnień.
Sprawdź karty podłączone do maszyny wirtualnej. Poszukaj nazwy>połączonej karty <Ethernet. Na przykład Ethernet 2:
ipconfig
Powinny zostać wyświetlone dane wyjściowe podobne do poniższych:
PS C:\Windows\system32> ipconfig Windows IP Configuration Ethernet adapter Ethernet 2: Connection-specific DNS Suffix . : mshome.net Link-local IPv6 Address . . . . . : fe80::f4b3:63b3:20d0:2e60%12 Autoconfiguration IPv4 Address. . : 169.254.233.233 Subnet Mask . . . . . . . . . . . : 255.255.0.0 Default Gateway . . . . . . . . . : Ethernet adapter vEthernet (Default Switch): Connection-specific DNS Suffix . : Link-local IPv6 Address . . . . . : fe80::545e:7d5:812b:c17b%18 IPv4 Address. . . . . . . . . . . : 172.21.144.1 Subnet Mask . . . . . . . . . . . : 255.255.240.0 Default Gateway . . . . . . . . . :
Pobierz właściwość ifIndexkarty Ethernet o nazwie z poprzedniego kroku:
$ifIndex = (Get-NetAdapter -Name "<name>").ifIndex
Skonfiguruj statyczny adres IP 172.20.1.2 i adres IP bramy 172.20.1.1 i serwer DNS 172.20.1.1:
Porada
Jeśli używasz maszyny wirtualnej platformy Azure, użyj serwera DNS systemu operacyjnego hosta systemu Windows (L0). Użyj polecenia ,
ipconfig /all
aby uzyskać adres serwera DNS. Sprawdź, czy możesz uzyskać dostęp do Internetu za pomocą przeglądarki internetowej. Jeśli nie masz dostępu, sprawdź, czy serwer DNS jest poprawnie skonfigurowany:New-NetIPAddress –IPAddress "172.20.1.2" -DefaultGateway "172.20.1.1" -PrefixLength $ifIndex Set-DNSClientServerAddress –InterfaceIndex $ifIndex –ServerAddresses "172.20.1.1"
Skonfiguruj maszynę wirtualną z systemem Windows-VM-1 zgodnie z procedurą Przygotowywanie maszyn do usługi AKS Edge Essentials .
Zainstaluj wszystkie wymagania wstępne usługi AKS Edge Essentials dla maszyny wirtualnej z systemem Windows-VM-1 . Aby uzyskać więcej informacji na temat wymagań wstępnych, zobacz AKS Edge Essentials requirements and support matrix (Wymagania wstępne usługi AKS Edge Essentials i macierz obsługi):
Install-AksEdgeHostFeatures
Utwórz plik konfiguracji wdrożenia usługi AKS Edge Essentials na pełną skalę. Po utworzeniu kodu JSON dodaj wymagane parametry. Pamiętaj, aby zmienić kartę sieciową na potrzeby zewnętrznego tworzenia przełącznika wirtualnego, serwera DNS, przypisanej pamięci i poprawnych statycznych adresów IP. Aby uzyskać więcej informacji, zobacz Pełne wdrożenia kubernetes w usłudze AKS Edge Essentials:
New-AksEdgeConfig -NodeType Linux -DeploymentType ScalableCluster
Wdróż wdrożenie usługi AKS Edge Essentials na pełną skalę przy użyciu pliku JSON konfiguracji utworzonego w poprzednim kroku:
New-AksEdgeDeployment -JsonConfigFilePath .\AksEdgeDeployConfigTemplate.json
Włącz ruch ICMP ping na maszynie wirtualnej AKS-Edge-VM-1 :
Invoke-AksEdgeNodeCommand -NodeType "Linux" -command "sudo iptables -A INPUT -p ICMP -j ACCEPT"
Ping AKS-Edge-VM-1 z maszyny wirtualnej z systemem Windows-VM-1 :
ping 172.20.1.4
Ping AKS-Edge-VM-1 z systemu operacyjnego hosta systemu Windows:
ping 172.20.1.4
Ostrzeżenie
Jeśli żądanie ping do maszyny wirtualnej AKS-Edge-VM-1 zakończy się niepowodzeniem, zapoznaj się z konfiguracją adresu IP i rozwiąż problemy z połączeniami sieciowymi.
Wewnątrz maszyny wirtualnej z systemem Windows-1 pobierz plik JSON scaleConfig , który ma być używany w maszynie wirtualnej z systemem Windows-2:
New-AksEdgeScaleConfig -NodeType Linux -ScaleType AddMachine -LinuxNodeIp <VM2-Linux-Node-IP>
Utwórz maszynę wirtualną z systemem Windows-VM-2 . Powtórz kroki od 4 do 14 przy użyciu nowych parametrów maszyny wirtualnej z systemem Windows-2 :
- Nazwa maszyny wirtualnej: Windows-VM-2
- Adres IP: 172.20.1.3
- Procesory: liczba procesorów wirtualnych: 4
- Pamięć: 8192 MB
- Karta sieciowa (przełącznik wirtualny): AKS-Int
- Adres bramy IP: 172.20.1.1
- Adres serwera DNS: 172.20.1.1
Przetestuj polecenie ping z maszyny wirtualnej z systemem Windows-2 do usługi AKS-Edge-VM-1:
ping 172.20.1.4
Ostrzeżenie
Jeśli żądanie ping do usługi AKS-Edge-VM-1 zakończy się niepowodzeniem, zapoznaj się z konfiguracją adresu IP i rozwiąż problemy z połączeniami sieciowymi.
Skonfiguruj maszynę wirtualną z systemem Windows-VM-2 zgodnie z procedurą Przygotowywanie maszyn do usługi AKS Edge Essentials .
Zainstaluj wszystkie wymagania wstępne usługi AKS Edge Essentials dla maszyny wirtualnej z systemem Windows-VM-2 . Aby uzyskać więcej informacji na temat wymagań wstępnych, zobacz AKS Edge Essentials requirements and support matrix (Wymagania wstępne usługi AKS Edge Essentials i macierz obsługi):
Install-AksEdgeHostFeatures
Połącz się z maszyną wirtualną z systemem Windows-VM-1 i użyj sesji programu PowerShell z podwyższonym poziomem uprawnień, pobierz konfigurację przyłączania do klastra usługi AKS Edge:
New-AksEdgeScaleConfig -NodeType Linux -ScaleType AddMachine -LinuxNodeIp <AKS-Edge-Linux-VM-2>
Skopiuj plik konfiguracji usługi AKS Edge Essentials skalowania z maszyny wirtualnej z systemem Windows-1 i zmodyfikuj go przy użyciu odpowiednich parametrów. Aby uzyskać więcej informacji, zobacz Skalowanie w górę na wielu maszynach.
Wdróż usługę AKS-Edge-VM-2 w oknie-VM-2 przy użyciu pliku JSON konfiguracji skalowania z poprzedniego kroku:
New-AksEdgeDeployment -JsonConfigFilePath <scale-config-json>
Sprawdź, czy węzeł został dodany do klastra. W dowolnym węźle w klastrze uruchom następujące polecenie cmdlet:
kubectl get nodes
Jeśli wszystko zostało poprawnie skonfigurowane, powinny zostać wyświetlone oba węzły systemu Linux uruchomione w klastrze
PS C:\> kubectl get nodes NAME STATUS ROLES AGE VERSION windows-vm1-ledge Ready control-plane,etcd,master 3m45s v1.24.3+k3s- windows-vm2-ledge Ready control-plane,etcd,master 10m25s v1.24.3+k3s-
Następne kroki
- Dodawanie obciążeń przez wdrażanie aplikacji
- Rozwiązywanie problemów z wdrożeniem
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla