Compartilhar via


Configurar vários VIPs para um serviço de nuvem

Importante

O Azure Load Balancer oferece suporte a dois tipos diferentes: Basic e Standard. Este artigo discute o Load Balancer Basic. Para obter mais informações sobre o Load Balancer Standard, veja Visão geral do Load Balancer Standard.

Você pode acessar os serviços de nuvem do Azure pela Internet pública usando um endereço IP fornecido pelo Azure. Esse endereço IP público é chamado de VIP (IP virtual), pois está vinculado ao balanceador de carga do Azure e não às instâncias da VM (Máquina Virtual) no serviço de nuvem. Você pode acessar qualquer instância de VM em um serviço de nuvem usando um único VIP.

No entanto, há cenários em que você pode precisar de mais de um VIP como ponto de entrada para o mesmo serviço de nuvem. Por exemplo, seu serviço de nuvem pode hospedar vários sites que exigem conectividade SSL usando a porta padrão 443, pois cada site é hospedado para um cliente ou locatário diferente. Nesse cenário, você precisa ter um endereço IP voltado para o público diferente para cada site. O diagrama a seguir ilustra uma hospedagem web multilocatário típica com a necessidade de vários certificados SSL na mesma porta pública.

cenário de SSL multi VIP

No exemplo acima, todos os VIPs usam a mesma porta pública (443) e o tráfego é redirecionado para uma ou mais VMs com balanceamento de carga em uma porta privada exclusiva para o endereço IP interno do serviço de nuvem que hospeda todos os sites.

Observação

Outra situação que exige o uso de vários VIPs é hospedar vários ouvintes do grupo de disponibilidade AlwaysOn do SQL no mesmo conjunto de Máquinas Virtuais.

Os VIPs são dinâmicos por padrão, o que significa que o endereço IP real atribuído ao serviço de nuvem pode mudar ao longo do tempo. Para evitar que isso aconteça, você pode reservar um VIP para seu serviço. Para saber mais sobre VIPs reservados, consulte ip público reservado.

Observação

Veja preços de endereço IP para informações sobre preços de VIPs e IPs reservados.

Você pode usar o PowerShell para verificar os VIPs usados pelos serviços de nuvem, bem como adicionar e remover VIPs, associar um VIP a um ponto de extremidade e configurar o balanceamento de carga em um VIP específico.

Limitações

Neste momento, a funcionalidade multi VIP está limitada aos seguintes cenários:

  • IaaS somente. Você só pode habilitar o Multi VIP para serviços de nuvem que contêm VMs. Não é possível usar o Multi VIP em cenários de PaaS com instâncias de função.
  • Apenas PowerShell Você só pode gerenciar o Multi VIP usando o PowerShell.

Essas limitações são temporárias e podem ser alteradas a qualquer momento. Lembre-se de revisitar esta página para verificar alterações futuras.

Como adicionar um VIP a um serviço de nuvem

Para adicionar um VIP ao seu serviço, execute o seguinte comando do PowerShell:

Add-AzureVirtualIP -VirtualIPName Vip3 -ServiceName myService

Este comando exibe um resultado semelhante ao seguinte exemplo:

OperationDescription OperationId                          OperationStatus
-------------------- -----------                          ---------------
Add-AzureVirtualIP   4bd7b638-d2e7-216f-ba38-5221233d70ce Succeeded

Como remover um VIP de um serviço de nuvem

Para remover o VIP adicionado ao serviço no exemplo acima, execute o seguinte comando do PowerShell:

Remove-AzureVirtualIP -VirtualIPName Vip3 -ServiceName myService

Importante

Você só poderá remover um VIP se ele não tiver pontos de extremidade associados.

Como recuperar informações vip de um serviço de nuvem

Para recuperar os VIPs associados a um serviço de nuvem, execute o seguinte script do PowerShell:

$deployment = Get-AzureDeployment -ServiceName myService
$deployment.VirtualIPs

