Azure App Service'de sanal ağ tümleştirmesini etkinleştirme

Azure App Service uygulamanızdan bir Azure sanal ağıyla tümleştirerek, sanal ağ içindeki uygulamanızdan özel kaynaklara ulaşabilirsiniz.

Önkoşullar

Sanal ağ tümleştirme özelliği şunları gerektirir:

Alt ağın Microsoft.Web/serverFarms'a devredilmesi gerekir. Temsilci seçme tümleştirmeden önce yapılmazsa, sağlama işlemi bu temsilciyi yapılandırılır. Alt ağa bir IPv4 /28 bloğu (16 adres) ayrılmalıdır. En yüksek yatay ölçeklendirmeye izin vermek için en az 64 adrese (IPv4 /26 bloğu) sahip olmanız önerilir.

Sanal ağ uygulamadan farklı bir abonelikteyse, sanal ağa sahip aboneliğin kaynak sağlayıcısı için Microsoft.Web kayıtlı olduğundan emin olmanız gerekir. Bu belgeleri izleyerek sağlayıcıyı açıkça kaydedebilirsiniz, ancak bir abonelikte ilk web uygulaması oluşturulurken otomatik olarak kaydedilir.

Azure portal yapılandırma

  1. App Service portalında Ağ'a gidin. Giden trafik yapılandırması'nın altında Sanal ağ tümleştirmesi'ne tıklayın.

  2. Sanal ağ tümleştirmesi ekle'yi seçin.

    Sanal ağ tümleştirmesi'nin seçilmesini gösteren ekran görüntüsü.

  3. Açılan liste, aboneliğinizdeki aynı bölgedeki tüm sanal ağları içerir. Önceden var olan boş bir alt ağ seçin veya yeni bir alt ağ oluşturun.

    Sanal ağı seçmeyi gösteren ekran görüntüsü.

Tümleştirme sırasında uygulamanız yeniden başlatılır. Tümleştirme tamamlandığında, tümleştirdiğiniz sanal ağda ayrıntıları görürsünüz.

Azure CLI ile yapılandırma

Azure CLI'yi kullanarak sanal ağ tümleştirmesini de yapılandırabilirsiniz:

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

Not

Komut, alt ağın Microsoft.Web/serverFarms'a temsilci olarak atanıp atanmadığını denetler ve yapılandırılmamışsa gerekli temsilciyi uygular. Alt ağ yapılandırılmışsa ve denetleme izniniz yoksa veya sanal ağ başka bir abonelikteyse doğrulamayı --skip-delegation-check atlamak için parametresini kullanabilirsiniz.

Azure PowerShell ile yapılandırma

Parametreleri hazırlama.

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

Not

Sanal ağ web uygulamasından başka bir abonelikteyse, geçerli abonelik bağlamını ayarlamak için Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx-xxxx" komutunu kullanabilirsiniz. Geçerli abonelik bağlamını sanal ağın dağıtıldığı aboneliğe ayarlayın.

Alt ağın Microsoft.Web/serverFarms'a temsilci olarak atanmış olup olmadığını denetleyin.

$vnet = Get-AzVirtualNetwork -Name $vNetName -ResourceGroupName $vNetResourceGroupName
$subnet = Get-AzVirtualNetworkSubnetConfig -Name $integrationSubnetName -VirtualNetwork $vnet
Get-AzDelegation -Subnet $subnet

Alt ağınız Microsoft.Web/serverFarms için temsilci olarak atanmazsa aşağıdaki komutları kullanarak temsilci ekleyin.

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

Sanal ağ tümleştirmeyi yapılandırma.

Not

Web uygulaması sanal ağdan başka bir abonelikteyse, geçerli abonelik bağlamını ayarlamak için Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx" komutunu kullanabilirsiniz. Geçerli abonelik bağlamını web uygulamasının dağıtıldığı aboneliğe ayarlayın.

$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

Sonraki adımlar