При использовании внутреннего loadbalancer вы заполняете бэкэнд-пул, связывая сетевой адаптер на vnet с бэкэном LB. Когда вы интегрируете webapp в vnet, вы напрямую не управляете NIC, поскольку это работает через P2S VPN.
Это означает, что вы не можете добавить внутренний IP-адрес webapp в ILB. Если вы хотите выполнить балансировку между webapps на vnet по внутреннему IP, я бы предложил посмотреть на Azure Application Gateway. При этом вы можете добавлять FQDN или внутренние IP-адреса в бэкэнд-пул при создании шлюза вместо привязки сетевых адаптеров.
Если вы хотите продолжить работу с внутренним балансировщиком нагрузки, например, при загрузке виртуальных машин, вы также можете сделать это с помощью существующего vnet.
Вы можете выполнить шаги на https://azure.microsoft.com/en-us/documentation/articles/load-balancer-get-started-ilb-arm-ps/, которые, как я предполагаю, являются отправной точкой для вашего вопроса.
В статье представлены предварительные условия для создания балансировщика нагрузки, а затем создается сам loadbalancer. Первые два фрагменты предназначены для создания конфигурации подсети и VNET с этой конфигурацией:
$backendSubnet = New-AzureRmVirtualNetworkSubnetConfig -Name LB-Subnet-BE -AddressPrefix 10.0.2.0/24
$vnet= New-AzureRmVirtualNetwork -Name NRPVNet -ResourceGroupName NRP-RG -Location "West US" -AddressPrefix 10.0.0.0/16 -Subnet $backendSubnet
Это включен, так как следующий шаг (создание внешнего интерфейсом IP Config) требует subnetID в качестве входных данных. Если у вас уже есть VNET с подсети для использования, вы можете заменить две строки выше
$vnet = Get-AzureRmVirtualNetwork -Name YourNetwork -ResourceGroupName YourRG
Остальные шаги будут тогда, предполагая, что вы с внешнего интерфейса IP, чтобы быть на первой подсети ваш VNET и IP-пространство, используемое в образце соответствует одному на вашем VNET:
$frontendIP = New-AzureRmLoadBalancerFrontendIpConfig -Name LB-Frontend -PrivateIpAddress 10.0.2.5 -SubnetId $vnet.subnets[0].Id
$beaddresspool= New-AzureRmLoadBalancerBackendAddressPoolConfig -Name "LB-backend"
$inboundNATRule1= New-AzureRmLoadBalancerInboundNatRuleConfig -Name "RDP1" -FrontendIpConfiguration $frontendIP -Protocol TCP -FrontendPort 3441 -BackendPort 3389
$inboundNATRule2= New-AzureRmLoadBalancerInboundNatRuleConfig -Name "RDP2" -FrontendIpConfiguration $frontendIP -Protocol TCP -FrontendPort 3442 -BackendPort 3389
$healthProbe = New-AzureRmLoadBalancerProbeConfig -Name "HealthProbe" -RequestPath "HealthProbe.aspx" -Protocol http -Port 80 -IntervalInSeconds 15 -ProbeCount 2
$lbrule = New-AzureRmLoadBalancerRuleConfig -Name "HTTP" -FrontendIpConfiguration $frontendIP -BackendAddressPool $beAddressPool -Probe $healthProbe -Protocol Tcp -FrontendPort 80 -BackendPort 80
$NRPLB = New-AzureRmLoadBalancer -ResourceGroupName "NRP-RG" -Name "NRP-LB" -Location "West US" -FrontendIpConfiguration $frontendIP -InboundNatRule $inboundNATRule1,$inboundNatRule2 -LoadBalancingRule $lbrule -BackendAddressPool $beAddressPool -Probe $healthProbe
Предполагая, что бэкенд сетевые карты уже созданы, используйте следующий код для каждой сетевой карты, чтобы добавить их к loadbalancer бэкэнд бассейна:
$lb= Get-AzureRmLoadBalancer –name NRP-LB -resourcegroupname NRP-RG
$backend= Get-AzureRmLoadBalancerBackendAddressPoolConfig -name backendpool1 -LoadBalancer $lb
$nic=Get-AzureRmNetworkInterface –name lb-nic1-be -resourcegroupname NRP-RG
$nic.IpConfigurations[0].LoadBalancerBackendAddressPools=$backend
Set-AzureRmNetworkInterface -NetworkInterface $nic
Вам действительно нужна настройка сайта. как только вы настроите Vnet и обмениваетесь данными через частные конечные точки. Виртуальные службы/облачные службы общаются с внутренним правом? – Aravind