Delen via


Uw geneste virtualisatieomgeving voorbereiden voor AKS Edge Essentials

In dit artikel wordt beschreven hoe u een geneste virtualisatieomgeving instelt om een AKS-cluster (Azure Kubernetes Service) Edge Essentials te implementeren.

Notitie

Het implementeren van AKS Edge Essentials bovenop een geneste virtualisatieomgeving op VMware ESXi wordt ondersteund. Andere geneste virtualisatie-implementaties worden niet ondersteund voor productiescenario's en zijn beperkt tot ontwikkelaarsdoeleinden. In deze handleiding wordt ervan uitgegaan dat u de Hyper-V-hypervisor gebruikt. We bieden geen ondersteuning voor het gebruik van een niet-Microsoft-hypervisor, zoals KVM.

Vereisten

Implementatie op Windows-VM op VMware ESXi

VMware ESXi 7.0 - en 8.0-versies kunnen AKS Edge Essentials op een virtuele Windows-machine hosten.

Als u AKS Edge Essentials wilt instellen op een virtuele VMware ESXi Windows-machine, gebruikt u de volgende stappen:

  1. Maak een virtuele Windows-machine op de VMware ESXi-host. Zie VMware - Virtuele machines implementeren voor meer informatie over de implementatie van VMware-VM's.

Notitie

Als u een virtuele Windows 11-machine maakt, moet u ervoor zorgen dat deze voldoet aan de minimale vereisten van Microsoft om Windows 11 uit te voeren. Zie Windows 11 installeren als gastbesturingssystemen op VMware voor meer informatie over VMware-ondersteuning voor Windows 11-VM's.

  1. Schakel de virtuele machine uit die u in de vorige stap hebt gemaakt.
  2. Selecteer de virtuele Windows-machine en vervolgens Instellingen bewerken.
  3. Zoek naar hardwarevirtualisatie en schakel hardware-ondersteunde virtualisatie beschikbaar maken in voor het gastbesturingssystemen.
  4. Selecteer Opslaan en start de virtuele machine.
  5. Installeer de Hyper-V-hypervisor. Als u een Windows-client gebruikt, moet u Hyper-V installeren in Windows 10. Als u Windows Server gebruikt, moet u ervoor zorgen dat u de Hyper-V-functie installeert.

Implementatie op virtuele Azure-machines

Als u AKS Edge Essentials boven op een Azure-VM uitvoert, moet u ervoor zorgen dat u een Azure Compute Unit (ACU) gebruikt die ondersteuning biedt voor geneste virtualisatie. Zie Azure Compute Unit (ACU) voor meer informatie. Azure-VM's bieden ook geen ondersteuning voor het gebruik van een externe virtuele switch, dus AKS Edge Essentials-implementaties boven op het VM-hostbesturingssysteem zijn beperkt tot clusters met één machine.

Implementatieomgeving

In deze sectie wordt de geneste architectuur beschreven, waarin de belangrijkste onderdelen en configuratie worden gemarkeerd die nodig zijn. De niveaus van virtualisatie die verderop in dit artikel worden beschreven, zijn:

  • L0-hostbesturingssysteem: Windows-hostbesturingssysteem. Dit besturingssysteem kan bare-metal of als virtuele machine worden uitgevoerd, maar in dit artikel is het L0-hostbesturingssysteem het besturingssysteem dat de geneste Windows L1-VM's maakt.
  • Virtuele L1-machine: Windows-VM die wordt uitgevoerd op het besturingssysteem L0 Windows-host. Deze VM heeft de AKS Edge Essentials-installatie.
  • L2 Virtual Machine: AKS Edge Essentials geneste VM (Linux of Windows) die boven op de virtuele L1 Windows-machine wordt uitgevoerd.

U kunt een geneste omgeving instellen met behulp van een interne of externe virtuele switch. In dit artikel wordt echter ervan uitgegaan dat u een interne virtuele switch gebruikt. IP-adressen van de virtuele L0 Windows-machine en L1/L2 kunnen veranderen, afhankelijk van het netwerkscenario. In dit artikel wordt ervan uitgegaan dat u de IP-adresfamilie 172.20.1.0/24 gebruikt.

Het implementeren van AKS Edge Essentials Windows-knooppunten is ook optioneel en heeft invloed op uw toegewezen geheugenvereisten. In dit artikel wordt een implementatie met alleen Linux beschreven, maar u kunt uw Windows-knooppunten toevoegen door de juiste configuratie toe te voegen aan de JSON-implementatiebestanden.

Tip

Als u externe virtuele switches voor de implementatie gebruikt, moet u ervoor zorgen dat u de juiste netwerkadapters en IP-adressentoewijzingen gebruikt.

Diagram met geneste virtualisatiearchitectuur.

In het vorige diagram ziet u de verschillende virtuele machines en onderdelen van deze geneste architectuur.

