news 2026/5/11 12:17:07

【MyCat】第6章----HA 机制的 Mycat 高可用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【MyCat】第6章----HA 机制的 Mycat 高可用

文章目录

  • 6.1 高可用方案
  • 6.2 安装配置 HAProxy
    • 1、 安装 HAProxy
    • 2、 启动验证
  • 6.3 配置 Keepalived
    • 1、 安装 Keepalived
    • 2、 启动验证
  • 6.4 测试高可用
    • 1、 测试步骤

在实际项目中,Mycat 服务也需要考虑高可用性,如果 Mycat 所在服务器出现宕机,或 Mycat 服务故障,需要有备机提供服务,需要考虑 Mycat 集群

6.1 高可用方案

我们可以使用 HAProxy + Keepalived 配合两台 Mycat 搭起 Mycat 集群,实现高可用性。HAProxy实现了 MyCat 多节点的集群高可用和负载均衡,而 HAProxy 自身的高可用则可以通过 Keepalived 来实现

6.2 安装配置 HAProxy

1、 安装 HAProxy

#1准备好HAProxy安装包,传到/opt目录下 #2解压到/usr/local/src tar-zxvf haproxy-1.5.18.tar.gz-C/usr/local/src #3进入解压后的目录,查看内核版本,进行编译 cd/usr/local/src/haproxy-1.5.18uname-r make TARGET=linux310 PREFIX=/usr/local/haproxy ARCH=x86_64 # ARGET=linux310,内核版本,使用uname-r查看内核,如:3.10.0-514.el7,此时该参数就为linux310; #ARCH=x86_64,系统位数; #PREFIX=/usr/local/haprpxy #/usr/local/haprpxy,为haprpxy安装路径。 #4编译完成后,进行安装 make install PREFIX=/usr/local/haproxy #5安装完成后,创建目录、创建HAProxy配置文件 mkdir-p/usr/data/haproxy/vim/usr/local/haproxy/haproxy.conf #6向配置文件中插入以下配置信息,并保存 global log127.0.0.1local0 #log127.0.0.1local1 notice #log loghost local0 info maxconn4096chroot/usr/local/haproxy pidfile/usr/data/haproxy/haproxy.pid uid99gid99daemon #debug #quiet defaults log global mode tcp option abortonclose option redispatch retries3maxconn2000timeout connect5000timeout client50000timeout server50000listen proxy_status bind:48066mode tcp balance roundrobin server mycat_1192.168.140.128:8066check inter10s server mycat_2192.168.140.127:8066check inter10s frontend admin_stats bind:7777mode http stats enable option httplog maxconn10stats refresh30sstats uri/admin stats auth admin:123123stats hide-version stats adminifTRUE

2、 启动验证

#1启动HAProxy/usr/local/haproxy/sbin/haproxy-f/usr/local/haproxy/haproxy.conf #2查看HAProxy进程 ps-ef|grep haproxy #3打开浏览器访问 http://192.168.140.125:7777/admin #在弹出框输入用户名:admin密码:123123#如果Mycat主备机均已启动,则可以看到如下图

#4验证负载均衡,通过HAProxy访问Mycatmysql-umycat-p123456-h192.168.140.126-P48066

6.3 配置 Keepalived

1、 安装 Keepalived

