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的利用更有优势

  • 相关阅读:
    网络安全协议(1)
    CG-CTF(6)
    CG-CTF(5)
    CG-CTF(4)
    CG-CTF(3)
    MAC地址欺骗(原理及实验)
    CG-CTF(2)
    CG-CTF(1)
    【转载】Spring Boot【快速入门】2019.05.19
    【编程大系】Java资源汇总
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/10476253.html
Copyright © 2011-2022 走看看