searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

从零开始搭建mysql(PXC)高可用docker集群(四)

2023-05-27 04:26:53
46
0

本节介绍pxc集群上层的负载均衡器haproxy的搭建流程

同样是docker部署

上上篇帖子介绍了haproxy的镜像拉取步骤:天翼云开发者社区 - 天翼云 (ctyun.cn)

还是以

192.168.1.11

192.168.1.12

192.168.1.13

三台机器为例

在三台机器均执行:

1、mkdir -p /data/haproxy/

2、编辑  vi /data/haproxy/haproxy.cfg 文件,输入以下配置

global                               
   log 127.0.0.1 local3 info         #在本机记录日志
   maxconn 30000                     #每个进程可用的最大连接数
   #chroot /usr/local/etc/haproxy         #haproxy 安装目录
   #uid 99                            #运行haproxy的用户uid(cat /etc/passwd 查看,这里是nobody的uid)
   #gid 99                            #运行haproxy的用户组id(cat /etc/passwd 查看,这里是nobody组id)
   daemon                            #以后台守护进程运行

defaults
   log global
   mode http                         #运行模式 tcp、 http、 health
   retries 3                         #三次连接失败,则判断服务不可用
   option redispatch                 #如果后端有服务器宕机,强制切换到正常服务器
   stats uri /haproxy                #统计页面 URL 路径
   stats refresh 30s                 #统计页面自动刷新时间
   stats realm haproxy-status        #统计页面输入密码框提示信息
   stats auth admin:dxInCtFianKtL]36   #统计页面用户名和密码
   stats hide-version                 #隐藏统计页面上 HAProxy 版本信息
   maxconn 30000                     #每个进程可用的最大连接数
   timeout connect 3600000              #连接超时
   timeout client 3600000              #客户端超时
   timeout server 3600000              #服务器端超时

listen proxy-mysql
   bind 0.0.0.0:3306
   mode tcp
   balance roundrobin
   option tcplog
   option mysql-check user haproxy
   server MYSQL_1 192.168.1.11:33060 check weight 1 maxconn 10000
   server MYSQL_2 192.168.1.12:33060 check weight 1 maxconn 10000 
   server MYSQL_3 192.168.1.13:33060 check weight 1 maxconn 10000 
   option tcpka

 

注:该配置文件设置了haproxy连接数最多可以有40960个,mysql连接每个可以有10000个,实际上应该是远远够用的。haproxy会将请求分发给三台mysql机器,如果不想分发,可以在 server 后面添加 backup 参数

3、启动容器

docker run -itd --restart=always -p 3306:3306 -e TZ="Asia/Shanghai" -v /data/haproxy/:/usr/local/etc/haproxy --name haproxy --privileged haproxy

4、查看haproxy日志

docker logs -f --tail=200 haproxy

日志不报错则部署haproxy完成,下一节我们介绍keepalived部署。

 

0条评论
0 / 1000