#1准备好Keepalived安装包,传到/opt目录下 #2解压到/usr/local/src tar-zxvf keepalived-1.4.2.tar.gz-C/usr/local/src #3安装依赖插件 yum install-y gcc openssl-devel popt-devel #3进入解压后的目录,进行配置,进行编译 cd/usr/local/src/keepalived-1.4.2./configure--prefix=/usr/local/keepalived #4进行编译,完成后进行安装 make&&make install #5运行前配置 cp/usr/local/src/keepalived-1.4.2/keepalived/etc/init.d/keepalived/etc/init.d/mkdir/etc/keepalived cp/usr/local/keepalived/etc/keepalived/keepalived.conf/etc/keepalived/cp/usr/local/src/keepalived-1.4.2/keepalived/etc/sysconfig/keepalived/etc/sysconfig/cp/usr/local/keepalived/sbin/keepalived/usr/sbin/#6修改配置文件 vim/etc/keepalived/keepalived.conf
#修改内容如下!ConfigurationFileforkeepalived global_defs{notification_email{xlcocoon@foxmail.com}notification_email_from keepalived@showjoy.comsmtp_server127.0.0.1smtp_connect_timeout30router_id LVS_DEVEL vrrp_skip_check_adv_addr vrrp_garp_interval0vrrp_gna_interval0}vrrp_instance VI_1{#主机配MASTER,备机配BACKUP state MASTER #所在机器网卡interfaceens33 virtual_router_id51#数值越大优先级越高 priority100advert_int1authentication{auth_type PASS auth_pass1111}virtual_ipaddress{#虚拟IP192.168.140.200}}virtual_server192.168.140.20048066{delay_loop6lb_algo rr lb_kind NAT persistence_timeout50protocol TCP real_server192.168.140.12548066{weight1TCP_CHECK{connect_timeout3retry3delay_before_retry3}}real_server192.168.140.12648600{weight1TCP_CHECK{connect_timeout3nb_get_retry3delay_before_retry3}}}

2、 启动验证

#1启动Keepalivedservice keepalived start #2登录验证 mysql-umycat-p123456-h192.168.140.200-P48066

6.4 测试高可用

1、 测试步骤

#1关闭mycat #2通过虚拟ip查询数据 mysql-umycat-p123456-h192.168.140.200-P48066

如果文章对你有一点点帮助,欢迎【点赞、留言、+ 关注】
您的关注是我创作的动力!若有疑问/交流/需求,欢迎留言/私聊!
多一个朋友多一条路!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 9:12:19

【MyCat】第7章---- Mycat 安全设置

文章目录7.1 权限配置1、 user 标签权限控制7.2 SQL 拦截1、 白名单2、 黑名单7.1 权限配置 1、 user 标签权限控制 目前 Mycat 对于中间件的连接控制并没有做太复杂的控制,目前只做了中间件逻辑库级别的读写权限控制。是通过 server.xml 的 user 标签进行配置。 …

作者头像 李华
网站建设 2026/5/11 2:28:53

国产CAD仿真分析,把破坏性试验留在屏幕里

搞研发的都知道,样机试制是个烧钱的无底洞。以前做一个新产品,设计好了直接加工出来,然后上试验台去测。有时候测到一半,结构崩了,几万块钱的样机瞬间变成废铁。心疼不说,还得分析是哪里出了问题&#xff0…

作者头像 李华
网站建设 2026/5/5 9:19:39

深度解析:2026年专业级AI公文写作软件如何选?附权威榜单

面对种类繁多的公文文种、严格的格式规范与严谨的内容要求,广大党政机关、事业单位及央国企的办公人员常常需要投入大量时间与精力。2026年,AI技术已深度融入办公场景,智能公文写作软件凭借其高效、准确、规范的核心优势,成为提升组织运转效能的重要工具。面对市场上众多选择,如…

作者头像 李华
网站建设 2026/5/9 23:19:39

one_channel_hub 移植到CH584M MCU平台(移除WiFi/网络相关代码)

one_channel_hub 移植到CH584M MCU平台(移除WiFi/网络相关代码) 一、移植前准备 1. 核心背景 CH584M特性:沁恒微的低功耗MCU,基于RISC-V架构,内置BLE 5.0,无WiFi外设,需适配其裸机/轻量级RTOS开…

作者头像 李华
网站建设 2026/5/10 7:07:24

JDK版本的区别

在IDEA中新建Spring Boot项目时,需要选择JDK版本,这里小记一下: Oracle OpenJDK Oracle 官方维护的开源免费JDK,Java标准实现。 Amazon Corretto 亚马逊基于 OpenJDK 定制的免费、长期支持JDK。 JetBrains Runtime JetBrains&…

作者头像 李华