A partir da versão de manutenção trimestral de setembro de 2019, a arquitetura de um pod do Horizon Cloud no Microsoft Azure oferece suporte à alta disponibilidade para o pod. Novos pods implantados pelo implantador de pod após a versão de manutenção de setembro de 2019 e os pods mais antigos atualizados para as versões 1600 ou posteriores do manifesto terão essa arquitetura mais recente do pod. Essa arquitetura de pod inclui um recurso de servidor do Banco de Dados do Microsoft Azure para PostgreSQL, um balanceador de carga do Microsoft Azure e um conjunto de disponibilidade do Microsoft Azure. Quando a alta disponibilidade está ativada em um pod dessa arquitetura, uma VM de gerenciador de pods extra é adicionada ao pod, para um total de duas VMs de gerenciador de pods, conectadas ao balanceador de carga do Microsoft Azure. Essa configuração permite que o pod continue a operar mesmo se uma VM do gerenciador tiver um problema. Se uma VM do gerenciador for desativada, todo o tráfego será encaminhado automaticamente para a outra VM do gerente sem intervenção manual.

Para novos pods, você pode implantar o pod com a alta disponibilidade habilitada desde o início ou implantar o pod com a alta disponibilidade desativada e ativá-la mais tarde. Para os pods existentes atualizados para um manifesto de pod que obtém essa arquitetura de pod mais recente, o processo de atualização não habilita automaticamente a alta disponibilidade no pod. Você poderá habilitar a alta disponibilidade em um pod atualizado depois que ambos os itens estiverem em vigor:

  • O processo de atualização do pod é concluído nesse pod
  • Os agentes são atualizados em todas as VMs de imagem existentes do pod, VMs compatíveis com RDSH de farm e VMs de área de trabalho VDI para a versão do agente compatível com o pod atualizado.

A página de detalhes do pod indica se a alta disponibilidade está habilitada ou desabilitada para esse pod. Para as etapas sobre a habilitação da alta disponibilidade em um pod no qual ela está desabilitada, consulte Ativar a alta disponibilidade em um pod do Horizon Cloud no Microsoft Azure.

Design de alta disponibilidade para um pod no Microsoft Azure

Além de ter duas VMs de gerenciador de pods, o pod também tem um recurso de balanceador de carga do Microsoft Azure, um conjunto de disponibilidade do Microsoft Azure e um recurso de servidor do Banco de Dados do Azure para PostgreSQL. Esse design proporcionará resiliência geral de pod e failover se uma das VMs de gerenciador de pods tiver um problema ou for desativada.

Importante: Um pod criado no nível de versão de setembro de 2019 é sempre implantado com um recurso de servidor do Banco de Dados do Microsoft Azure para PostgreSQL, o balanceador de carga do Microsoft Azure e o conjunto de disponibilidade. Mesmo quando você desativa a opção de Alta Disponibilidade no assistente de implantação de pod, o pod resultante tem os elementos da arquitetura do novo pod. Além disso, um pod criado em uma versão anterior e depois atualizado para o nível da versão de setembro de 2019 também resulta em um pod com esse novo design: o recurso de servidor do Banco de Dados do Azure para PostgreSQL, o balanceador de carga do Microsoft Azure e um conjunto de disponibilidade, ainda que a alta disponibilidade não seja ativada automaticamente no processo de atualização. A padronização desse design de pod para todos os pods com as versões de manifesto 1600 ou posteriores permite a fácil habilitação da alta disponibilidade em um pod já implantado. A segunda VM do gerenciador de pods é implantada apenas quando o recurso de alta disponibilidade está ativado no pod.

Esses recursos residem no grupo de recursos do pod, e você pode visualizar seus detalhes na sua assinatura ao fazer login no portal do Microsoft Azure. Para obter informações sobre como identificar os grupos de recursos do pod, consulte Grupos de recursos criados para um pod implantado no Microsoft Azure.

