AWS

13 ago, 2014

Alta disponibilidade e redundância com RDS Multi-AZ

Publicidade

O Amazon RDS simplifica o processo para criar, executar e escalar o seu banco de dados MySQL, Oracle, PostgreSQL, ou Microsoft SQL Server para que você possa se ​​concentrar em seu aplicativo em vez de focar em tarefas complexas e demoradas de administração de banco de dados.

O Amazon RDS, quando utilizado com opção Multi-AZ, fornece maior disponibilidade e durabilidade para as suas instâncias de banco de dados, tornando-as ideais para ambientes de produção. Com a opção Multi-AZ habilidade, é criado automaticamente uma instância primária, e uma instância standby em uma Zona de Disponibilidade (AZ) diferente, e cada AZ roda em sua própria infra-estrutura fisicamente distinta, independente e é interligada por um link de baixa latência.

Em caso de uma falha de infra-estrutura (por exemplo, falha de hardware, armazenamento ou de rede), o Amazon RDS executa um failover automático para a instância standby, para que você possa retomar as operações de banco de dados assim que o failover completar (geralmente de 1 a 6 minutos). Como o DNS da sua instância RDS, a instância DB permanece a mesma depois de um failover. As operações de banco de dados de sua aplicação são retomadas automaticamente sem nenhuma, necessidade de intervenção manual.

O RDS Multi-AZ para o MySQL, Oracle e PostgreSQL utiliza a replicação física e síncrona para manter os dados da instância standby atualizados e idênticos aos dados da instância primária. Já o RDS Multi-AZ para Microsoft SQL Server utiliza replicação lógica e síncrona com o recurso nativo de Mirroring do Microsoft SQL Server para obter o mesmo resultado.

O serviço Amazon Relational Database Services (RDS), quando utilizado com a opção Single-AZ (no caso de uma falha de banco de dados), requer uma restauração manual backup point-in-time – e dependendo do tamanho do seu banco de dados, esta operação poderá levar várias horas para ser concluída, fazendo com que sua aplicação fique indisponível até que o processo esteja concluído.

Os benefícios de disponibilidade de implementações Multi-AZ também se aplicam às manutenções planejadas e aos backups. Ao contrário do RDS Single-AZ, apenas um aumento na latência poderá ser experienciado. Mas as atividades de I/O não serão suspensas na instância RDS primária, pois durante as operações de backup para instâncias RDS Multi-AZ utilizando MySQL, Oracle, PostgreSQL, o backup é feito a partir da instância standby. No caso de instalação de atualizações do sistema operacional ou do banco de dados, estas operações são aplicadas primeiramente na instância standby, e depois na instância primária. Sendo assim, o impacto na sua disponibilidade é limitado ao tempo necessário para a execução do processo de failover.

6a00d8341c534853ef01a3fd330607970b-500wi

Em quais casos ocorrerá um failover automático?

  • Falha na Zona Disponibilidade da instância primária;
  • Conexão de rede perdida com a instância primária;
  • Falha no CPU da instância primária;
  • Falha de armazenamento na instância primária.

É muito simples verificar se a sua instância RDS está em modo Multi-AZ. Acessando a listagem de instâncias RDS no console da AWS, localize a instância desejada e verifique a coluna “Multi-AZ”.

6a00d8341c534853ef01a511e2be33970c-800wi

Caso ela esteja marcada como “No”, sua instância RDS estará operando como Single-AZ. Para alterar a instância para o modo Multi-AZ, selecione a instância clicando na checkbox.

6a00d8341c534853ef01a3fd330652970b-800wi

Depois clique no botão Instance Action, e clique na opção Modify.

6a00d8341c534853ef01a3fd330660970b-800wi

Será exibido os detalhes da instância RDS selecionada. Localize a opção “Multi-AZ Deployment” e troque o valor de “No” para “Yes”.

6a00d8341c534853ef01a511e2bea2970c-750wi

Caso queira que as alterações sejam aplicadas imediatamente, marque a opção “Apply Immediately”, ou deixe desmarcado para que as alterações sejam aplicadas somente no horário da próxima janela de manutenção, e clique em “Continue”:

6a00d8341c534853ef01a511e2beac970c-800wi

Agora valide as alterações feitas, confirme que a opção “Multi-AZ Deployment” está como “Yes” e confirme a solicitação clicando em “Modify DB Instance”:

6a00d8341c534853ef01a3fd33069f970b-800wi

Agora é só aguardar alguns minutos enquanto o RDS realiza a alterações para que sua instância esteja pronta para ser utilizada com opção Multi-AZ.

6a00d8341c534853ef01a3fd3306b8970b-800wi

Quando o “Status” mudar para “Available”, sua instância já estará pronta para oferecer alta disponibilidade para a sua aplicação.

Para saber mais sobre o RDS, veja a página geral do produto, ou a página específica que fala sobre RDS Multi-AZ.