標籤:
簡單畫一個圖:
一、伺服器規劃192.168.116.132 (master) -->寫操作192.168.116.129 (slave1) -->讀操作192.168.116.131 (slave2) -->讀操作192.168.116.130 (haproxy) -->代理
mysql主從複製配置略過。
二、安裝配置haproxy安裝haproxy
tar zxf haproxy-1.4.21.tar.gzcd haproxy-1.4.21make TARGET=linux26 PREFIX=/app/haproxy make install PREFIX=/app/haproxymkdir /app/haproxy/{conf,log}
配置haproxy
vi /app/haproxy/conf/haproxy.cfg #添加如下內容global log 127.0.0.1 local3 info #日誌相關 log 127.0.0.1 local3 notice maxconn 10240 chroot /app/haproxy uid root gid root daemon pidfile /app/haproxy/log/haproxy.piddefaults #log global mode http #option httplog #option dontlognull option redispatch retries 3 option redispatch maxconn 4096 contimeout 50000 clitimeout 50000 srvtimeout 50000listen mysql-proxy bind 0.0.0.0:33307 #代理連接埠 mode tcp #模式 TCP option mysql-check user haproxy #mysql健全狀態檢查,haproxy使用者無任何許可權,並且無密碼 balance roundrobin #調度演算法 server mysql1-129 192.168.116.129:3306 weight 1 check inter 1s rise 2 fall 2 #健全狀態檢查加上check server mysql2-131 192.168.116.131:3306 weight 1 check inter 1s rise 2 fall 2listen stats #監控 mode http bind 0.0.0.0:19999 stats enable stats uri /dbs stats realm Global\ statistics stats auth admin:admin
啟動haproxy
/app/haproxy/sbin/haproxy -f /app/haproxy/conf/haproxy.cfg
開啟瀏覽器查看:http://192.168.116.130:19999/dbs使用者名稱及密碼:admin/admin
haproxy實現mysql slave負載平衡