Alta disponibilidade com MySQL – Parte 3

postado em: Tutoriais | Comments

Este é o último dos 3 posts relacionados a alta disponibilidade com MySQL. Este artigo será um pouco diferente dos outros, não entraremos no “técniques da coisa”, mas sim na utilização de empresas e ferramentas que possuem um custo baixo e uma implementação rápida. Se você não leu os posts anteriores – “Alta disponibilidade com MySQL – Parte 1” e “Alta disponibilidade com MySQL – Parte 2” – eu indico a leitura.

Com o MySQL configurado para replicar as informações, agora nós podemos configurar a questão de HA, assim se um servidor ficar indisponível, nossas conexões serão mandadas para o outro servidor.

 

DNS Failover

A técnica com DNS Failover consiste em ter uma entrada DNS (mysql.mysqlbox.com.br) e dois IPs vinculados. Quando o serviço de health check ver que o seu MySQL parou de se comunicar, o DNS server fará a troca do IP desta entrada, colocando o IP do servidor que está no ar e acessível. Para fazer uma estrutura destas você precisa ter conhecimentos sólidos em DNS e HA, sem falar que os custos para manter uma estrutura assim, será bem maior, mas existe uma solução! Você pode utilizar o serviço da Amazon, o Route 53.

mysqldnsfailover

Amazon Route 53 possibilita que você gerencie o tráfego globalmente por meio de diversos tipos de roteamento, incluindo Latency Based Routing, Geo DNS e Weighted Round Robin, que podem ser todos combinados com o fail-
over de DNS para viabilizar diversas arquiteturas de baixa latência e tolerantes a falhas.
Fonte: Amazon

O bacana de utilizar esta técnica é que você não tem um ponto de falha no seu sistema, pois, caso ocorra alguma falha no DNS, o próprio serviço em si possui HA, então você teria apenas o tempo de troca do IP e propagação, que seria algo entre 1 e 2 minutos.

Empresas com HA MySQL

Uma empresa muito legal e que vende MySQL altamente disponível é a Umbler. Mesmo com o plano mais básico deles, vocês já tem um banco de dados altamente disponível e sem se preocupar com segurança, configuração de servidor, manutenção, etc…

mysqlha

Outra empresa muito legal que trabalha com MySQL é a ClearDB. Possuem diversos planos, desde os free igual a Umbler, até os planos mais caros que custam mais do que $ 2,000. É uma empresa que é fora do país e talvez a latência seja um problema.mysqlhaempresa

O motivo de eu ter focado este artigo mais na questão de utilização na prestação de serviços, é bem simples. Hoje, se vocês forem fazer uma estrutura que estas empresas disponibilizam para você, o seu custo será alto. Não esqueçam que precisariam pagar estrutura, banda, profissionais qualificados, monitoramento, etc… O uso destas empresas diminui o tempo de implementação e o custo. Claro que ter o seu próprio sistema, ter controle total é muito bacana, mas em época de crise, o tempo e o dinheiro são coisas que devem ser poupadas e muito bem planejadas.

Allan Moraes

Allan Moraes é gaúcho e entusiasta open source. Trabalha em uma Startup com foco em Plataforma como Serviço (PaaS), é especialista em MySQL, High Availability e High Scalability Architecture.