Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Azure Virtual Machines fornece recursos de computação escaláveis e sob demanda. Como um serviço de infraestrutura fundamental, ele foi projetado para oferecer confiabilidade e disponibilidade de nível empresarial para cargas de trabalho de missão crítica.
Quando você usa o Azure, a confiabilidade é uma responsabilidade compartilhada. A Microsoft fornece uma variedade de recursos para oferecer suporte à resiliência e à recuperação. Você é responsável por entender como esses recursos funcionam em todos os serviços que você usa e selecionar os recursos necessários para atender aos seus objetivos de negócios e metas de tempo de atividade.
Este artigo descreve como tornar as Máquinas Virtuais resilientes a uma variedade de potenciais falhas e problemas, incluindo falhas transitórias, interrupções em zonas de disponibilidade, interrupções regionais e manutenção de serviços. Descreve também como pode usar backups para recuperar de outros tipos de problemas e destaca algumas informações chave sobre o acordo de nível de serviço (SLA) das Máquinas Virtuais.
Importante
Ao considerar a confiabilidade de uma máquina virtual (VM), você também precisa considerar a confiabilidade de seus discos, infraestrutura de rede e aplicativos executados em suas VMs. Melhorar a resiliência da VM por si só pode ter um impacto limitado se os outros componentes não forem igualmente resilientes. Dependendo dos seus requisitos de resiliência, talvez seja necessário fazer alterações de configuração em várias áreas.
Recomendações de implantação de produção
Para obter mais informações sobre como implantar VMs para dar suporte aos requisitos de confiabilidade da sua solução e como a confiabilidade afeta outros aspetos da sua arquitetura, consulte Práticas recomendadas de arquitetura para máquinas virtuais e conjuntos de dimensionamento no Azure Well-Architected Framework.
Visão geral da arquitetura de confiabilidade
As VMs são a unidade de computação fundamental no Azure, quer você provisione as VMs por conta própria ou use outros serviços de computação do Azure que as provisionam e gerenciam de forma transparente para você.
Uma VM individual também é conhecida como VM de instância única. Ele é executado em um host específico, que é um servidor físico. A maioria das VMs compartilha seu host com outras VMs.
Ao criar suas VMs, você pode influenciar onde elas são executadas na infraestrutura subjacente. Normalmente, você toma decisões de posicionamento com base em seus requisitos de confiabilidade, latência e isolamento. O Azure fornece várias opções de configuração que afetam a forma como as VMs são colocadas.
Região: Você pode selecionar em qual região do Azure sua VM deve ser executada. Uma região é uma área geográfica que pode conter vários datacenters, cada um com um grande número de hosts.
Zona de disponibilidade:As zonas de disponibilidade são grupos fisicamente separados de datacenters dentro de cada região do Azure. Em regiões que oferecem suporte a zonas de disponibilidade, você pode selecionar em qual zona a VM é executada. Para mais informações, veja Resiliência a falhas em zonas de disponibilidade.
Conjuntos de disponibilidade: Um conjunto de disponibilidade é um agrupamento lógico de VMs que permite ao Azure entender como seu aplicativo é criado para fornecer redundância e disponibilidade.
Quando você usa conjuntos de disponibilidade, o Azure distribui um grupo de VMs em diferentes domínios de falha. Essa distribuição minimiza o risco de falhas de hardware localizadas agrupando VMs que compartilham uma fonte de alimentação comum e um switch de rede.
Os conjuntos de disponibilidade também podem colocar VMs diferentes em domínios de atualização diferentes, o que controla como a plataforma Azure implementa atualizações de plataforma. Usando domínios de atualização, você pode garantir que apenas um subconjunto de suas VMs seja reiniciado para atualizações de uma só vez.
Grupos de colocação de proximidade: Para cargas de trabalho que precisam atingir a menor latência possível entre VMs, você pode usar um grupo de posicionamento de proximidade para garantir que o Azure coloque as VMs fisicamente próximas umas das outras. No entanto, o posicionamento de proximidade significa que uma interrupção do datacenter pode afetar todas as VMs do grupo. Para obter alta confiabilidade, talvez seja necessário provisionar vários grupos de posicionamento de proximidade em diferentes zonas de disponibilidade.
Anfitriões dedicados: Você pode usar o Host Dedicado do Azure para provisionar seu próprio servidor físico que executa uma ou mais VMs, como para requisitos de conformidade rigorosos. No entanto, quando você provisiona um host dedicado, uma interrupção em seu datacenter pode afetar todas as VMs nesse host. Para obter alta confiabilidade, talvez seja necessário provisionar vários hosts dedicados em diferentes zonas de disponibilidade.
Se você criar um conjunto de VMs que executam funções semelhantes, considere usar os Conjuntos de Dimensionamento de Máquina Virtual do Azure para criar e gerenciar as VMs como um grupo. Os conjuntos de dimensionamento também oferecem mais opções de confiabilidade, como distribuir as VMs por várias zonas de disponibilidade.
Para obter mais informações sobre disponibilidade para VMs, consulte Opções de disponibilidade para máquinas virtuais.
Resiliência a falhas transitórias
Falhas transitórias são falhas curtas e intermitentes em componentes. Eles ocorrem com frequência em um ambiente distribuído, como a nuvem, e são uma parte normal das operações. As falhas transitórias corrigem-se após um curto período de tempo. É importante que seus aplicativos possam lidar com falhas transitórias, geralmente tentando novamente as solicitações afetadas.
Todos os aplicativos hospedados na nuvem devem seguir as diretrizes de tratamento de falhas transitórias do Azure quando se comunicam com quaisquer APIs, bancos de dados e outros componentes hospedados na nuvem. Para obter mais informações, consulte Recomendações para o tratamento de falhas transitórias.
Os aplicativos executados em suas VMs devem implementar estratégias apropriadas de tratamento de falhas para garantir que quaisquer interrupções temporárias no serviço não afetem sua carga de trabalho.
Resiliência a falhas na zona de disponibilidade
As zonas de disponibilidade são grupos fisicamente separados de centros de dados dentro de uma região Azure. Quando uma zona falha, os serviços podem transferir-se automaticamente para uma das zonas restantes.
Uma VM individual pode ser implantada em uma configuração zonal , o que significa que ela é fixada a uma única zona de disponibilidade selecionada por você. Por si só, uma VM zonal não é resistente a interrupções de zona. No entanto, você pode criar várias VMs e colocá-las em diferentes zonas de disponibilidade e, em seguida, espalhar seus aplicativos e dados pelas instâncias da VM. Como alternativa, você pode usar conjuntos de dimensionamento de máquina virtual para implantar um conjunto de VMs em várias zonas de disponibilidade.
Se você não configurar uma VM para ser zonal, ela será considerada não zonal ou regional. As VMs não zonais podem ser colocadas em qualquer zona de disponibilidade dentro da região. Se qualquer zona de disponibilidade na região sofrer uma interrupção, as VMs não zonais podem estar na zona afetada e podem enfrentar tempo de inatividade.
Suporte de região
As VMs zonais podem ser implantadas em qualquer região que ofereça suporte a zonas de disponibilidade.
No entanto, alguns tipos e tamanhos de VM só estão disponíveis em regiões específicas ou zonas específicas dentro de uma região. Para verificar quais regiões e zonas oferecem suporte aos tipos de VM necessários, use os seguintes recursos:
Para verificar os tipos de VM disponíveis em cada região, consulte Produtos disponíveis por região.
Para verificar os tipos e tamanhos de VM suportados em cada zona de uma região específica, consulte Verificar a disponibilidade de SKU de VM.
Custo
Não há diferença de custo entre uma VM zonal e não zonal.
Configurar o suporte à zona de disponibilidade
Esta seção explica como configurar o suporte à zona de disponibilidade para sua instância de VM.
Observação
Quando você seleciona quais zonas de disponibilidade usar, na verdade está selecionando a zona de disponibilidade lógica. Se você implantar outros componentes de carga de trabalho em uma assinatura diferente do Azure, eles poderão usar um número de zona de disponibilidade lógica diferente para acessar a mesma zona de disponibilidade física. Para obter mais informações, consulte Zonas de disponibilidade física e lógica.
Crie uma VM zonal. Você pode criar uma VM zonal usando os seguintes guias:
Converta VMs existentes em uma configuração zonal. Você pode mover de uma VM não zonal para uma VM zonal. Esse processo cria uma nova VM na zona de disponibilidade de destino e requer que a VM seja interrompida durante o processo de movimentação. Para obter mais informações, consulte Mover VMs de instância única do Azure de zonas de disponibilidade regional para zonas de disponibilidade zonal de destino.
Altere a zona de disponibilidade de uma VM zonal existente. As VMs zonais não podem ser movidas para uma zona de disponibilidade diferente. Em vez disso, você precisa implantar uma nova VM zonal na zona de disponibilidade desejada.
Converter uma VM zonal em uma configuração não zonal. As VMs zonais não podem ser convertidas em uma configuração não zonal. Em vez disso, você precisa implantar uma nova VM não zonal.
Comportamento quando todas as zonas estão íntegras
Esta seção descreve o que esperar quando as instâncias de VM são configuradas com suporte à zona de disponibilidade e todas as zonas de disponibilidade estão operacionais.
Roteamento de tráfego entre zonas: Você é responsável por rotear o tráfego entre VMs, incluindo VMs que estão em zonas de disponibilidade diferentes. As abordagens comuns incluem o Azure Load Balancer e o Azure Application Gateway. Para obter mais informações, consulte Opções de balanceamento de carga.
Replicação de dados entre zonas: Você é responsável por qualquer replicação de dados que precise acontecer entre VMs, inclusive entre VMs em diferentes zonas de disponibilidade. Os bancos de dados e outros aplicativos com monitoração de estado semelhantes executados em VMs geralmente fornecem recursos para replicar dados.
Comportamento durante uma falha de zona
Esta seção descreve o que esperar quando as instâncias de VM são configuradas com suporte à zona de disponibilidade e há uma interrupção em suas zonas de disponibilidade.
Deteção e resposta: Você é responsável por detetar e responder a falhas de zona que afetam suas VMs.
Notificação: Use Azure Resource Health para detetar falhas de zona e ativar processos de failover.
Solicitações ativas: Quaisquer solicitações ativas ou outro trabalho que ocorra na VM durante a falha de zona provavelmente serão encerrados.
Perda de dados esperada: Os discos de VM zonais podem não estar disponíveis durante uma falha de zona.
Caso utilize discos ZRS (armazenamento com redundância de zona) e uma interrupção afetar a sua VM, tem a possibilidade de forçar a desanexação dos discos ZRS da VM que falhou. Essa abordagem permite anexar os discos ZRS a outra VM.
Tempo de inatividade esperado: As VMs permanecem inativas até que a zona de disponibilidade se recupere.
Reencaminhamento do tráfego: Você é responsável por redirecionar o tráfego para outras VMs em zonas íntegras.
Se você configurar um balanceador de carga resiliente a zona e ele executar verificações de integridade, o balanceador de carga normalmente detetará VMs com falha e poderá rotear o tráfego para outras instâncias de VM em zonas íntegras.
Recuperação de zona
Depois que a zona estiver íntegra, as VMs na zona serão reiniciadas. Você é responsável por todos os procedimentos de recuperação de zona e sincronização de dados que suas cargas de trabalho exigem.
Teste de falhas de zona
Você pode usar o Azure Chaos Studio para simular a perda de uma VM como parte de um experimento. O Chaos Studio fornece falhas internas para VMs, incluindo a capacidade de desligar uma VM. Você pode usar esses recursos para simular falhas no nível da zona e testar seus processos de failover.
Soluções personalizadas multi-zona para resiliência
Ao implantar várias VMs em zonas diferentes, você é responsável por configurar e gerenciar processos de replicação, balanceamento de carga, failover e failback.
Alguns aplicativos fornecem recursos internos que podem ajudar quando você implanta em várias VMs. Por exemplo, o SQL Server em VMs do Azure fornece um conjunto de recursos para simplificar seus processos de configuração e gerenciamento em zonas de disponibilidade.
Você pode considerar o uso da recuperação de desastres (DR) zona a zona do Azure Site Recovery quando seu aplicativo é executado em uma única zona de cada vez e você não precisa de failover quase instantâneo entre zonas. A DR de zona a zona tem algumas limitações importantes, por isso reveja cuidadosamente os seus requisitos.
Resiliência a falhas em toda a região
As VMs são recursos de região única. Se a região ficar indisponível, sua VM também ficará indisponível.
Soluções personalizadas de várias regiões para resiliência
Você pode implantar várias VMs em regiões diferentes, mas precisa implementar processos de replicação, balanceamento de carga e failover.
A Recuperação de Site é um serviço que habilita a DR replicando VMs e seus dados para uma região secundária. Você pode selecionar praticamente qualquer região do Azure como sua região secundária, incluindo combinações de regiões não emparelhadas. Para obter mais informações, consulte Arquitetura de DR do Azure para Azure.
Alguns aplicativos criam clusters ou outras construções para replicar dados e distribuir o trabalho entre várias VMs, inclusive em regiões diferentes. Esses aplicativos podem simplificar a configuração de uma solução multi-região.
Para obter um exemplo de arquitetura que ilustra o uso de VMs em várias regiões, consulte Balanceamento de carga de várias regiões com o Gerenciador de Tráfego do Azure, o Firewall do Azure e o Gateway de Aplicativos.
Resiliência à manutenção de serviços
O Azure realiza manutenção periódica regular em VMs para garantir a confiabilidade. Há várias maneiras de garantir que suas cargas de trabalho permaneçam operacionais durante as atividades de manutenção:
Ao usar conjuntos de disponibilidade ou conjuntos de dimensionamento de máquina virtual, você pode configurar domínios de atualização. Os domínios de atualização ajudam a distribuir atividades de manutenção entre VMs diferentes em momentos diferentes, para que as VMs não sejam todas reiniciadas simultaneamente.
Você pode personalizar o tempo em que a manutenção é aplicada às suas VMs usando o controle de manutenção. Você pode usar configurações de manutenção para programá-lo em um horário adequado à sua carga de trabalho.
Você pode receber notificações de atividades de manutenção futuras.
Para obter mais informações, consulte Visão geral de atualizações de convidado e manutenção de host.
Backup e restauração
As Máquinas Virtuais dão suporte nativo ao backup por meio do Backup do Azure. O Backup do Azure fornece uma solução nativa para proteger Máquinas Virtuais criando e gerenciando backups, com proteção consistente com o aplicativo para toda a VM, incluindo todos os discos conectados. Essa abordagem é ideal quando você precisa de backup coordenado de vários discos ou backups com reconhecimento de aplicativos. Para cargas de trabalho de banco de dados, considere soluções de backup específicas de aplicativos que forneçam proteção consistente com transações e opções de recuperação mais rápidas.
Você pode personalizar a frequência de backup, a duração da retenção e a configuração de armazenamento para atender às suas necessidades. Para obter mais informações, consulte Backup do Azure para VMs.
O backup também oferece suporte a discos conectados a VMs. Para obter mais informações, consulte Visão geral do Backup de Disco do Azure.
Contrato de nível de serviço
O contrato de nível de serviço (SLA) para serviços do Azure descreve a disponibilidade esperada de cada serviço e as condições que sua solução deve atender para atingir essa expectativa de disponibilidade. Para obter mais informações, consulte Acordos de Nível de Serviço (SLAs) para serviços online.
Para Máquinas Virtuais, o SLA fornece um nível base de disponibilidade. A porcentagem de tempo de atividade definida no SLA aumenta quando você tem duas ou mais VMs e executa as seguintes ações:
- Configure essas VMs para serem implantadas em duas ou mais zonas de disponibilidade.
- Configure essas VMs para serem implantadas em um conjunto de disponibilidade.
Para obter mais informações, consulte Acordos de Nível de Serviço (SLAs) para serviços online.