Criar soluções para alta disponibilidade usando zonas de disponibilidade

Azure

A infraestrutura global do Microsoft Azure é projetada e construída em cada camada para fornecer os mais altos níveis de redundância e resiliência aos seus clientes. A infraestrutura do Azure é composta por regiões, regiões e zonas de disponibilidade, que limitam o raio de explosão de uma falha e, portanto, limitam o impacto potencial aos aplicativos e dados do cliente. O constructo de zonas de disponibilidade do Azure foi desenvolvido para fornecer uma solução de software e rede para proteger contra falhas de datacenter e fornecer alta disponibilidade (HA) aos nossos clientes.

As zonas de disponibilidade são locais físicos exclusivos em uma região do Azure. Cada zona é composta de um ou mais datacenters equipados com energia, resfriamento e rede independentes. A separação física de zonas de disponibilidade em uma região limita o impacto a aplicativos e dados de falhas de zona, como inundações em larga escala, grandes tempestades e supertempestades, e outros eventos que poderiam interromper o acesso ao local, passagem segura, tempo de atividade estendido de utilitários e disponibilidade de recursos. As zonas de disponibilidade e seus datacenters associados são projetados de modo que, se uma zona estiver comprometida, os serviços, a capacidade e a disponibilidade têm suporte das outras zonas de disponibilidade na região.

As zonas de disponibilidade podem ser usadas para espalhar uma solução em várias zonas dentro de uma região, permitindo que um aplicativo continue funcionando quando uma zona falhar. Com zonas de disponibilidade, o Azure oferece ao setor o melhor contrato de nível de serviço de nível de serviço (VM) de 99,99% do setor. Os serviços com redundância de zona replicam seus serviços e dados entre zonas de disponibilidade para proteger contra pontos únicos de falha. Se você estiver projetando soluções altamente disponíveis no Azure que são essenciais por natureza, além de usar zonas de disponibilidade, a distribuição global em várias regiões do Azure é altamente recomendada.

Diagram showing Azure availability zones 1-3.

Para obter informações adicionais sobre zonas de disponibilidade, incluindo suporte de serviço por região e preços, consulte O que são zonas de disponibilidade no Azure?.

Arquiteturas de referência de zonas de disponibilidade

As arquiteturas a seguir apresentam cenários de alta disponibilidade:

Entregando confiabilidade no Azure

Projetar soluções que continuam funcionando apesar da falha é fundamental para melhorar a confiabilidade de uma solução. Em soluções baseadas em nuvem, criar para sobreviver à falha é uma responsabilidade compartilhada. Isso pode ser exibido em três níveis: uma base resiliente, serviços resilientes e aplicativos resilientes. A base é o investimento da Microsoft na plataforma, incluindo zonas de disponibilidade. Além dessa base, estão os serviços do Azure que os clientes podem habilitar para dar suporte à alta disponibilidade, como o ZRS (armazenamento com redundância de zona), que replica dados entre zonas. O cliente cria aplicativos sobre os serviços habilitados com suporte da fundação. Os aplicativos devem ser projetados para dar suporte à resiliência.


Seus aplicativos

Sua arquitetura de aplicativo ou carga de trabalho

Serviços resilientes

Funcionalidades do Azure habilitadas conforme necessário

Base resiliente

Recursos do Azure integrados à plataforma


Ao arquitetar resiliência, todas as três camadas-base, serviços e aplicativos devem ser considerados para alcançar o mais alto nível de confiabilidade. Como uma solução pode ser composta por muitos componentes, cada componente deve ser projetado para confiabilidade.

Arquitetura zonal vs. com redundância de zona

Uma Zona de Disponibilidade em uma região do Azure é uma combinação de um domínio de falha e um domínio de atualização. Por exemplo, se você criar três ou mais VMs em três zonas em uma região do Azure, as VMs serão efetivamente distribuídas em três domínios de falha e três domínios de atualização. A plataforma do Azure reconhece essa distribuição entre domínios de atualização para tomar cuidado para que as VMs em zonas diferentes não sejam atualizadas ao mesmo tempo.

Os serviços do Azure que dão suporte a zonas de disponibilidade se enquadram em duas categorias: zonal e redundância de zona. As cargas de trabalho do cliente podem ser categorizadas para utilizar um cenário de arquitetura para atender aos requisitos de desempenho e durabilidade do aplicativo.

Com a arquitetura zonal , um recurso pode ser implantado em uma Zona de Disponibilidade específica e auto-selecionada para obter requisitos de desempenho ou latência mais rigorosos. A resiliência é autoarquitetada ao replicar aplicativos e dados para uma ou mais zonas dentro da região. Você pode escolher zonas de disponibilidade específicas para replicação síncrona, fornecendo alta disponibilidade ou replicação assíncrona, fornecendo backup ou vantagem de custo. Você pode fixar recursos, por exemplo, máquinas virtuais, discos gerenciados ou endereços IP padrão em uma zona específica, permitindo maior resiliência por ter uma ou mais instâncias de recursos espalhadas entre zonas.

