zoukankan      html  css  js  c++  java
  • proxysql 系列 ~ 高可用架构

    一 整体架构
    二 proxysql层
        proxysql+keepalived对外提供vip
        1  这里有一点要注意,虽然keepalived有脑裂危险,但是对于向proxysql这种无状态中间件确实没什么影响

        2  需要维护至少两份配置文件,保证每个节点的配置文件都唯一
    三 mysql层
         mysql+mha做故障转移
    四 proxysql故障转移原理
        0 定义好mysql集群写服务器组合读服务器组的对应关系
        1 proxysql监控读mysql的read_only值
        2 如果发现从库的 read_only 变为0、主库变为1,则认为角色互换了,自动改写 mysql_servers 表里面 hostgroup 关系,达到自动 Failover 效果。
    五 优势
       1 MHA不再需要VIP,避免脑裂风险
       2 proxysql动态维护mysql_server表
    六 整体过程
       1 主库down机,触发MHA切换
       2 MHA切换完成,新主会设置成read_only=0
       3 proxysql监控到read_only=0,动态更改mysql_servers(更改原主和新主的hostgroup_id)
       4 集群继续提供服务
       5 修复旧主
              1 以只读方式启动旧主
               2 根据MHA日志修复旧主(如果是GTID复制,直接change即可)
        6 proxysql可以动态调整权重,减少主库读比例
    六 注意点
       1 当MHA切换后,旧主启动前一定要设置read_only=1,否则会导致旧主也被proxysql认为主,加入写组中。
       2 当MHA切换后,最好还是调整下权重比例,不会动态进行维护
    七 补充
      1 cetus和proxysql对比,cetus对于MHA的利用更有优势

  • 相关阅读:
    Java基础16(Java8的其它新特性)
    Java基础15(反射机制)
    Java基础14(网络编程)
    tensorflow.keras
    递归算法
    tensorfolw学习笔记——张量、微分、自定义训练、keras
    python可变长参数、key-only参数之收集和解包参数
    20200909- 集群迁移记录
    20200909--记一次发布流程
    20200909----开发沟通提效记录
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/10476253.html
Copyright © 2011-2022 走看看