news 2026/6/10 10:29:12

【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/6/7 22:47:07

【计算机毕业设计案例】基于springboot的个人健康管理系统基于springboot个人健康档案管理系统(程序+文档+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/6/3 9:05:45

【Docker】解决Docker容器时间与宿主机时间不一致的几种方法

一、介绍 由于Docker容器内的时间默认是 UTC 世界标准时间,而宿主机时间为 CST 中国标准时间(东八区,Asia/Shanghai),时间相差8小时,根本原因是时区问题。因此,需要为Docker容器配置正确的时区&…

作者头像 李华
网站建设 2026/6/5 18:13:58

直播美颜SDK怎么选?从人脸美型效果、性能与成本全面分析

在直播行业卷到“美颜都快成标配”的今天,不管你是做直播平台、社交产品,还是短视频、电商直播,选对一款直播美颜SDK,往往直接影响用户留存率和产品口碑。 问题是: 市面上的直播美颜SDK这么多,看起来功能都…

作者头像 李华
网站建设 2026/6/10 6:26:31

嵌入式系统设计师软考个人笔记<3>

1.1 嵌入式系统电源管理1.1.1 电源系统基础定义:为嵌入式设备提供稳定、合规直流电能的子系统,通常将交流市电或电池电源转换为系统所需的直流电压等级。供电类型:市电供电:通过AC-DC转换模块(如开关电源)提…

作者头像 李华
网站建设 2026/6/10 10:24:39

解码内部集成电路(IIC)与OLED屏

内部集成电路(IIC/I2C) 基本概念 英文全称Inter Integrated Circuit,简称IIC或I2C,是半双工同步串行通信接口协议1982年由飞利浦公司(现恩智浦半导体)设计推出设计初衷:为微控制器(…

作者头像 李华
网站建设 2026/6/10 10:26:21

稳定细胞系构建 | 稳定株开发服务 | 高表达克隆筛选

稳定细胞系构建是细胞生物学、分子生物学和蛋白质工程等众多科研领域中广泛采用的一项基础技术。所谓稳定细胞系,是指通过遗传整合外源基因的方式,使细胞在长期传代过程中持续稳定表达目标蛋白(或其它功能元件)的细胞系。这类细胞…

作者头像 李华