Udostępnij przez


Tworzenie wielu prefiksów dla podsieci w usłudze Azure Virtual Network

Wdrożenia aplikacji, które wymagają dynamicznego skalowania w sieci wirtualnej, są zagrożone wyczerpaniem przestrzeni adresowej podsieci. Podsieci w sieciach wirtualnych mogą hostować wiele aplikacji, które wymagają możliwości skalowania w poziomie. Ta Multiple Address Prefixes on Subnet funkcja umożliwia łatwe skalowanie maszyn wirtualnych i zestawów skalowania maszyn wirtualnych platformy Azure w podsieciach. Funkcja eliminuje konieczność usunięcia wszystkich zasobów z podsieci jako wymagania wstępnego modyfikowania prefiksów adresów.

Obecnie nie ma możliwości rozszerzania przestrzeni podsieci ani przekraczania granic podsieci, co ogranicza zestaw skalowania maszyn wirtualnych do dostępnej przestrzeni adresowej w podsieci. Jednak dzięki tej funkcji zestawy skalowania maszyn wirtualnych mogą teraz korzystać z dodatkowych przestrzeni adresowych podsieci podczas skalowania w górę. Jeśli pierwsza podsieć jest pełna, dodatkowe maszyny wirtualne lub zestawy skalowania maszyn wirtualnych mogą być przenoszone do nowego prefiksu przestrzeni adresowej w tej samej podsieci.

Następujące ograniczenia nadal obowiązują od teraz:

  • Funkcja obsługuje tylko maszyny wirtualne i zestawy skalowania maszyn wirtualnych i nie obsługuje sprzętu Bare Metal ani wstrzykiwania VNet dla kontenerów, szczególnie w trybie PodSubnet IPAM w klastrach AKS. Żadna delegowana podsieć nie może korzystać z tej funkcji (z wyjątkiem GatewaySubnets delegowanych do usług bramy ExpressRoute).

  • Ta funkcja nie obsługuje wielu konfiguracji adresów klienta (CA). W przypadku używania wielu prefiksów w podsieci można używać tylko jednej konfiguracji adresu klienta (CA). Obsługiwany jest pojedynczy adres IPv4 (protokół internetowy w wersji 4) i pojedynczy adres IPv6 (protokół internetowy w wersji 6) na kartę sieciową (karta interfejsu sieciowego).

  • Ta funkcja jest obecnie dostępna tylko za pośrednictwem wiersza polecenia (programu PowerShell, interfejsu wiersza polecenia) lub szablonów usługi Azure Resource Manager. Obsługa witryny Azure Portal jest ograniczona. Po dodaniu dodatkowych prefiksów adresów w Subnets bloku będzie można zobaczyć poprawną liczbę Available IPs prefiksów ze wszystkich prefiksów, ale na liście znajduje się tylko pierwszy prefiks.

    • Szczegóły konfiguracji podsieci i wszystkich prefiksów podsieci można uzyskać, przechodząc do strony Sieć Overview wirtualna i wybierając JSON Viewpozycję .

Wymagania wstępne

Uwaga

Właściwości podsieci addressPrefixes i addressPrefix nie są używane zamiennie. Aby uzyskać najlepsze wyniki, użyj tylko prefiksów addressPrefixes dla pojedynczego prefiksu adresu i dla wielu prefiksów adresów. Jeśli używasz już prefiksów addressPrefixes w przepływach pracy, kontynuuj korzystanie z tej właściwości.

  • Program Azure PowerShell został zainstalowany lokalnie lub w usłudze Azure Cloud Shell.

  • Zaloguj się do programu Azure PowerShell i upewnij się, że wybierzesz subskrypcję, z którą chcesz korzystać z tej funkcji. Aby uzyskać więcej informacji, zobacz Logowanie się przy użyciu programu Azure PowerShell.

  • Az.Network Upewnij się, że moduł ma wartość 4.3.0 lub nowszą. Aby sprawdzić zainstalowany moduł, użyj polecenia Get-InstalledModule -Name Az.Network. Jeśli moduł wymaga aktualizacji, w razie potrzeby użyj polecenia Update-Module -Name Az.Network .

Jeśli postanowisz zainstalować program PowerShell i używać go lokalnie, ten artykuł wymaga modułu Azure PowerShell w wersji 5.4.1 lub nowszej. Uruchom polecenie Get-Module -ListAvailable Az, aby dowiedzieć się, jaka wersja jest zainstalowana. Jeśli konieczne będzie uaktualnienie, zobacz Instalowanie modułu Azure PowerShell. Jeśli używasz programu PowerShell lokalnie, musisz też uruchomić polecenie Connect-AzAccount, aby utworzyć połączenie z platformą Azure.

