FAULT TOLERANCE WITH PROXYSQL, MRM AND CONSUL
ABOUT ME NARCÍS PILLAO Systems Engineer letgo.com | edreams.com | palominodb | emagister.com
BEHIND THE SCENES 75M Downloads | 200M listings | 3B chats in 2,5 years !
AGENDA • Motivations • Describe the components • Architecture • Demo • Q/A
MOTIVATIONS
MOTIVATIONS • Automatic and repeatable process to reduce downtime when the master goes down • Query digest • Filter unexpected queries as ORM nightmares • Auto scalable design thanks to Consul and Puppet • Choose open source and emerging solutions
DESCRIBING THE COMPONENTS
REPLICATION MANAGER (MRM) • Open source solution (MySQL, Percona and MariaDB) • Manual or automatic failover options • Topology: Master and many slaves (ignore server option) • Multiple MRM nodes managed by arbitrator • ProxySQL integration ( just released ) • GH: https://github.com/signal18/replication-manager
PROXYSQL • Query digest • Query filtering • Query rewrite • Query routing • Maintenance operations • https://github.com/sysown/proxysql
CONSUL • Service discovery tool • Maintenance action feature • Introduce new ProxySQL nodes via its DNS • Monitoring checks
ARCHITECTURE
Replication Manager
ARCHITECTURE
ProxySQL and Consul
ARCHITECTURE
DEMO https://github.com/narcisbcn/fault_tolerant_db
QUESTIONS?
THANK YOU ! Github: narcisbcn Twitter: @narcisbcn
Recommend
More recommend