HAProxy实现mysql负载均衡
安装
yum install haproxy
修改配置
vi /etc/haproxy/haproxy.cfg
配置如下
global
daemon
nbproc 1
pidfile /var/run/haproxy.pid
defaults
mode tcp #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
retries 3 #两次连接失败就认为是服务器不可用,也可以通过后面设置
option redispatch #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
option abortonclose #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
maxconn 4096 #默认的最大连接数
timeout connect 5000ms #连接超时
timeout client 30000ms #客户端超时
timeout server 30000ms #服务器超时
timeout check 2000 #=心跳检测超时
log 127.0.0.1 local0 err #[err warning info debug]
listen configMysql
bind 127.0.0.1:3306
mode tcp
maxconn 4086
server s1 192.168.75.128:3306
server s2 192.168.75.130:3306
启动
在解压目录下执行haproxy -f /etc/haproxy/haproxy.cfg
或者使用
/bin/systemctl start haproxy.service
查看状态
/bin/systemctl status haproxy.service
需要注意的点:
1、端口3306不能被占用,如果本机有mysql,服务必须关闭。
2、/var/run/haproxy.pid的目录权限给够,如果存在haproxy.pid在第一次启动前必选删除。
3、其他错误请参考博客http://blog.csdn.net/aa168b/article/details/50372649
HAProxy厉害的点,不需要写mysql的健康检测,软件本身可以检测出mysql服务停止,然后切换到正常的服务器上,而且当mysql服务器重启之后,HAProxy不需要重启,也能识别并且切换上去。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
· .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
· 本地部署 DeepSeek:小白也能轻松搞定!
· 如何给本地部署的DeepSeek投喂数据,让他更懂你
· 在缓慢中沉淀,在挑战中重生!2024个人总结!
· 大人,时代变了! 赶快把自有业务的本地AI“模型”训练起来!
· 从 Windows Forms 到微服务的经验教训