<--目錄-->
1)HAproxy安裝
2)HAproxy配置文件解析
3)HAproxy監測頁面參數簡釋
【HAproxy安裝】
yum -y install gcc gcc-c++ pcre pcre-devel
tar xf haproxy-1.5.3.tar.gz;cd haproxy-1.5.3
make TARGET=linux26 USE_PCRE=1 PREFIX=/usr/local/haproxy install
ln -s /usr/local/haproxy/sbin/haproxy /usr/local/sbin
mkdir /usr/local/haproxy/conf;mkdir /usr/local/haproxy/run
mv haproxy.cfg /usr/local/haproxy/conf/
mv haproxy /etc/init.d/
chmod +x /etc/init.d/haproxy
service haproxy start
chkconfig haproxy on
#killall haproxy #關閉服務
#haproxy –f /usr/local/haproxy/conf/haproxy.cfg #開啓服務
#haproxy -f /usr/local/haproxy/conf/haproxy.cfg -st `cat /usr/local/haproxy/run/haproxy.pid` #重啓服務
#cd haproxy-1.5.3;less README #查看怎麼安裝
#Web訪問HAproxy監控
#
【HAproxy配置文件解析】
# this config needs haproxy-1.1.28 or haproxy-1.2.1
global #全局配置
log 127.0.0.1 local0 #[日誌輸出配置,所有日誌都記錄在本機,通過local0輸出]
log 127.0.0.1 local1 notice #定義haproxy 日誌級別[error warringinfo debug]
#log loghost local0 info
maxconn 4096 #默認最大連接數,需考慮ulimit-n限制
chroot /usr/local/haproxy #chroot運行路徑
uid 99 #運行haproxy 用戶 UID
gid 99 #運行haproxy 用戶組gid
daemon #以後臺形式運行harpoxy
#debug
#quiet
pidfile /usr/local/haproxy/run/haproxy.pid #haproxy 進程PID文件
defaults #默認配置
log global
mode http #默認的模式mode { tcp|http|health },tcp是4層,http是7層,health健康檢查
option httplog #日誌類別,採用httplog
option dontlognull #不記錄健康檢查日誌信息
retries 3 #三次連接失敗就認爲是服務器不可用,也可以通過後面設置
#option forwardfor #如果後端服務器需要獲得客戶端真實ip需要配置的參數,可以從Http Header中獲得客戶端ip
option redispatch #當serverId對應的服務器掛掉後,強制定向到其他健康的服務器,以後將不支持
maxconn 8000 #默認的最大連接數
timeout connect 5000 #連接超時時間
timeout client 50000 #客戶端連接超時間
timeout server 50000 #服務器端連接超時時間
listen Server_Mysql 0.0.0.0:3306 #服務器本機IP和訪問端口,或用*:3306表示,或下面增加一行bind *:3306
cookie SERVERID rewrite #允許插入serverid到cookie中,serverid後面可以定義
balance roundrobin #負載均衡的方式,roundrobin平均方式
server MariaDB1 192.168.8.50:3306 cookie MariaDB1 check inter 2000 rise 2 fall 5
server MariaDB2 192.168.8.69:3306 cookie MariaDB2 check inter 2000 rise 2 fall 5
server MariaDB3 192.168.8.70:3306 cookie MariaDB3 check inter 2000 rise 2 fall 5 #服務器定義:cookie 3表示serverid爲MariaDB3;check 默認是檢查端口;inter 2000檢查間隔2秒,rise 2是2次正確認爲服務器可用,fall 5是5次失敗認爲服務器不可用,weight代表權重
listen stats #監控
bind *:80 #服務器本機IP和訪問端口
stats uri /haproxy #統計頁面url
stats realm Global\ statistics #統計頁面密碼框上提示文本
stats auth admin:admin #設置監控頁面的用戶和密碼:admin,可以設置多個用戶名
stats refresh 5s #統計頁面自動刷新時間
maxconn 10 #默認的最大連接數
stats hide-version #隱藏統計頁面上HAProxy的版本信息
stats admin if TRUE #設置手工啓動/禁用,後端服務器(haproxy-1.4.9以後版本)
【HAproxy監測頁面參數簡釋】
Queue
Cur: current queued requests //當前的隊列請求數量
Max:max queued requests //最大的隊列請求數量
Limit: //隊列限制數量
Session rate(每秒的連接回話)列表:
scur: current sessions //每秒的當前回話的限制數量
smax: max sessions //每秒的新的最大的回話量
slim: sessions limit //每秒的新回話的限制數量
Sessions
Total: //總共回話量
Cur: //當前的回話
Max: //最大回話
Limit: //回話限制
Lbtot: total number of times a server was selected //選中一臺服務器所用的總時間
Bytes
In: //網絡的字節數輸入總量
Out: //網絡的字節數輸出總量
Denied
Req: denied requests//拒絕請求量
Resp:denied responses //拒絕迴應
Errors
Req:request errors //錯誤請求
Conn:connection errors //錯誤的連接
Resp: response errors (among which srv_abrt) ///錯誤的迴應
Warnings
Retr: retries (warning) //重新嘗試
Redis:redispatches (warning) //再次發送
Server列表:
Status:狀態,包括up(後端機活動)和down(後端機掛掉)兩種狀態
LastChk: 持續檢查後端服務器的時間
Wght: (weight) : 權重
Act: server is active (server), number of active servers (backend) //活動鏈接數量
Bck: server is backup (server), number of backup servers (backend) //backup:備份的服務器數量
Down: //後端服務器連接後都是down的數量
Downtime: downtime: total downtime (in seconds) //總的downtime 時間
Throttle: warm up status //設備變熱狀態