Conjunto de disponibilidade do Microsoft Azure
Conforme descrito na documentação do Microsoft Azure, uma combinação de um balanceador de carga do Microsoft Azure com conjuntos de disponibilidade fornece a maior resiliência de aplicativos. Um conjunto de disponibilidade ou zona de disponibilidade (como às vezes é chamada na documentação do Microsoft Azure) em cada região do Microsoft Azure é uma combinação de um domínio de falha e um domínio de atualização. Usando um conjunto de disponibilidade, cada uma das VMs de gerenciador do pod é implantada em um hardware físico separado no mesmo centro de dados do Microsoft Azure. O conjunto de disponibilidade impõe que as VMs de gerenciador residam em um hardware físico separado. Essa separação de hardwares de back-end minimiza a probabilidade de ambas as VMs de gerenciador passarem por um tempo de inatividade ao mesmo tempo. Somente se o centro de dados do Microsoft Azure inteiro fosse desativado é que ambas as VMs de gerenciador seriam afetadas.
Balanceador de carga do Microsoft Azure
O recurso do balanceador de carga implantado está conectado à sub-rede do tenant do pod. Esse balanceador de carga é usado para rotear o tráfego para as VMs de gerenciador do pod de acordo com as regras e o teste de integridade configurados pelo implantador de pod. As VMs de gerenciador são adicionadas a esse pool de back-ends do balanceador de carga. Uma VM de gerenciador assume a função do agente ativo para as conexões de cliente do usuário final para as áreas de trabalho e os aplicativos provisionados pelo pod. O balanceador de carga determina a afinidade do agente com base nas regras definidas e no teste de integridade das VMs de gerenciador no pool de back-ends. Com base na afinidade de agente determinada, o balanceador de carga roteia todo o tráfego do agente diretamente para a VM de gerenciador que é o agente ativo até que ocorra um failover. Em seguida, a outra VM de gerenciador se torna o agente ativo e o balanceador de carga roteia as solicitações de agente para essa VM. Quando ocorre o failover, uma notificação é enviada ao console administrativo para informar você sobre essa alteração na qual a VM de gerenciador é o agente ativo.

O balanceador de carga do pod fica entre as solicitações de conexão de cliente de usuário final e as VMs de gerenciador do pod. Quando o pod está configurado com uma configuração de gateway, o tráfego das instâncias do Unified Access Gateway roteia para o balanceador de carga do Microsoft Azure do pod. Esse balanceador de carga do Azure roteia esse tráfego para a VM do gerenciador que é o intermediador ativo. Quando o pod não tiver nenhuma configuração de gateway, e você tiver configurado o pod para conexões diretas, como via VPN, as conexões do cliente de usuário final vão para o balanceador de carga do Microsoft Azure do pod, que por sua vez roteia o tráfego para a VM de gerenciador que é o intermediador ativo.

Banco de Dados do Azure para PostgreSQ — Servidor único
O pod tem um servidor do Banco de Dados do Azure para PostgreSQL que usa a opção de implantação de servidor único. O uso desse servidor proporciona a centralização de dados necessária para operações de pod e elimina a necessidade de usar a replicação de dados nas VMs de gerenciador. Na versão atual, a seguinte configuração é usada:
  • Versão 10 do PostgreSQL
  • Memória Otimizada
  • Geração de processamento: Gen 5
  • vCores: 2
  • Armazenamento: 10 GB
  • Crescimento automático: não
  • Armazenamento de Backup: localmente redundante
Consulte a documentação da Microsoft para obter informações sobre a configuração de Memória Otimizada:

Impacto de custos na sua assinatura do Microsoft Azure para pods criados nesta versão ou atualizados para ela

Os elementos necessários para oferecer suporte à alta disponibilidade nesta versão têm algumas implicações de custo em sua assinatura do Microsoft Azure. Todos os pods criados já nesta versão e os pods atualizados para ela gerarão um custo para o servidor gerenciado do Banco de Dados do Microsoft Azure para PostgreSQL. Um pod ativado com alta disponibilidade também gera um custo para a execução da VM de gerenciador adicional. A partir do presente documento, não há custos para o uso do conjunto de disponibilidade ou balanceador de carga do Azure implantados para todos os pods criados nesta versão ou atualizados para ela.

Para obter estimativas de preços do Banco de Dados do Microsoft Azure para a configuração PostgreSQL descrita acima que é usada na versão atual, consulte https://azure.microsoft.com/en-us/pricing/details/postgresql/server/.