Udostępnij za pośrednictwem


Włączanie integracji sieci wirtualnej w usłudze aplikacja systemu Azure Service

Dzięki integracji z siecią wirtualną platformy Azure z poziomu aplikacji usługi aplikacja systemu Azure Service możesz uzyskać dostęp do zasobów prywatnych z aplikacji w sieci wirtualnej.

Wymagania wstępne

Funkcja integracji sieci wirtualnej wymaga:

Podsieć musi być delegowana do microsoft.Web/serverFarms. Jeśli nie delegujesz przed integracją, proces aprowizacji konfiguruje to delegowanie. Podsieć musi być przydzielona blok IPv4 /28 (16 adresów). Zalecamy, aby maksymalnie 64 adresy (blok IPv4 /26 ) zezwalały na maksymalną skalę poziomą.

Jeśli sieć wirtualna znajduje się w innej subskrypcji niż aplikacja, upewnij się, że subskrypcja z siecią wirtualną Microsoft.Web jest zarejestrowana dla dostawcy zasobów. Dostawca jest rejestrowany podczas tworzenia pierwszej aplikacji internetowej w ramach subskrypcji. Aby jawnie zarejestrować dostawcę, zobacz Rejestrowanie dostawcy zasobów.

Konfigurowanie w witrynie Azure Portal

  1. Przejdź do aplikacji w witrynie Azure Portal. Wybierz pozycję Ustawienia>Sieci. W obszarze Konfiguracja ruchu wychodzącego obok pozycji Integracja z siecią wirtualną wybierz link Nieskonfigurowane .

  2. Wybierz pozycję Dodaj integrację sieci wirtualnej.

    Zrzut ekranu przedstawiający wybieranie pozycji Integracja z siecią wirtualną.

  3. Wybierz subskrypcję i sieć wirtualną.

  4. W obszarze Podsieć lista rozwijana zawiera wszystkie sieci wirtualne w subskrypcji w tym samym regionie. Wybierz pustą wstępnie współistniejącą podsieć lub utwórz nową podsieć. Wybierz pozycję Połącz.

    Zrzut ekranu przedstawiający wybieranie sieci wirtualnej.

Podczas integracji aplikacja jest uruchamiana ponownie. Po zakończeniu integracji zostaną wyświetlone szczegółowe informacje dotyczące sieci wirtualnej zintegrowanej z usługą .

Konfigurowanie przy użyciu interfejsu wiersza polecenia platformy Azure

Integrację z siecią wirtualną można również skonfigurować przy użyciu interfejsu wiersza polecenia platformy Azure:

az webapp vnet-integration add --resource-group <group-name> --name <app-name> --vnet <vnet-name> --subnet <subnet-name>

Uwaga

Polecenie sprawdza, czy podsieć jest delegowana do aplikacji Microsoft.Web/serverFarms. Jeśli nie jest skonfigurowany, polecenie stosuje niezbędne delegowanie. Jeśli podsieć została skonfigurowana i nie masz uprawnień do jej sprawdzania lub jeśli sieć wirtualna znajduje się w innej subskrypcji, możesz użyć parametru --skip-delegation-check , aby pominąć walidację.

Konfigurowanie przy użyciu programu Azure PowerShell

  1. Przygotowywanie parametrów.

    $siteName = '<app-name>'
    $vNetResourceGroupName = '<group-name>'
    $webAppResourceGroupName = '<group-name>'
    $vNetName = '<vnet-name>'
    $integrationSubnetName = '<subnet-name>'
    $vNetSubscriptionId = '<subscription-guid>'
    

    Uwaga

    Jeśli sieć wirtualna znajduje się w innej subskrypcji niż aplikacja internetowa, możesz użyć Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx" polecenia , aby ustawić bieżący kontekst subskrypcji. Ustaw bieżący kontekst subskrypcji na subskrypcję, w której wdrożono sieć wirtualną.

  2. Sprawdź, czy podsieć jest delegowana do aplikacji Microsoft.Web/serverFarms.

    $vnet = Get-AzVirtualNetwork -Name $vNetName -ResourceGroupName $vNetResourceGroupName
    $subnet = Get-AzVirtualNetworkSubnetConfig -Name $integrationSubnetName -VirtualNetwork $vnet
    Get-AzDelegation -Subnet $subnet
    
  3. Jeśli podsieć nie jest delegowana do aplikacji Microsoft.Web/serverFarms, dodaj delegowanie przy użyciu tych poleceń.

    $subnet = Add-AzDelegation -Name "myDelegation" -ServiceName "Microsoft.Web/serverFarms" -Subnet $subnet
    Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  4. Konfigurowanie integracji sieci wirtualnej.

    $subnetResourceId = "/subscriptions/$vNetSubscriptionId/resourceGroups/$vNetResourceGroupName/providers/Microsoft.Network/virtualNetworks/$vNetName/subnets/$integrationSubnetName"
    $webApp = Get-AzResource -ResourceType Microsoft.Web/sites -ResourceGroupName $webAppResourceGroupName -ResourceName $siteName
    $webApp.Properties.virtualNetworkSubnetId = $subnetResourceId
    $webApp.Properties.vnetRouteAllEnabled = 'true'
    $webApp | Set-AzResource -Force
    

    Uwaga

    Jeśli aplikacja internetowa znajduje się w innej subskrypcji niż sieć wirtualna, możesz użyć Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx" polecenia , aby ustawić bieżący kontekst subskrypcji. Ustaw bieżący kontekst subskrypcji na subskrypcję, w której wdrożono aplikację internetową.