O script exibe um resultado semelhante ao seguinte exemplo:

Address         : 191.238.74.148
IsDnsProgrammed : True
Name            : Vip1
ReservedIPName  :
ExtensionData   :

Address         :
IsDnsProgrammed :
Name            : Vip2
ReservedIPName  :
ExtensionData   :

Address         :
IsDnsProgrammed :
Name            : Vip3
ReservedIPName  :
ExtensionData   :

Neste exemplo, o serviço de nuvem tem 3 VIPs:

  • Vip1 é o VIP padrão, você sabe que, como o valor de IsDnsProgrammedName está definido como true.
  • Vip2 e Vip3 não são usados, pois não têm endereços IP. Eles só serão usados se você associar um endpoint ao VIP.

Observação

Sua assinatura só será cobrada por VIPs adicionais depois que estiverem associados a um endpoint. Para obter mais informações sobre preços, consulte preços de endereços IP.

Como associar um VIP a um endpoint

Para associar um VIP em um serviço de nuvem a um ponto de extremidade, execute o seguinte comando do PowerShell:

Get-AzureVM -ServiceName myService -Name myVM1 |
    Add-AzureEndpoint -Name myEndpoint -Protocol tcp -LocalPort 8080 -PublicPort 80 -VirtualIPName Vip2 |
    Update-AzureVM

O comando cria um ponto de extremidade vinculado ao VIP chamado Vip2 na porta 80e o vincula à VM chamada myVM1 em um serviço de nuvem chamado myService usando TCP na porta 8080.

Para verificar a configuração, execute o seguinte comando do PowerShell:

$deployment = Get-AzureDeployment -ServiceName myService
$deployment.VirtualIPs

A saída deve ser semelhante ao seguinte exemplo:

Address         : 191.238.74.148
IsDnsProgrammed : True
Name            : Vip1
ReservedIPName  :
ExtensionData   :

Address         : 191.238.74.13
IsDnsProgrammed :
Name            : Vip2
ReservedIPName  :
ExtensionData   :

Address         :
IsDnsProgrammed :
Name            : Vip3
ReservedIPName  :
ExtensionData   :

Como habilitar o balanceamento de carga em um VIP específico

Você pode associar um único VIP a várias máquinas virtuais para fins de balanceamento de carga. Por exemplo, você tem um serviço de nuvem chamado myServicee duas máquinas virtuais chamadas myVM1 e myVM2. E seu serviço de nuvem tem vários VIPs, um deles chamado vip2. Se você quiser garantir que todo o tráfego para a porta 81 no vip2 esteja equilibrado entre myVM1 e myVM2 na porta 8181, execute o seguinte script do PowerShell:

Get-AzureVM -ServiceName myService -Name myVM1 |
    Add-AzureEndpoint -Name myEndpoint -LoadBalancedEndpointSetName myLBSet -Protocol tcp -LocalPort 8181 -PublicPort 81 -VirtualIPName Vip2 -DefaultProbe |
    Update-AzureVM

Get-AzureVM -ServiceName myService -Name myVM2 |
    Add-AzureEndpoint -Name myEndpoint -LoadBalancedEndpointSetName myLBSet -Protocol tcp -LocalPort 8181 -PublicPort 81 -VirtualIPName Vip2  -DefaultProbe |
    Update-AzureVM

Você também pode atualizar o balanceador de carga para usar um VIP diferente. Por exemplo, se você executar o comando do PowerShell abaixo, alterará o conjunto de balanceamento de carga para usar um VIP chamado Vip1:

Set-AzureLoadBalancedEndpoint -ServiceName myService -LBSetName myLBSet -VirtualIPName Vip1

Próximas etapas

Logs do Azure Monitor para o Azure Load Balancer

visão geral do balanceador de carga voltado para a Internet

Introdução ao balanceador de carga voltado para a Internet

Visão geral da Rede Virtual

APIs REST de IP Reservado