Apparaat/VM Besturingssysteem Niveau Parent Geheugen IP-adres
Windows-host-besturingssysteem Windows L0 - 32/64 GB 172.20.1.1
Windows-VM-1 Windows L1 Windows-host-besturingssysteem 8/16 GB 172.20.1.2
Windows-VM-2 Windows L1 Windows-host-besturingssysteem 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 (optioneel) Windows L2 Windows-VM-1 4 GB 172.20.1.5
AKS-Edge-Linux-VM-2 CBL-Mariner L2 Windows-VM-2 4 GB 172.20.1.6
AKS-Edge-Windows-VM-2 (optioneel) Windows L2 Windows-VM-2 4 GB 172.20.1.7

Geneste virtuele machines instellen

De volgende handleiding is een voorbeeld van IP-adrestoewijzing. U kunt uw eigen toewijzing gebruiken op basis van uw netwerkomgeving en vereisten. Naamconventies voor virtuele machines en toewijzingen van virtuele hardware worden ook voorgesteld, maar u kunt uw eigen configuratie gebruiken.

  1. Open een PowerShell-sessie met verhoogde bevoegdheid.

  2. Een interne virtuele switch maken:

    New-VMSwitch -Name "AKS-Int" -SwitchType Internal
    

    Als u de switch correct hebt gemaakt, ziet u iets vergelijkbaars met de volgende uitvoer:

    Name    SwitchType NetAdapterInterfaceDescription
    ----    ---------- ------------------------------
    AKS-Int Internal
    
  3. Wijs een IP-adres toe aan de virtuele AKS-Int-switch . In dit voorbeeld wordt het netwerk 172.20.1.0/24 gebruikt. Het Windows-hostbesturingssystem gebruikt dit IP-adres van de virtuele switch om te communiceren met de andere virtuele machines en AKS Edge Essentials-knooppunten:

    $ifIndex = (Get-NetAdapter -Name "vEthernet (AKS-Int)").ifIndex
    New-NetIPAddress –IPAddress "172.20.1.1" -PrefixLength "24" -InterfaceIndex $ifIndex
    
  4. Maak een NAT-tabel voor het verbinden van de interne virtuele switch en het interne netwerk dat is verbonden met het externe/internetnetwerk:

     New-NetNat -Name "AKS-EE-Int-Network" -InternalIPInterfaceAddressPrefix "172.20.1.0/24"
    
  5. Maak met Hyper-V-beheer de eerste virtuele Windows-machine en geef deze de naam Windows-VM-1. Zie Windows Server-virtualisatie voor meer informatie over het maken van virtuele machines. Zorg er tijdens de configuratie van de VM voor dat u de volgende parameters correct instelt:

    • Processors: Aantal virtuele processors: 4
    • Geheugen: RAM: 8192 MB
    • Netwerkadapter: virtuele switch: AKS-Int
  6. Wanneer De installatie en configuratie van Windows zijn voltooid, schakelt u de virtuele machine van Windows-VM-1 uit.

  7. Geneste virtualisatie inschakelen voor Windows-VM-1. Zie Hyper-V uitvoeren in een virtuele machine met geneste virtualisatie voor meer informatie over geneste virtualisatie:

    Set-VMProcessor -VMName <windows-vm-name> -ExposeVirtualizationExtensions $true
    
  8. MAC-adresvervalsing inschakelen voor Windows-VM-1:

    Get-VMNetworkAdapter -VMName <windows-vm-name> | Set-VMNetworkAdapter -MacAddressSpoofing On
    
  9. Schakel de virtuele Windows-VM-1-machine in en maak verbinding met behulp van de optie Hyper-V Connect .

  10. Open in de virtuele Windows-VM-1-machine een PowerShell-sessie met verhoogde bevoegdheid.

  11. Controleer de adapters die zijn verbonden met de virtuele machine. Zoek de naam van de verbonden Ethernet-adapter<>. Bijvoorbeeld Ethernet 2:

    ipconfig
    

    De uitvoer moet er ongeveer uitzien als hieronder is weergegeven:

    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 . . . . . . . . . :
    
  12. Haal de ifIndex van de Ethernet-adapter op met de naam uit de vorige stap:

    $ifIndex = (Get-NetAdapter -Name "<name>").ifIndex
    
  13. Configureer statische IP 172.20.1.2 en gateway-IP 172.20.1.1 en DNS-server 172.20.1.1:

    Tip

    Als u een Virtuele Azure-machine gebruikt, gebruikt u de DNS-server van het Windows-host-besturingssysteem (L0 ). Gebruik de ipconfig /all opdracht om het DNS-serveradres op te halen. Controleer of u internettoegang kunt krijgen via uw webbrowser. Als u geen toegang hebt, controleert u of de DNS-server juist is geconfigureerd:

    New-NetIPAddress –IPAddress "172.20.1.2" -DefaultGateway "172.20.1.1" -PrefixLength "24" -InterfaceIndex $ifIndex
    Set-DNSClientServerAddress –InterfaceIndex $ifIndex –ServerAddresses "172.20.1.1"
    
  14. Stel de virtuele Windows-VM-1-machine in op basis van de procedure Prepare your machines for AKS Edge Essentials .

  15. Installeer alle AKS Edge Essentials-vereisten voor de virtuele Machine van Windows-VM-1 . Zie AKS Edge Essentials-vereisten en ondersteuningsmatrix voor meer informatie over vereisten:

    Install-AksEdgeHostFeatures
    
  16. Maak het configuratiebestand voor de volledige implementatie van AKS Edge Essentials. Nadat de JSON is gemaakt, voegt u de vereiste parameters toe. Zorg ervoor dat u de netwerkadapter wijzigt voor het maken van externe virtuele switch, DNS-server, toegewezen geheugen en juiste statische IP-adressen. Zie Volledige Kubernetes-implementaties in AKS Edge Essentials voor meer informatie:

    New-AksEdgeConfig -NodeType Linux -DeploymentType ScalableCluster
    
  17. Implementeer de AKS Edge Essentials-implementatie op volledige schaal met behulp van het JSON-configuratiebestand dat u in de vorige stap hebt gemaakt:

    New-AksEdgeDeployment -JsonConfigFilePath .\AksEdgeDeployConfigTemplate.json
    
  18. ICMP-verkeer pingen op de virtuele AKS-Edge-VM-1-machine inschakelen:

    Invoke-AksEdgeNodeCommand -NodeType "Linux" -command "sudo iptables -A INPUT -p ICMP -j ACCEPT"
    
  19. Ping AKS-Edge-VM-1 vanaf de virtuele Windows-VM-1-machine :

    ping 172.20.1.4
    
  20. Ping AKS-Edge-VM-1 vanuit het Windows-hostbesturingssysteem:

    ping 172.20.1.4
    

    Waarschuwing

    Als de pingaanvragen voor de AKS-Edge-VM-1-VM mislukken, controleert u de IP-configuratie en lost u problemen met de netwerkverbindingen op.

  21. Haal in Windows-VM-1 het JSON-bestand scaleConfig op dat moet worden gebruikt in Windows-VM-2:

     New-AksEdgeScaleConfig -NodeType Linux -ScaleType AddMachine -LinuxNodeIp <VM2-Linux-Node-IP>
    
  22. Maak de virtuele windows-VM-2-machine . Herhaal stap 4 tot en met 14 met de nieuwe parameters Windows-VM-2 :

    • Naam van virtuele machine: Windows-VM-2
    • IP-adres: 172.20.1.3
    • Processors: Aantal virtuele processors: 4
    • Geheugen: 8192 MB
    • Netwerkadapter (virtuele switch): AKS-Int
    • IP-gatewayadres: 172.20.1.1
    • DNS-serveradres: 172.20.1.1
  23. Test de ping van Windows-VM-2 naar AKS-Edge-VM-1:

    ping 172.20.1.4
    

    Waarschuwing

    Als de pingaanvragen voor de AKS-Edge-VM-1 mislukken, controleert u de IP-configuratie en lost u de netwerkverbindingen op.

  24. Stel de virtuele windows-VM-2-machine in op basis van de procedure Prepare your machines for AKS Edge Essentials .

  25. Installeer alle AKS Edge Essentials-vereisten voor de virtuele Machine van Windows-VM-2 . Zie AKS Edge Essentials-vereisten en ondersteuningsmatrix voor meer informatie over vereisten:

    Install-AksEdgeHostFeatures
    
  26. Maak verbinding met de virtuele Windows-VM-1-machine en haal met behulp van een PowerShell-sessie met verhoogde bevoegdheid de configuratie van de AKS Edge-clusterdeelname op:

    New-AksEdgeScaleConfig -NodeType Linux -ScaleType AddMachine -LinuxNodeIp <AKS-Edge-Linux-VM-2>
    
  27. Kopieer het AKS Edge Essentials-schaalconfiguratiebestand van Windows-VM-1 en wijzig het met de juiste parameters. Zie Uitschalen op meerdere computers voor meer informatie.

  28. Implementeer AKS-Edge-VM-2 op Window-VM-2 met behulp van het JSON-bestand voor schaalconfiguratie uit de vorige stap:

    New-AksEdgeDeployment -JsonConfigFilePath <scale-config-json>
    
  29. Controleer of het knooppunt is toegevoegd aan het cluster. Voer op elk knooppunt in het cluster de volgende cmdlet uit:

    kubectl get nodes
    

    Als alles correct is ingesteld, ziet u dat beide Linux-knooppunten in uw cluster worden uitgevoerd:

    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-
    

Volgende stappen