Com a arquitetura com redundância de zona , a plataforma do Azure replica automaticamente o recurso e os dados entre zonas. A Microsoft gerencia a entrega de alta disponibilidade, já que o Azure replica e distribui automaticamente as instâncias dentro da região.

Uma falha em uma zona afeta os serviços zonais e com redundância de zonas de forma diferente. No caso de uma falha de zona, os serviços zonais na zona com falha se tornam indisponíveis até que a zona seja recuperada. Ao arquitetar suas soluções para usar VMs replicadas em zonas, você pode proteger seus aplicativos e dados de uma zona se tornando indisponível, por exemplo, devido a uma interrupção de energia. Se uma zona for comprometida, os aplicativos e dados replicados estarão instantaneamente disponíveis em outra zona.

A arquitetura zonal se aplica a um recurso específico, normalmente um recurso de IaaS (infraestrutura como serviço), como uma VM ou um disco gerenciado, conforme ilustrado.

Diagram showing zonal architecture.

Por exemplo, balanceador de carga zonal, VM, discos gerenciados, conjuntos de dimensionamento de máquinas virtuais.

Na ilustração, cada VM e o LB (balanceador de carga) são implantados em uma zona específica.

Com os serviços com redundância de zona, a distribuição da carga de trabalho é um recurso do serviço e é manipulada pelo Azure. O Azure replica automaticamente o recurso entre as zonas sem exigir sua intervenção. Por exemplo, ZRS replica os dados entre três zonas para que uma falha de zona não afete a HA dos dados.

A ilustração a seguir é de um balanceador de carga com redundância de zona.

Diagram showing a zone-redundant load balancer.

Por exemplo, balanceador de carga com redundância de zona, Gateway de Aplicativo do Azure, Barramento de Serviço do Azure, VPN (rede virtual privada), armazenamento com redundância de zona, Azure ExpressRoute, Hubs de Eventos do Azure, Azure Cosmos DB.

Alguns recursos, como o balanceador de carga e sub-redes, dão suporte a implantações zonais e com redundância de zona. Uma consideração importante na HA é distribuir o tráfego efetivamente entre recursos nas diferentes zonas de disponibilidade. Para obter informações sobre como as zonas de disponibilidade se aplicam aos recursos do balanceador de carga para recursos com redundância de zona e zona, consulte Standard Load Balancer e zonas de disponibilidade.

Para obter uma lista de serviços do Azure que dão suporte a zonas de disponibilidade, consulte a documentação de zonas de disponibilidade.

SLA oferecido por zonas de disponibilidade

Com zonas de disponibilidade, o Azure oferece ao setor o melhor SLA de tempo de atividade de VM de 99,99%. O SLA completo do Azure explica a disponibilidade garantida do Azure como um todo.

O diagrama a seguir ilustra os diferentes níveis de HA oferecidos por uma única VM, Conjuntos de Disponibilidade e zonas de disponibilidade.

Diagram showing levels of HA that are offered by a single VM, Availability Sets, and availability zones.

Usando uma carga de trabalho de VM como exemplo, uma única VM tem um SLA de 99,9%. Isso significa que a VM estará disponível 99,9% do tempo. Em um único datacenter, o uso de conjuntos de disponibilidade pode aumentar o nível de SLA para 99,95%, protegendo um conjunto de VMs, garantindo que elas não estarão no mesmo hardware. Em uma região, as cargas de trabalho de VM podem ser distribuídas entre zonas de disponibilidade para aumentar o SLA para 99,99%. Para obter mais informações, consulte as opções de disponibilidade para VMs no Azure.

Cada organização tem requisitos exclusivos e você deve projetar seus aplicativos para atender melhor às suas necessidades de negócios complexas. Definir um SLA de destino possibilita avaliar se a arquitetura atende aos seus requisitos de negócios. Alguns aspectos a serem considerados incluem:

  • Quais são os requisitos de disponibilidade?

  • Quanto tempo de inatividade é aceitável?

  • Quanto o tempo de inatividade em potencial custará para sua empresa?

  • Quanto você deve investir para tornar o aplicativo altamente disponível?

  • Quais são os requisitos de backup de dados?

  • Quais são os requisitos de replicação de dados?

  • Quais são os requisitos de monitoramento?

  • Seu aplicativo tem requisitos de latência específicos?

Para obter diretrizes adicionais, consulte Princípios do pilar de confiabilidade.

Dependendo das necessidades de disponibilidade de um aplicativo, a complexidade de custo e design variará. Ao criar uma carga de trabalho de VM, haverá um custo associado a cada VM. Por exemplo, duas VMs por zona em três zonas ativas terão um custo para seis VMs. Para obter preços de cargas de trabalho de VM, consulte a calculadora de preços do Azure.

Próximas etapas