共计 3910 个字符,预计需要花费 10 分钟才能阅读完成。
HAproxy+Keepalived 高可用负载均衡部署
一、安装 haproxy 软件
wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.22.tar.gz
tar zxvf haproxy-1.4.22.tar.gz
cd haproxy-1.4.22
make TARGET=linux26 PREFIX=/usr/local/haproxy
make install PREFIX=/usr/local/haproxy
cd /usr/local/haproxy
mkdir conf
cd conf
二、在 /usr/local/haproxy/conf/ 目录下创建配置文件(haproxy.cfg)
global
maxconn 20480
chroot /usr/local/haproxy
uid 99
gid 99
daemon
quiet
nbproc 1
stats socket /usr/local/haproxy/haproxy.stat mode 666
log 127.0.0.1 local3
pidfile /usr/local/haproxy/haproxy.pid
ulimit-n 65535
defaults
log global
mode http
maxconn 20480
#option httplog clf
option httplog
option dontlognull
option httpclose
option abortonclose
option redispatch
retries 3
monitor-uri /site_status
contimeout 5000
clitimeout 50000
srvtimeout 50000
frontend WEB-BANMA-cluster
bind *:80
default_backend web_pool
backend web_pool
balance source
# balance leastconn
cookie SERVERID
option forwardfor
option httpchk GET /check.html
server app1_1 192.168.10.15:80 cookie app1inst1 check inter 2000 rise 2 fall 5 weight 3
server app1_2 192.168.10.16:80 cookie app1inst2 check inter 2000 rise 2 fall 5 weight 6
stats refresh 5s
stats uri /status
stats realm Haproxy\ statistics
stats auth admin:admin123
stats admin if TRUE
三、如何给 haproxy 添加日志记录
①、如果是 CentOS6.0 以下版本配置
一、vi /etc/syslog.conf
local3.* /var/log/haproxy.log
二、vi /etc/sysconfig/syslog
SYSLOGD_OPTIONS=”-m 0″
改成
SYSLOGD_OPTIONS=”-r -m 0″ #enables logging from remote machines
三、重启动
/etc/init.d/syslog restart
②、Centos6.0 或 centos6.0 以上版本
一、配置日志
vi /etc/rsyslog.conf(去掉下面两行前的注释,一定要去掉,否则不记录日志)
$ModLoad imudp.so
$UDPServerRun 514
## 添加日志记录
local3.* /var/log/haproxy.log(添加 haproxy 日志记录文件)
二、重启动服务
/etc/init.d/rsyslog restart
四、启动 haproxy,进行检查,并查看日志
/usr/local/haproxy/sbin/haporxy -f /usr/local/haproxy/conf/haproxy.cfg
#######################################################################################
一、keepalived 安装(主备机器安装方法一样)
wget http://rpm5.org/files/popt/popt-1.16.tar.gz
tar zxvf popt-1.16.tar.gz
cd popt-1.16
./configure
make && make install
wget http://www.keepalived.org/software/keepalived-1.2.7.tar.gz
tar zxvf keepalived-1.2.7.tar.gz
cd keepalived-1.2.7
./configure –prefix=/usr/local/keepalived
make && make install
二、初始化脚本
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
mkdir -p /etc/keepalived/
ln -s /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
chmod +x /etc/init.d/keepalived
三、主机器配置文件(vi /etc/keepalived/keepalived.conf),备机器只要(修改有注释地方即可)
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL
}
vrrp_script chk_http_port {
script “/usr/local/keepalived/check_haproxy.sh”
interval 2
weight 2
}
vrrp_instance VI_1 {
state MASTER (备机,改 MASTER 为 BACKUP)
interface eth0
virtual_router_id 51
priority 150(备机,改 150 为 149)
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
10.1.1.60
}
}
四、检测 haproxy 状态的文件
status=$(ps aux|grep haproxy | grep -v grep | grep -v bash | wc -l)
if [“${status}” = “0” ]; then
/etc/init.d/haproxy start
status2=$(ps aux|grep haproxy | grep -v grep | grep -v bash |wc -l)
if [“${status2}” = “0” ]; then
/etc/init.d/keepalived stop
fi
fi
五、启动 keepalived
/etc/init.d/keepalived start
HAproxy 的详细介绍:请点这里
HAproxy 的下载地址:请点这里
推荐阅读:
Haproxy+Keepalived 搭建 Weblogic 高可用负载均衡集群 http://www.linuxidc.com/Linux/2013-09/89732.htm
Keepalived+HAProxy 配置高可用负载均衡 http://www.linuxidc.com/Linux/2012-03/56748.htm
CentOS 6.3 下 Haproxy+Keepalived+Apache 配置笔记 http://www.linuxidc.com/Linux/2013-06/85598.htm
Haproxy + KeepAlived 实现 WEB 群集 on CentOS 6 http://www.linuxidc.com/Linux/2012-03/55672.htm
Haproxy+Keepalived 构建高可用负载均衡 http://www.linuxidc.com/Linux/2012-03/55880.htm