Tworzenie podsieci z wieloma prefiksami

W tej sekcji utworzysz podsieć z wieloma prefiksami.

  1. Użyj polecenia New-AzResourceGroup, aby utworzyć grupę zasobów o nazwie test-rg w lokalizacji eastus2.

    $rg = @{
        Name = 'test-rg'
        Location = 'eastus2'
    }
    New-AzResourceGroup @rg
    
  2. Użyj polecenia New-AzVirtualNetworkSubnetConfig , aby utworzyć podsieć z wieloma prefiksami.

    $subnet = @{
        Name = 'subnet-1'
        AddressPrefix = '10.0.0.0/24', '10.0.1.0/24'
    }
    $subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet 
    
  3. Użyj polecenia New-AzVirtualNetwork , aby utworzyć sieć wirtualną z podsiecią.

    $net = @{
        Name = 'vnet-1'
        ResourceGroupName = 'test-rg'
        Location = 'eastus2'
        AddressPrefix = '10.0.0.0/16'
        Subnet = $subnetConfig
    }
    New-AzVirtualNetwork @net
    

Aktualizowanie istniejącej podsieci z wieloma prefiksami

W tej sekcji dodasz drugi prefiks w istniejącej podsieci, aby rozwinąć przestrzeń adresową.

  1. Użyj polecenia Get-AzVirtualNetwork , aby pobrać docelową konfigurację sieci wirtualnej w zmiennej.

    $vnet = Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1'
    
  2. Użyj Set-AzVirtualNetworkSubnetConfig, aby dodać drugi prefiks adresu do konfiguracji podsieci. Określ istniejące i nowe prefiksy adresów w tym kroku

    Ważne

    Nie można pominąć wyświetlania listy istniejących prefiksów podsieci w tym kroku. Tylko prefiksy adresów określone w tym miejscu zostaną zastosowane w następnym kroku, wszystkie inne zostaną usunięte, jeśli nie są używane, lub w wyniku błędu, jeśli są one przywoływania przez istniejące interfejsy sieciowe.

    Set-AzVirtualNetworkSubnetConfig -Name 'subnet-1' -VirtualNetwork $vnet -AddressPrefix '10.0.0.0/24', '10.0.1.0/24'
    
  3. Użyj Set-AzVirtualNetwork, aby zastosować zaktualizowaną konfigurację sieci wirtualnej.

    $vnet | Set-AzVirtualNetwork
    
  4. Użyj Get-AzVirtualNetwork i Get-AzVirtualNetwork, aby pobrać zaktualizowaną konfigurację sieci wirtualnej i podsieci. Sprawdź, czy podsieć ma teraz dwa prefiksy adresów.

    Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1' | `
        Get-AzVirtualNetworkSubnetConfig -Name 'subnet-1' | `
        ConvertTo-Json
    

Usuwanie prefiksu z podsieci

Można również usunąć prefiksy adresów z podsieci, która nie jest aktywnie używana, czyli brak istniejących interfejsów sieciowych odwołujących się do tych prefiksów adresów. W tej sekcji usuniesz unused prefiks adresu.

  1. Użyj polecenia Get-AzVirtualNetwork , aby pobrać docelową konfigurację sieci wirtualnej w zmiennej.

    $vnet = Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1'
    
  2. Użyj polecenia Get-AzVirtualNetworkSubnetConfig , aby wyświetlić listę wszystkich prefiksów adresów w podsieci docelowej.

    Get-AzVirtualNetworkSubnetConfig -Name 'subnet-1' -VirtualNetwork $vnet 
    
  3. Użyj polecenia Set-AzVirtualNetworkSubnetConfig , aby zaktualizować listę prefiksów adresów i usunąć te, które nie są używane.

    Ważne

    Tylko prefiksy adresów określone w tym miejscu zostaną zastosowane w następnym kroku, wszystkie inne zostaną usunięte, jeśli nie są używane, lub w wyniku błędu, jeśli są one przywoływania przez istniejące interfejsy sieciowe.

    Set-AzVirtualNetworkSubnetConfig -Name 'subnet-1' -VirtualNetwork $vnet -AddressPrefix '10.0.1.0/24'
    
  4. Użyj Set-AzVirtualNetwork, aby zastosować zaktualizowaną konfigurację sieci wirtualnej.

    $vnet | Set-AzVirtualNetwork
    
  5. Użyj Get-AzVirtualNetwork i Get-AzVirtualNetwork, aby pobrać zaktualizowaną konfigurację sieci wirtualnej i podsieci. Sprawdź, czy podsieć ma teraz dwa prefiksy adresów.

    Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1' | `
        Get-AzVirtualNetworkSubnetConfig -Name 'subnet-1' | `
        ConvertTo-Json