工作中用到haproxy+keepalived,把安裝步驟記錄下來
1.安裝haproxy
http://wtdown1.onlinedown.net/down/haproxy-1.4.17.tar.zip 下載地址,unzip haproxy-1.4.17.tar.zip; tar -xvf haproxy-1.4.17.tar.gz
# wget http://haproxy.1wt.eu/download/1.3/src/haproxy-1.3.20.tar.gz
# tar zcvf haproxy-1.3.20.tar.gz
# cd haproxy-1.3.20
# make TARGET=linux26 PREFIX=/usr/local/haproxy #將haproxy安裝到/usr/local/haproxy
# make install PREFIX=/usr/local/haproxy
安裝完畢,在/usr/local/haproxy/目錄下會看到三個目錄:doc、sbin、share
vim /etc/haproxy/haproxy.cfg
2.加入負載服務器地址:
server web1 10.16.0.9:8085 cookie 1 weight 5 check inter 2000 rise 2 fall 3
server web2 10.16.0.10:8085 cookie 2 weight 3 check inter 2000 rise 2 fall 3
#cookie 1表示serverid爲1,check inter 1500 是檢測心跳頻率
#rise 2是2次正確認爲服務器可用,fall 3是3次失敗認爲服務器不可用,weight代表權重
3.加入監控地址:
vim /etc/haproxy/haproxy.cfg #在最後加入如下:
listen admin_stat #status
bind 0.0.0.0:8080 #監聽端口
mode http #http的7層模式
stats refresh 30s #統計頁面自動刷新時間
stats uri /haproxy-admin #統計頁面URL
stats realm Haproxy\ Statistics #統計頁面密碼框上提示文本
stats auth admin:admin #統計頁面用戶名和密碼設置
stats hide-version #隱藏統計頁面上HAProxy的版本信息
stats admin if TRUE #手工啓用/禁用,後端服務器
重啓服務:
#service haproxy restart
打開監控地址:
http://xx.xx.xx.xx:8080/haproxy-admin
用戶名,密碼 admin
#################################################################################
#參考資源 (resources) #
#本文僅作爲引子,Haproxy 配置以其功能遠遠不止這些。更多資料可到以下網站中獲取。 #
# Haproxy 中文 http://cn.haproxy.org #
# Haproxy 英文 http://www.haproxy.org #
# 中國開源社區 http://www.oschina.net #
#################################################################################
安裝keepalived
需要安裝編譯環境:
# yum install -y gcc gcc-c++ openssl openssl-devel
系統環境:
# uname -a
下載:keepalived
# wget -c http://www.keepalived.org/software/keepalived-1.2.12.tar.gz
# tar zxvf keepalived-1.2.12.tar.gz
# cd keepalived-1.2.12
# ./configure --prefix=/usr/local/keepalived #指定安裝路徑
配置成功會有如下顯示
Keepalived configuration
------------------------
Keepalived version : 1.2.12
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lssl -lcrypto -lcrypt
Use IPVS Framework : Yes
IPVS sync daemon support : Yes
IPVS use libnl : No
Use VRRP Framework : Yes
Use VRRP VMAC : Yes
SNMP support : No
SHA1 support : No
Use Debug flags : No
# make
# make install
將keepalived軟連接到bin下
# ln -s /usr/local/keepalived/sbin/keepalived /usr/bin/keepalived
添加啓動腳本且方便用service keepalived start/stop/restart管理
# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
# chmod 755 /etc/init.d/keepalived //添加執行權限
# chkconfig keepalived on //開機啓動
修改/etc/init.d/keepalived中的程序路徑
# Source configuration file (we set KEEPALIVED_OPTIONS there)
. /etc/sysconfig/keepalived
改爲:
# Source configuration file (we set KEEPALIVED_OPTIONS there)
. /usr/local/keepalived/etc/sysconfig/keepalived
默認情況下,keepalived 會讀取 /etc/keepalived 下keepalived.conf 文件
如果沒有建立這個文件,keepalived也不會報錯,但是會發現,所創建的關於keepalived的相關參數根本就沒有生效。
# mkdir /etc/keepalived
# ln -s /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
# service keepalived start #啓動keepalived
配置keepalived
# vim /etc/keepalived/keepalived.conf