Chegar ao hotel onde acontece a Conferência não é nada fácil, mas, após 18 horas de vôo, ônibus, trem e chuva, além de frio, foi possível chegar ao Hyatt Santa Clara Convention Center de maneira segura. Chegando aqui, o o lobby do hotel já contava com várias das figuras que movimentam o mundo do MySQL e também o pessoal da montagem e organização que deu duro para que tudo estivesse pronto para o evento dar início. Sem filas para registro no evento, tudo demostrando muita organização, tudo isso acompanhado de um belo café da manhã.
Logo após o café da manhã, o dia de tutorial iniciou com a instalação guiada de um Galera Cluster, iniciando com uma ambiente já em replicação contando com três máquinas rodando MySQL 5.6. O principal objetivo do tutorial foi explicar o Galera Cluster, que é também entregue pela Percona em sua distribuição chamada Percona XtraDB Cluster. Partindo de um ambiente que utiliza replicação baseada em logs binários ou mesmo em Transações Globais (GTID), tivemos como missão migrar este ambiente para o Galera com o menor downtime possível. O comportamento de uma aplicação foi simulado por uma combinação de opções bem interessantes executadas pela biblioteca de benchmark sysbench que pode ser iniciada em qualquer dos nós do cluster, considerando então as três máquinas virtuais como node01, node02 e node03.
Ambiente atual, considerando um esquema de simples replicação o qual tínhamos de migrar para o Galera Cluster:
Sobre o Galera Cluster deu para perceber que a solução é realmente muito robusta, apresentando de fato um diferencial em relação aos outros produto que prometem entregar alta-disponibilidade mantendo as principais características esperadas pelo banco de dados. O Galera na verdade é uma camada que se encontra acima do MySQL e pode ser vista ao mesmo tempo como um plugin, onde os dados são sincronizados entre os vários servidores MySQL participantes da topologia. Ao contrário do que é visto em outras arquiteturas de clusterização, o Galera permite que todas as máquinas participantes sejam alvo de leitura e escrita de dados, sendo estes replicados de forma síncrona. Sua manutenção se mostrou muito facilitada em nosso laboratório, onde um nó que tenha uma falha seja adicionado à topologia novamente e os dados sincronizados automaticamente através de técnicas conhecidas como IST (Incremental State Transfer) e SST (Snapshot State Transfer). Ambos os métodos utilizam uma suite de backup apontada em configuração.
O ambiente final que obtivemos ao fechamento do tutorial foi o seguinte:
Com base no diagram acima podemos perceber que o produto final do tutorial for a a migração de um ambiente de simples replicação, onde os dados podem ficar inconsistentes com o passer do tempo e também, inseguros devido à queda do master antes que todos os novos dados sejam replicados para o slave, para um ambiente reiliente, com muito mais tecnologia aplicada e alta-disponibilidade considerável. Durante o processo de migração de uma solução para a outra, utilizamos o Percona XtraDB Cluster que já possui o Galera Cluster pré-configurado, Xtrabackup com suite de backup, Keepalive e HAProxy para configuração do balanceamento de carga entre os nós 1, 2 e 3 e IPTables para setar as devidas permissões/portas necessárias para execução do cluster.
Quando os tutoriais acabaram, foi a hora de início da recepção que contou com vários stands onde Pythian, Google, Facebook, Oracle, ScaleBase, SeveralNines, Percona, MariaDB, Tokutek, ScaleArc, Codership, e várias outras empresas com produtos e serviços relacionados com MySQL se reuniram para exibir suas ofertas e distribuir seus brindes e suas marcas. Demonstrações ao vivo puderam ser vistas com a exibição do ClusterControl pela SeveralNines e a interface de de mapeamento de sharding de dados do produto da ScaleBase.
Eu sei, fiquei devendo o tutorial de instalação do Galera Cluster!! Estou elaborando isso com as ideais de antes e depois do treinamento que fiz ontem e em breve publicarei o mesmo aqui no iMasters. Continue acompanhando a MySQL User Conference, ainda teremos muito mais novidades.
Veja o programa de hoje, quarta-feira: http://www.percona.com/live/mysql-conference-2014/program
Acompanhe a cobertura aqui no iMasters e no meu Twitter @wagnerbianchijr