1. 程式人生 > >haproxy實現mysql的slave的負載均衡(4)

haproxy實現mysql的slave的負載均衡(4)

1.準備好4臺機器

192.168.100.193  master

192.168.100.194  slave

192.168.100.195  slave

192.168.100.196  haproxy

主從已經搭建好,可以參考 上一個文件 主從複製

mysql全部使用預設埠  3306

2.建立一個test使用者  並授權

在主節點執行下面兩條sql就可以

create user ‘test’ @’192.168.100.%’ identified by ‘test’

grant  all  on *.* to ‘test’ @’192.168.100.%’

3.下載haproxy  

用  haproxy-1.7.11.tar.gz

下載地址:https://download.csdn.net/download/a375015762/10386539

tar -zxvf haproxy-1.7.11.tar.gz

4.安裝

檢視liunx的系統 版本 cat /proc/version


tar -zxvf haproxy-1.7.11.tar.gz

cd /home/soft/haproxy-1.7.11 執行:

make TARGET=linux26

make install PREFIX=/usr/local/haproxy         // PREFIX  指定安裝的路徑



/usr/local/haproxy建立一個 mkdir logs

/usr/local/haproxy建立一個 mkdir conf

/usr/local/haproxy/conf  建立  touch haproxy.cnf

/usr/local/haproxy/conf   建立 echo 1 > haproxy.pid


haproxy.cnf的類容:

global
        daemon # 後臺方式執行
        nbproc 1
        pidfile /usr/local/haproxy/conf/haproxy.pid
defaults
        mode tcp #預設的模式mode { tcp|http|health },tcp 是4 層,http 是7 層,health 只會返回OK
        retries 2 #兩次連線失敗就認為是伺服器不可用,也可以通過後面設定
        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]
##balance source
########test1 配置#################
listen test1 #這裡是配置負載均衡,test1 是名字,可以任意
        bind 0.0.0.0:3306 #這裡是監聽的IP 地址和埠,埠號可以在0-65535 之間,要避免埠衝突
        mode tcp #連線的協議,這裡是tcp 協議
        #maxconn 4086
        #log 127.0.0.1 local0 debug
        server s1 192.168.100.194:3306 check port 3306 #負載的機器

        server s2 192.168.100.195:3306 check port 3306 #負載的機器,負載的機器可以有多個,往下排列即可

#################配置登入介面

listen admin_stats 
bind 0.0.0.0:8888
mode http
stats uri /haproxy 
###stats realm Global\ statistics 
stats auth xiaoming:xiaoming

 啟動haproxy

./usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cnf

http://192.168.111.100:8888/haproxy