Perfis aninhados do Gerenciador de Tráfego
O Gerenciador de Tráfego inclui uma variedade de métodos de roteamento de tráfego que permitem controlar como o Gerenciador de Tráfego escolhe qual ponto de extremidade deve receber o tráfego de cada usuário final. Para obter mais informações, consulte Métodos de roteamento de tráfego do Gerenciador de Tráfego.
Cada perfil do Gerenciador de Tráfego especifica um único método de roteamento de tráfego. No entanto, há cenários que exigem um roteamento de tráfego mais sofisticado do que o roteamento fornecido por um único perfil do Gerenciador de Tráfego. Aninhe perfis do Gerenciador de Tráfego para combinar os benefícios de mais de um método de roteamento de tráfego. Os perfis aninhados permitem que você substitua o comportamento padrão do Gerenciador de Tráfego para dar suporte a implantações de aplicativo maiores e mais complexas.
Para criar um perfil aninhado, adicione um perfil 'filho' como um ponto de extremidade a um perfil 'pai'. Alguns exemplos são fornecidos neste artigo.
MinChildEndpoints
Quando você adiciona um perfil filho como um ponto de extremidade no perfil pai, o parâmetro MinChildEndpoints é criado e recebe um valor padrão de 1. Esse parâmetro determina o número mínimo de pontos de extremidade que devem estar disponíveis no perfil filho para que ele seja íntegro. Abaixo desse limite, o perfil pai considerará todo o perfil filho como indisponível e direcionará o tráfego para os outros pontos de extremidade do perfil pai.
Os seguintes parâmetros estão disponíveis no perfil pai:
- MinChildEndpoints: o número mínimo de pontos de extremidade filho íntegros para que o status do perfil aninhado seja íntegro.
- MinChildEndpointsIPv4: o número mínimo de pontos de extremidade filho IPv4 íntegros para que o status do perfil aninhado seja íntegro.
- MinChildEndpointsIPv6: o número mínimo de pontos de extremidade filho IPv6 íntegros para que o status do perfil aninhado seja íntegro.
Importante
Deve haver pelo menos um ponto de extremidade IPv4 e um IPv6 para qualquer perfil aninhado de vários valores. Sempre configure valores para MinChildEndpointsIPv4 e MinChildEndpointsIPv6 com base no mecanismo de roteamento de vários valores e não use simplesmente os valores padrão.
O valor de MinChildEndpoints deve ser alto o suficiente para permitir que todos os tipos de ponto de extremidade fiquem disponíveis. Uma mensagem de erro é exibida para valores muito baixos.
Os exemplos a seguir ilustram como usar os perfis aninhados do Gerenciador de Tráfego em vários cenários.
Exemplo 1: combinando roteamento de tráfego de “Desempenho” e “Ponderado”
Suponha que você implantou um aplicativo nas seguintes regiões do Azure: Oeste dos EUA, Europa Ocidental e Leste da Ásia. Você usa o método de roteamento de tráfego por “Desempenho” do Gerenciador de Tráfego para distribuir o tráfego para a região mais próxima do usuário.
Agora, suponha que você deseja testar uma atualização ao serviço antes de distribuí-la mais amplamente. Você deseja usar o método de roteamento de tráfego “ponderado” para direcionar um pequeno percentual do tráfego para a implantação de teste. Você configura a implantação de teste junto com a implantação de produção existente na Europa Ocidental.
Não é possível combinar roteamentos de tráfego “Ponderado” e por “Desempenho” em um único perfil. Para dar suporte a esse cenário, você cria um perfil do Gerenciador de Tráfego usando os dois pontos de extremidade da Europa Ocidental e o método de roteamento de tráfego “Ponderado”. Em seguida, você adiciona esse perfil “filho” como um ponto de extremidade ao perfil “pai”. O perfil pai ainda usa o método de roteamento de tráfego por Desempenho e contém as outras implantações globais como pontos de extremidade.
O diagrama a seguir ilustra esse exemplo:
Nessa configuração, o tráfego direcionado por meio do perfil pai distribui o tráfego entre regiões normalmente. Na Europa Ocidental, o perfil aninhado distribui o tráfego para os pontos de extremidade de produção e de teste de acordo com os pesos atribuídos.
Quando o perfil pai usa o método de roteamento de tráfego por “Desempenho”, uma localização deve ser atribuída a cada ponto de extremidade. A localização é atribuída quando você configura o ponto de extremidade. Escolha a região do Azure mais próxima de sua implantação. As regiões do Azure são os valores de localização com suporte na Tabela de Latência da Internet. Para obter mais informações, consulte Método de roteamento de tráfego por “Desempenho” do Gerenciador de Tráfego.
Exemplo 2: monitoramento de ponto de extremidade em Perfis Aninhados
O Gerenciador de Tráfego monitora ativamente a integridade de cada ponto de extremidade de serviço. Se um ponto de extremidade não estiver íntegro, o Gerenciador de Tráfego direcionará os usuários para pontos de extremidade alternativos a fim de preservar a disponibilidade do serviço. Esse comportamento de failover e monitoramento do ponto de extremidade se aplica a todos os métodos de roteamento de tráfego. Para obter mais informações, consulte Monitoramento do Ponto de Extremidade do Gerenciador de Tráfego. O monitoramento de ponto de extremidade funciona de forma diferente para perfis aninhados. Com perfis aninhados, o perfil pai não executa verificações de integridade no filho diretamente. Em vez disso, a integridade dos pontos de extremidade do perfil filho é usada para calcular a integridade geral do perfil filho. Essas informações de integridade são propagadas até a hierarquia do perfil aninhado. O perfil pai usa essa integridade agregada para determinar se o tráfego será direcionado ao perfil filho. Consulte as Perguntas frequentes para obter detalhes completos sobre o monitoramento de integridade de perfis aninhados.
Voltando ao exemplo anterior, suponha que a implantação de produção na Europa Ocidental falhe. Por padrão, o perfil “filho” direciona todo o tráfego para a implantação de teste. Se a implantação de teste também falhar, o perfil pai determinará que o perfil filho não deve receber o tráfego, pois nenhum ponto de extremidade filho está íntegro. Em seguida, o perfil pai distribui o tráfego para as outras regiões.
Talvez você esteja satisfeito com essa organização. Ou você pode estar preocupado porque todo o tráfego para Europa Ocidental agora vai para a implantação de teste, em vez de um tráfego de subconjunto limitado. Independentemente da integridade da implantação de teste, você desejará executar failover para as outras regiões quando a implantação de produção na Europa Ocidental falhar.
No cenário abaixo, o valor de MinChildEndpoints é definido como 2. Abaixo desse limite, o perfil pai considera o perfil filho inteiro como indisponível e direciona o tráfego para os outros pontos de extremidade:
Observação
O método de roteamento de tráfego por “Prioridade” distribui todo o tráfego para um único ponto de extremidade. Portanto, não há muita utilidade em uma configuração de MinChildEndpoints diferente de “1” para um perfil filho.
Exemplo 3: regiões de failover priorizadas no roteamento de tráfego de "Desempenho"
O comportamento padrão do método de roteamento de tráfego 'Desempenho' é quando há pontos de extremidade em diferentes localizações geográficas em que os usuários finais são roteados para o ponto de extremidade "mais próximo" em termos de menor latência de rede.
No entanto, suponha que você prefere o failover de tráfego da Europa Ocidental para o Oeste dos EUA e direciona o tráfego para outras regiões somente quando os pontos de extremidade não estão disponíveis. Você pode criar essa solução usando um perfil filho com o método de roteamento de tráfego por “Prioridade”.
Como o ponto de extremidade da Europa Ocidental tem prioridade maior que o ponto de extremidade do Oeste dos EUA, todo o tráfego é enviado para o ponto de extremidade da Europa Ocidental quando os dois pontos de extremidade estão online. Se a Europa Ocidental falhar, seu tráfego será direcionado para o Oeste dos EUA. Com o perfil aninhado, o tráfego é direcionado para o Leste da Ásia somente quando há uma falha na Europa Ocidental e no Oeste dos EUA.
É possível repetir esse padrão para todas as regiões. Substitua os três pontos de extremidade no perfil pai por três perfis filho, cada um deles fornecendo uma sequência de failover priorizada.
Exemplo 4: controlando o roteamento de tráfego de “Desempenho” entre vários pontos de extremidade na mesma região
Suponha que o método de roteamento de tráfego por “Desempenho” é usado em um perfil que tem mais de um ponto de extremidade em determinada região. Por padrão, o tráfego direcionado para essa região é distribuído uniformemente entre todos os pontos de extremidade disponíveis nessa região.
Em vez de adicionar vários pontos de extremidade na Europa Ocidental, esses pontos de extremidade são fechados em um perfil filho separado. O perfil filho é adicionado ao pai como o único ponto de extremidade da Europa Ocidental. As configurações no perfil filho podem controlar a distribuição de tráfego com a Europa Ocidental, habilitando o roteamento de tráfego ponderado ou baseado em prioridade nessa região.
Exemplo 5: configurações de monitoramento por ponto de extremidade
Suponha que você está usando o Gerenciador de Tráfego para migrar diretamente o tráfego de um site local herdado para uma nova versão baseada em Nuvem hospedada no Azure. Para o site herdado, você deseja usar o URI da home page para monitorar a integridade do site. Mas para a nova versão baseada em Nuvem, você está implementando uma página personalizada de monitoramento (caminho “/monitor.aspx”) que inclui verificações adicionais.
As configurações de monitoramento em um perfil do Gerenciador de Tráfego se aplicam a todos os pontos de extremidade em um único perfil. Com perfis aninhados, você usa um perfil filho diferente por site para definir diferentes configurações de monitoramento.
Exemplo 6: monitoramento de ponto de extremidade com perfis aninhados de valores múltiplos usando pontos de extremidade IPv4 e IPv6
Suponha que você tenha pontos de extremidade filhos aninhados IPv4 e IPv6 e que deseja definir limites para filhos mínimos íntegros para ambos. Há novos parâmetros que permitirão definir o número mínimo desses pontos de extremidade íntegros esperados para cada tipo. Os parâmetros de pontos de extremidade IPv4 mínimos e pontos de extremidade IPv6 mínimos determinarão o número mínimo de pontos de extremidade íntegros necessários para cada parâmetro, para que o pai seja marcado como íntegro.
O número padrão para o total de pontos de extremidade filho mínimos é sempre 1, e o número padrão para pontos de extremidade IPv4 e IPv6 é 0 para garantir a compatibilidade com versões anteriores.
Neste exemplo, o ponto de extremidade Leste dos EUA não é íntegro, pois ele não atende ao requisito de ter pelo menos 1 ponto de extremidade IPv4 íntegro, que é definido pela propriedade ipv4-min-child.
Perguntas frequentes
Próximas etapas
Saiba mais sobre perfis do Gerenciador de Tráfego