Haproxy反向代理
haproxy的作用:反向代理伺服器,當公網使用者來通路web伺服器時,由haproxy伺服器來指定交給那個web伺服器處理,以實作高可用性和群集的負載均衡。
案例實施步驟:
v 編譯安裝niginx伺服器
# yum -y install pcre-devel zlib-devel
# useradd -M -s /sbin/nologin nginx
# tar xzvf nginx-1.6.0.tar.gz
# cd nginx-1.6.0
#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
#make && make install
# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin
#nginx
#netstat -lnupt |grep :80
#echo 1111 > /usr/local/nginx/html/index.html
v 編譯安裝haproxy伺服器
#yum -y install pcre-devel bzip2-devel
#tar xzvf haproxy-1.4.24.tar.gz
#cd haproxy-1.4.24
#make TARGET=linux26 PREFIX=/usr/local/haproxy
#make install PREFIX=/usr/local/haproxy
#cp examples/haproxy.cfg /etc
v 重新開機服務
#/usr/local/haproxy/sbin/haproxy -f /etc/haproxy.cfg
v Haproxy伺服器配置
#vim /etc/haproxy.cfg
修改内容:
Global
Log 127.0.0.1 local0 配置日志記錄,local0為日志裝置
Log127.0.0.1 local1 notice notice為日志級别,通常有24個級别
#log loghostlocal10 info
Maxconn 4096 最大連接配接數
Uid 99 使用者uid
Gid 99 使用者gid
Daemon 使用者
#debug
#quiet
Defaults
Log global 定義日志為全局配置中的日志
Modehttp 模式為http
Option httplog 采用http日志格式記錄日志
Option dontlognull
Retries 3 檢查節點伺服器失敗次數
Maxconn 2000 最大連接配接數
Contimeout 5000 連接配接逾時時間
Clitimeout 50000 用戶端逾時時間
Srvtimeout 50000 伺服器逾時時間
Listen webcluster 0.0.0.0:80 定義一個應用
Option httpchk GET /index.html 檢查伺服器的index.html檔案
Balance roundrobin 負載均衡排程算法使用輪詢算法rr
Server inst1 1.1.1.1:80 check inter 2000 fall 3 定義線上節點
Server inst2 1.1.1.2:80 check inter 2000 fall 3 定義備份節點
v haproxy日志自定義位置
Log /dev/log local0 info
Log /dev/log local0 notice
#touch /etc/rsyslog.d/haproxy.conf
#vim /etc/rsyslog.d/haproxy.conf
添加内容:
If ($programname == ‘haproxy’ and $syslogserverity-text == ‘info’) then -/var/log/haproxy/haproxy-info.log & ~
If ($programname == ‘haproxy’ and $syslogserverity-text == ‘notice’) then -/var/log/haproxy/haproxy-notice.log & ~