Bereitstellen von Microsoft Software Defined Networking (SDN)
Gilt für: AKS auf Azure Stack HCI 22H2, AKS unter Windows Server
In diesem Artikel wird beschrieben, wie Sie VMs für AKS-Infrastruktur und Workload in einem virtuellen SDN-Netzwerk mit unserem SDN Software Load Balancer für alle AKS Arc-Lastenausgleichsszenarien bereitstellen. AKS, die von Azure Arc aktiviert sind, bietet eine vollständig unterstützte Containerplattform, die cloudeigene Anwendungen auf der Kubernetes-Container-Orchestrierungsplattform ausführen kann. Die Architektur unterstützt die Ausführung virtualisierter Windows- und Linux-Workloads.
Begrenzungen
Die folgenden Features sind außerhalb des Gültigkeitsbereichs und werden in dieser GA-Version nicht unterstützt:
- Anfügen von Pods und Containern an ein virtuelles SDN-Netzwerk.
- Pods verwenden Flannel oder Calico (Standard) als Netzwerkanbieter.
- Erzwingung von Netzwerkrichtlinien mithilfe der SDN-Netzwerksicherheitsgruppen.
- Die SDN-Netzwerksicherheitsgruppen können weiterhin außerhalb von AKS Arc mit SDN-Tools (REST/PowerShell/Windows Admin Center/SCVMM) konfiguriert werden, aber Kubernetes NetworkPolicy-Objekte konfigurieren sie nicht.
- Anfügen von AKS Arc VM NICs an logische SDN-Netzwerke.
- Installation mit Windows Admin Center.
- Physischer Host mit AKS Arc VM-Konnektivität: VM-NICs sind mit einem virtuellen SDN-Netzwerk verbunden und somit standardmäßig nicht vom Host aus zugänglich. Jetzt können Sie diese Konnektivität manuell aktivieren, indem Sie eine öffentliche IP direkt mit dem SDN Software Load Balancer an die VM anfügen.
Voraussetzungen
Um von Arc mit SDN aktivierte AKS bereitzustellen, stellen Sie sicher, dass Ihre Umgebung die Bereitstellungskriterien von AKS Arc und SDN erfüllt.
- Anforderungen für AKS Arc
- SDN-Anforderungen: Planen einer Software Defined Network-Infrastruktur
Hinweis
Die SDN-Integration in AKS Arc erfordert nur Netzwerkcontroller und Softwarelastenausgleich. Gateway-VMs sind optional.
Installieren und Vorbereiten von SDN für AKS Arc
Zunächst muss das SDN installiert werden. Um das SDN zu installieren, empfehlen wir SDN Express oder Windows Admin Center. Eine Referenzkonfigurationsdatei, die alle erforderlichen SDN-Infrastrukturkomponenten bereitstellt, finden Sie hier: [Software Load Balancer.psd1][].
Sobald die SDN Express-Bereitstellung abgeschlossen ist, sollte ein Bildschirm angezeigt werden, der den Status als fehlerfrei meldet.
Wenn ein Fehler aufgetreten ist oder als fehlerhaft gemeldet wird, lesen Sie die Problembehandlung bei SDN.
Das SDN muss fehlerfrei sein, bevor Sie fortfahren. Wenn Sie SDN in einer neuen Umgebung bereitstellen, empfehlen wir auch das Erstellen von Test-VMs und die Überprüfung der Konnektivität mit den VIPs für das Lastenausgleichsmodul. Informationen zum Erstellen und Anfügen von VMs an ein virtuelles SDN-Netzwerk mithilfe des Windows Admin Center finden Sie hier.
Schritte zum Installieren von AKS
Initialisieren und vorbereiten Sie alle physischen Hostcomputer für AKS Arc. Die aktuellsten Anweisungen finden Sie unter Bereitstellen eines AKS-Hosts .
Installieren des AKS-HCI PowerShell-Moduls
Unter Installieren des AksHci PowerShell-Moduls finden Sie Informationen zum Installieren des AKS-HCI PowerShell-Moduls.
Hinweis
Nachdem Sie diesen Schritt abgeschlossen haben, aktualisieren oder laden Sie alle geöffneten PowerShell-Sitzungen neu, um die Module neu zu laden.
Registrieren des Ressourcenanbieters bei Ihrem Abonnement
Informationen zum Registrieren des Ressourcenanbieters für Ihr Abonnement finden Sie unter Installieren des AksHci PowerShell-Moduls.
Vorbereiten Ihrer Computer für die Bereitstellung
Informationen zum Vorbereiten Ihrer Computer für die Bereitstellung finden Sie unter Vorbereiten der Computer für die Bereitstellung.
Konfigurieren von AKS für die Installation
Wählen Sie einen Ihrer lokalen Azure-Computer aus, um die Erstellung von AKS Arc voranzutreiben. Es gibt drei Schritte, die vor der Installation ausgeführt werden müssen:
Konfigurieren Sie die AKS-Netzwerkeinstellungen für SDN; Beispiel:
- SDN Virtual Network "10.20.0.0/24" (10.20.0.0 – 10.20.0.255). Ein virtualisiertes Netzwerk und Sie können ein beliebiges IP-Subnetz verwenden. Dieses Subnetz muss nicht in Ihrem physischen Netzwerk vorhanden sein.
- vSwitch-Name "Extern". Der externe vSwitch auf den lokalen Azure-Computern. Stellen Sie sicher, dass Sie denselben vSwitch verwenden, der für die SDN-Bereitstellung verwendet wurde.
- Gateway "10.20.0.1". Diese Adresse ist das Gateway für Ihr virtuelles Netzwerk.
- DNS-Server "10.127.130.7". Der DNS-Server für Ihr virtuelles Netzwerk.
$vnet = New-AksHciNetworkSetting –name "myvnet" –vswitchName "External" -k8sNodeIpPoolStart "10.20.0.2" -k8sNodeIpPoolEnd "10.20.0.255" -ipAddressPrefix "10.20.0.0/24" -gateway "10.20.0.1" -dnsServers "10.127.130.7"
Parameter Beschreibung -name
Name des virtuellen Netzwerks in AKS, die von Arc aktiviert sind (muss klein geschrieben sein). -vswitchName
Name des externen vSwitch auf den lokalen Azure-Computern. Verwenden Sie denselben vSwitch, der für die SDN-Bereitstellung verwendet wurde. -k8sNodeIpPoolStart
-k8sNodeIpPoolEnd
IP-Start-/Endbereich des virtuellen SDN-Netzwerks. -ipAddressPrefix
Virtuelles Netzwerk-Subnetz in CIDR-Notation. -gateway
-dnsServers
Gateway und DNS-Server des virtuellen SDN-Netzwerks. Weitere Informationen zu diesen Parametern finden Sie unter New-AksHciNetworkSetting.
Erstellen Sie im gleichen PowerShell-Fenster, das Sie in Schritt 1 verwendet haben, einen VIP-Pool, um AKS über unsere IPs zu informieren, die aus unserem logischen SDN-Lastenausgleichsnetzwerk verwendet werden können:
$VipPool = New-AksHciVipPoolSetting -name "publicvip" -vipPoolStart "10.127.132.16" -vipPoolEnd "10.127.132.23
Parameter Beschreibung -name
Das logische Netzwerk "PublicVIP", das Sie beim Konfigurieren von SDN-Lastenausgleichsmodulen bereitgestellt haben. Innerhalb des Cmdlets muss dieser Name Kleinbuchstaben sein. -vipPoolStart
IP-Startbereich des logischen Netzwerks, das für den VIP-Pool des öffentlichen Lastenausgleichs verwendet wird. Sie müssen einen Adressbereich aus dem logischen SDN-Netzwerk "PublicVIP" verwenden. -vipPoolEnd
IP-End-Bereich des logischen Netzwerks, das für den VIP-Pool des öffentlichen Lastenausgleichs verwendet wird. Sie müssen einen Adressbereich aus dem logischen SDN-Netzwerk "PublicVIP" verwenden. Erstellen Sie in dem in Schritt 2 verwendeten PowerShell-Fenster die AKS-Konfiguration für SDN, indem Sie Verweise auf die zielbezogenen SDN-Netzwerke bereitstellen und die Zuvor definierten Netzwerkeinstellungen ($vnet, $vipPool) bereitstellen:
Set-AksHciConfig –imageDir "C:\ClusterStorage\Volume1\ImageStore" –workingDir "C:\ClusterStorage\Volume1\WorkDir" –cloudConfigLocation "C:\ClusterStorage\Volume1\Config" –vnet $vnet –useNetworkController –NetworkControllerFqdnOrIpAddress "nc.contoso.com" –networkControllerLbSubnetRef "/logicalnetworks/PublicVIP/subnets/my_vip_subnet" –networkControllerLnetRef "/logicalnetworks/HNVPA" -vipPool $vipPool
Das logische HNVPA-Netzwerk wird als zugrunde liegender Anbieter für das virtuelle AKS Arc-Netzwerk verwendet.
Wenn Sie eine statische IP-Adresszuweisung für Ihre lokalen Azure-Clusterknoten verwenden, müssen Sie auch den
CloudServiceCidr
Parameter angeben. Dieser Parameter ist die IP-Adresse des MOC-Clouddiensts und muss sich im selben Subnetz wie azure Local cluster nodes befinden. Weitere Informationen finden Sie unter Microsoft On-premises Cloud Service.Parameter Beschreibung –imageDir
Der Pfad, an dem AKS Arc seine VHD-Bilder speichert. Dieser Pfad muss ein freigegebener Speicherpfad oder eine SMB-Freigabe sein. –workingDir
Der Pfad, zu dem kleine Dateien für das Modul gespeichert werden. Dieser Pfad muss ein freigegebener Speicherpfad oder eine SMB-Freigabe sein. -cloudConfigLocation
Der Pfad zum Verzeichnis, in dem die Cloud-Agent-Konfiguration gespeichert ist. Dieser Pfad muss ein freigegebener Speicherpfad oder eine SMB-Freigabe sein. -vnet
Name der AksHciNetworkSetting
Variablen, die im vorherigen Schritt erstellt wurde-useNetworkController
Aktivieren Sie die Integration in SDN. -networkControllerFqdnOrIpAddress
FQDN des Netzwerkcontrollers. Sie können den FQDN abrufen, indem Sie den Virtuellen Computer des Netzwerkcontrollers ausführen Get-NetworkController
und denRestName
Parameter verwenden.-networkControllerLbSubnetRef
Verweis auf das öffentliche logische VIP-Netzwerksubnetz, das im Netzwerkcontroller konfiguriert ist. Sie können dieses Subnetz abrufen, indem Sie das Get-NetworkControllerLogicalSubnet
Cmdlet ausführen. Verwenden Sie bei Verwendung dieses CmdletsPublicVIP
als .LogicalNetworkId
DieVipPoolStart
Parameter undvipPoolEnd
Parameter imNew-AksHciVipPoolSetting
Cmdlet müssen Teil des subnetz sein, auf das hier verwiesen wird.-networkControllerLnetRef
Normalerweise lautet dieser Wert "/logicalnetworks/HNVPA". -vipPool
VIP-Pool, der als Front-End-IPs für den Lastenausgleich verwendet wird. Weitere Informationen zu diesen Parametern finden Sie unter Set-AksHciConfig.
Anmelden bei Azure und Konfigurieren der Registrierungseinstellungen
Folgen Sie den Anweisungen hier , um Registrierungseinstellungen zu konfigurieren.
Hinweis
Wenn Sie nicht über Besitzerberechtigungen verfügen, empfiehlt es sich, einen Azure-Dienstprinzipal zu verwenden.
Installieren von AKS
Sobald die AKS-Konfiguration abgeschlossen ist, können Sie AKS auf Azure Local installieren.
Install-AksHci
Sobald die Installation erfolgreich war, wird eine VM (Verwaltungscluster) für die Steuerungsebene erstellt, und ihre VmNIC ist an Ihr SDN-Netzwerk angefügt.
Sammeln von Protokollen aus einem SDN und AKS in einer lokalen Azure-Umgebung
Mit SDN und AKS auf Azure Local gewinnen wir die Isolation der AKS-Knoten in virtuellen Netzwerken. Da sie isoliert sind, müssen wir ein neues SDN AKS-HCI-Protokollsammlungsskript importieren und einen geänderten Befehl ausführen, der das Lastenausgleichsmodul zum Abrufen von Protokollen von den Knoten verwendet:
Install-Module -Name AksHciSdnLogCollector -Repository PSGallery
Get-AksHciLogsSdn
Feedback/Probleme
Hier finden Sie die Self-Help-Ressourcen für SDN und hier für AKS-HCI.
Nächste Schritte
Als Nächstes können Sie Workloadcluster erstellen und Ihre Anwendungen bereitstellen. Alle von Arc aktivierten AKS-VM-NICs werden nahtlos an das virtuelle SDN-Netzwerk angefügt, das während der Installation bereitgestellt wurde. Der SDN-Softwarelastenausgleich wird auch als externer Lastenausgleich für alle Kubernetes-Dienste verwendet und fungiert als Lastenausgleich für den API-Server auf Kubernetes-Steuerebenen.The SDN Software load balancer is also used as the external load balancer for all Kubernetes services, and acts as the load balancer for the API server on Kubernetes control-plane(s).