Docker 搭建pxc集群 + haproxy + keepalived 高可用(二)
生活随笔
收集整理的這篇文章主要介紹了
Docker 搭建pxc集群 + haproxy + keepalived 高可用(二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
上一節我們有了兩個分片的pxc集群,這一節我們接著安裝haproxy和keepalived的實現集群的高可用
一、先下載haproxy的鏡像
[root@localhost ~]# docker pull haproxy二、在host主機上寫好配置文件,啟動容器時候讀取haproxy.cfg,vim /usr/local/docker/haproxy/haproxy.cfg
global#工作目錄chroot /usr/local/etc/haproxy#日志文件,使用rsyslog服務中local5日志設備(/var/log/local5),等級infolog 127.0.0.1 local5 info#守護進程運行daemon defaultslog globalmode http#日志格式option httplog#日志中不記錄負載均衡的心跳檢測記錄option dontlognull#連接超時(毫秒)timeout connect 5000#客戶端超時(毫秒)timeout client 50000#服務器超時(毫秒)timeout server 50000 #監控界面 listen admin_stats#監控界面的訪問的IP和端口bind 0.0.0.0:8888#訪問協議mode http#URI相對地址stats uri /dbs#統計報告格式stats realm Global\ statistics#登陸帳戶信息stats auth admin:haproxy #數據庫負載均衡 listen proxy-mysql#訪問的IP和端口bind 0.0.0.0:3306#網絡協議mode tcp#負載均衡算法(輪詢算法)#輪詢算法:roundrobin#權重算法:static-rr#最少連接算法:leastconn#請求源IP算法:sourcebalance roundrobin#日志格式option tcplog#在MySQL中創建一個沒有權限的haproxy用戶,密碼為空。Haproxy使用這個賬戶對MySQL數據庫心跳檢測option mysql-check user haproxyserver MySQL_1 172.18.0.2:3306 check weight 1 maxconn 2000server MySQL_2 172.18.0.3:3306 check weight 1 maxconn 2000server MySQL_3 172.18.0.4:3306 check weight 1 maxconn 2000#使用keepalive檢測死鏈option tcpka三、在pxc集群里面先創建haproxy用戶并授予權限
mysql> create user 'haproxy'@'%' identified by '';四、啟動第一個haproxy容器
[root@localhost haproxy]# docker run -it -d -p 4001:8888 -p 4002:3306 -v /usr/local/docker/haproxy:/usr/local/etc/haproxy --name h1 --privileged --net=pxc_network --ip 172.18.0.10 haproxy啟動haproxy
docker exec -it h1 bashhaproxy -f /usr/local/etc/haproxy/haproxy.cfg先設置配置文件,vim /usr/local/docker/haproxy2/haproxy.cfg,當然你也可以設置其他的目錄來存放第二個haproxy的配置文件
global#工作目錄chroot /usr/local/etc/haproxy#日志文件,使用rsyslog服務中local5日志設備(/var/log/local5),等級infolog 127.0.0.1 local5 info#守護進程運行daemon defaultslog globalmode http#日志格式option httplog#日志中不記錄負載均衡的心跳檢測記錄option dontlognull#連接超時(毫秒)timeout connect 5000#客戶端超時(毫秒)timeout client 50000#服務器超時(毫秒)timeout server 50000 #監控界面 listen admin_stats#監控界面的訪問的IP和端口bind 0.0.0.0:8888#訪問協議mode http#URI相對地址stats uri /dbs#統計報告格式stats realm Global\ statistics#登陸帳戶信息stats auth admin:haproxy #數據庫負載均衡 listen proxy-mysql#訪問的IP和端口bind 0.0.0.0:3306#網絡協議mode tcp#負載均衡算法(輪詢算法)#輪詢算法:roundrobin#權重算法:static-rr#最少連接算法:leastconn#請求源IP算法:sourcebalance roundrobin#日志格式option tcplog#在MySQL中創建一個沒有權限的haproxy用戶,密碼為空。Haproxy使用這個賬戶對MySQL數據庫心跳檢測option mysql-check user haproxyserver MySQL_1 172.18.0.5:3306 check weight 1 maxconn 2000server MySQL_2 172.18.0.6:3306 check weight 1 maxconn 2000server MySQL_3 172.18.0.7:3306 check weight 1 maxconn 2000#使用keepalive檢測死鏈option tcpka接著我們啟動第二個haproxy容器
[root@localhost haproxy]# docker run -it -d -p 4003:8888 -p 4004:3306 -v /usr/local/docker/haproxy2:/usr/local/etc/haproxy --name h2 --privileged --net=pxc_network --ip 172.18.0.20 haproxy啟動haproxy
docker exec -it h1 bashhaproxy -f /usr/local/etc/haproxy/haproxy.cfg? 五、集群的監控界面,http://192.168.1.19:4001/dbs
?
轉載于:https://www.cnblogs.com/liangyuntao-ts/p/10668273.html
總結
以上是生活随笔為你收集整理的Docker 搭建pxc集群 + haproxy + keepalived 高可用(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑显示器尺寸选购指导(显示器尺寸对照表
- 下一篇: JVM内存管理(一)--GC简介