• 1. MySQL高可用架构探索周彦伟 2014.10基于PXC的
  • 2. 个人简介周彦伟去哪儿 去哪儿网数据库总监 MySQL 、Redis、Hbase、SQL Server、Oracle,中间层和源码开发 招人是必须的 中国MySQL用户组(CMUG) acmug.com 最纯粹的MySQL社区组织
  • 3. 从HA谈起QUNR Q2营收 4亿 51/s? 5000/sHA(可用水平) T(每年可中断时间)99.9999%< 1分钟99.999%< 5.3 分钟99.99%< 53 分钟99.9%< 8小时46分99%< 87小时36分
  • 4. HA最容易忽视的问题备份 冷备 热备 逻辑备份 物理备份 容灾备份 没有备份 HA = 0%
  • 5. MySQL HAMySQL replication M-S MMM MHA 异步复制和数据修复是软肋
  • 6. MySQL HADRBD (Distributed Replicated Block Device) 资源浪费 MySQL recovery,故障迁移时间成本高
  • 7. MySQL HAshared storage Redhat Cluster Suite 数据集唯一 对DBA来说维护复杂
  • 8. MySQL HAMySQL Proxy 官方版本性能低,多年不更新 Proxy本身是瓶颈 二次开发版本可堪一用,维护成本高
  • 9. MySQL HAMySQL Cluster share nothing 基于内存 维护成本高 复杂查询性能受限
  • 10. HA去哪儿?MMM http://mysql-mmm.org/
  • 11. Galera
  • 12. Galera
  • 13. Galera
  • 14. Galeramulti-master 准同步复制 行级并行复制 节点数据维护 SST & IST 自动节点管理 innodb & row statement
  • 15. Percona Xtradb Cluster(PXC)Percona出品 基于Percona Server 封装了Galera,更易用 社区活跃15
  • 16. 怎么访问DB?VIP(LVS,haproxy) MySQL-proxy API
  • 17. q-db-pool可配置连接池 可配置连接池参数 智能扩展连接数 自动平滑切换链接 读写分离 负载均衡 自动重连
  • 18. 配置和通知XML+ICE Zookeeper PXC+Zookeeper
  • 19. 故障检测ps aux|grep mysql nagios mmm-monitor mysql-sentinel?
  • 20. mysql-sentinel
  • 21. mysql-sentinel
  • 22. mysql-sentinel监控mysqld和galera信息 分布式选举 选举leader,并由leader通知zk 报警通知和配置切换API 交互式操作工具
  • 23. 最终的样子
  • 24. 注意事项Galera性能损失 避免多点写入 目前仅支持java 多个组件需要修改源码
  • 25. 招人不会结束(MySQL、Redis、Hbase、Java) zhouyanwei@gmail.com