Erstellen, Löschen oder Aktualisieren virtueller Mandantennetzwerke
In diesem Artikel erfahren Sie, wie Sie virtuelle Netzwerke für die Hyper-V-Netzwerkvirtualisierung erstellen, löschen und aktualisieren, nachdem Sie Software-Defined Networking (SDN) bereitgestellt haben. Per Hyper-V-Netzwerkvirtualisierung können Sie Mandantennetzwerke isolieren, damit es sich bei jedem Mandantennetzwerk um eine separate Entität handelt. Für die einzelnen Entitäten sind keine Querverbindungen möglich, sofern Sie nicht entweder Workloads mit öffentlichem Zugriff konfigurieren.
Erstellen eines neuen virtuellen Netzwerks
Wenn Sie ein virtuelles Netzwerk für einen Mandanten erstellen, wird es in einer eindeutigen Routingdomäne auf dem Hyper-V-Host eingerichtet. Unter jedem virtuellen Netzwerk befindet sich mindestens ein virtuelles Subnetz. Virtuelle Subnetze werden durch ein IP-Präfix definiert und verweisen auf eine zuvor definierte ACL.
So erstellen Sie ein neues virtuelles Netzwerk:
- Identifizieren Sie die IP-Adresspräfixe, aus denen Sie die virtuellen Subnetze erstellen möchten.
- Identifizieren Sie das logische Anbieternetzwerk, auf dem der Mandantendatenverkehr getunnelt wird.
- Erstellen Sie mindestens ein virtuelles Subnetz für jedes IP-Präfix, das Sie in Schritt 1 identifiziert haben.
- (Optional) Fügen Sie die zuvor erstellten ACLs zu den virtuellen Subnetzen hinzu, oder richten Sie Gatewaykonnektivität für Mandanten ein.
Die folgende Tabelle enthält Beispiel-Subnetz-IDs und Präfixe für zwei fiktive Mandanten. Der Mandant Fabrikam verfügt über zwei virtuelle Subnetze, während der Contoso-Mandant drei virtuelle Subnetze besitzt.
Mandantenname | Virtuelle Subnetz-ID | Virtuelles Subnetzpräfix |
---|---|---|
Fabrikam | 5001 | 24.30.1.0/24 |
Fabrikam | 5002 | 24.30.2.0/20 |
Contoso | 6001 | 24.30.1.0/24 |
Contoso | 6002 | 24.30.2.0/24 |
Contoso | 6003 | 24.30.3.0/24 |
Das folgende Beispielskript verwendet Windows PowerShell-Befehle, die aus dem NetworkController-Modul exportiert wurden, um das virtuelle Netzwerk von Contoso und ein Subnetz zu erstellen:
import-module networkcontroller
$URI = "https://ncrest.contoso.local"
#Find the HNV Provider Logical Network
$logicalnetworks = Get-NetworkControllerLogicalNetwork -ConnectionUri $uri
foreach ($ln in $logicalnetworks) {
if ($ln.Properties.NetworkVirtualizationEnabled -eq "True") {
$HNVProviderLogicalNetwork = $ln
}
}
#Find the Access Control List to user per virtual subnet
$acllist = Get-NetworkControllerAccessControlList -ConnectionUri $uri -ResourceId "AllowAll"
#Create the Virtual Subnet
$vsubnet = new-object Microsoft.Windows.NetworkController.VirtualSubnet
$vsubnet.ResourceId = "Contoso_WebTier"
$vsubnet.Properties = new-object Microsoft.Windows.NetworkController.VirtualSubnetProperties
$vsubnet.Properties.AccessControlList = $acllist
$vsubnet.Properties.AddressPrefix = "24.30.1.0/24"
#Create the Virtual Network
$vnetproperties = new-object Microsoft.Windows.NetworkController.VirtualNetworkProperties
$vnetproperties.AddressSpace = new-object Microsoft.Windows.NetworkController.AddressSpace
$vnetproperties.AddressSpace.AddressPrefixes = @("24.30.1.0/24")
$vnetproperties.LogicalNetwork = $HNVProviderLogicalNetwork
$vnetproperties.Subnets = @($vsubnet)
New-NetworkControllerVirtualNetwork -ResourceId "Contoso_VNet1" -ConnectionUri $uri -Properties $vnetproperties
Ändern eines vorhandenen virtuellen Netzwerks
Sie können Windows PowerShell verwenden, um ein vorhandenes virtuelles Subnetz oder Netzwerk zu aktualisieren.
Wenn Sie das folgende Beispielskript ausführen, werden die aktualisierten Ressourcen einfach mit derselben Ressourcen-ID auf dem Netzwerkcontroller eingerichtet. Wenn Ihr Mandant Contoso ein neues virtuelles Subnetz (24.30.2.0/24) zu seinem virtuellen Netzwerk hinzufügen möchte, können Sie oder der*die Contoso-Administrator*in das folgende Skript verwenden.
$acllist = Get-NetworkControllerAccessControlList -ConnectionUri $uri -ResourceId "AllowAll"
$vnet = Get-NetworkControllerVirtualNetwork -ResourceId "Contoso_VNet1" -ConnectionUri $uri
$vnet.properties.AddressSpace.AddressPrefixes += "24.30.2.0/24"
$vsubnet = new-object Microsoft.Windows.NetworkController.VirtualSubnet
$vsubnet.ResourceId = "Contoso_DBTier"
$vsubnet.Properties = new-object Microsoft.Windows.NetworkController.VirtualSubnetProperties
$vsubnet.Properties.AccessControlList = $acllist
$vsubnet.Properties.AddressPrefix = "24.30.2.0/24"
$vnet.properties.Subnets += $vsubnet
New-NetworkControllerVirtualNetwork -ResourceId "Contoso_VNet1" -ConnectionUri $uri -properties $vnet.properties
Löschen eines virtuellen Netzwerks
Sie können Windows PowerShell verwenden, um ein virtuelles Netzwerk zu löschen.
Im folgenden Windows PowerShell-Beispiel wird ein virtuelles Mandantennetzwerk gelöscht, indem ein HTTP-Löschvorgang an den URI der Ressourcen-ID ausgegeben wird.
Remove-NetworkControllerVirtualNetwork -ResourceId "Contoso_Vnet1" -ConnectionUri $uri