redhat 6.4(64位)下HAproxy+Keepalived 负载均衡架构搭建 联系客服

发布时间 : 星期二 文章redhat 6.4(64位)下HAproxy+Keepalived 负载均衡架构搭建更新完毕开始阅读7614fbab050876323012120d

rsyslog 默认情况下,需要在514端口监听UDP,所以可以把/etc/rsyslog.conf如下的注释去掉

# Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514

新增以下条目: \\\\ 和haproxy.conf中的要一致

local0.* /var/log/haproxy.log local1.* /var/log/haproxy.log

# vim /etc/sysconfig/rsyslog

#SYSLOGD_OPTIONS=\

SYSLOGD_OPTIONS=\

重启rsyslog服务

# /etc/init.d/rsyslog restart

重启haproxy

# service haproxy stop

# service haproxy start

查看haproxy.log

# tail -f /var/log/haproxy.log

Jun 19 11:18:52 localhost haproxy[9805]: Proxy web started.

三、keepalived安装配置

1、在主服务器上安装keepalived

注:安装keepalived需要 gcc gcc-c++ glib* openssl-devel popt-devel libnl-devel make 依赖包。如果系统是64位的,那么可能需要32位、64位的都要安装。

# tar zxvf keepalived-1.2.12.tar.gz

# cd keepalived-1.2.12

# ./configure --prefix=/usr/local/keepalived

configure: creating ./config.status config.status: creating Makefile

config.status: creating genhash/Makefile

config.status: creating keepalived/core/Makefile config.status: creating lib/config.h config.status: creating keepalived.spec config.status: creating keepalived/Makefile config.status: creating lib/Makefile

config.status: creating keepalived/vrrp/Makefile config.status: creating keepalived/check/Makefile config.status: creating keepalived/libipvs-2.6/Makefile

Keepalived configuration ------------------------

Keepalived version : 1.2.12 Compiler : gcc

Compiler flags : -g -O2 -DFALLBACK_LIBNL1 Extra Lib : -lssl -lcrypto -lcrypt -lnl Use IPVS Framework : Yes IPVS sync daemon support : Yes

IPVS use libnl : Yes Use VRRP Framework : Yes Use VRRP VMAC : Yes SNMP support : No SHA1 support : No Use Debug flags : No

注:必须看到以下提示,说明配置正确,才能继续安装

Use IPVS Framework : Yes

IPVS sync daemon support : Yes

Use VRRP Framework : Yes

# make

make[2]: Leaving directory `/home/soft/keepalived-1.2.12/keepalived/libipvs-2.6' Building ../bin/keepalived strip ../bin/keepalived

Make complete

make[1]: Leaving directory `/home/soft/keepalived-1.2.12/keepalived' make -C genhash

make[1]: Entering directory `/home/soft/keepalived-1.2.12/genhash'

gcc -g -O2 -DFALLBACK_LIBNL1 -I/usr/src/linux/include -I/usr/src/linux/include -I../lib -Wall -Wunused -Wstrict-prototypes -c -o main.o main.c

gcc -g -O2 -DFALLBACK_LIBNL1 -I/usr/src/linux/include -I/usr/src/linux/include -I../lib -Wall -Wunused -Wstrict-prototypes -c -o sock.o sock.c

gcc -g -O2 -DFALLBACK_LIBNL1 -I/usr/src/linux/include -I/usr/src/linux/include -I../lib -Wall -Wunused -Wstrict-prototypes -c -o layer4.o layer4.c

gcc -g -O2 -DFALLBACK_LIBNL1 -I/usr/src/linux/include -I/usr/src/linux/include -I../lib -Wall -Wunused -Wstrict-prototypes -c -o http.o http.c

gcc -g -O2 -DFALLBACK_LIBNL1 -I/usr/src/linux/include -I/usr/src/linux/include -I../lib -Wall -Wunused -Wstrict-prototypes -c -o ssl.o ssl.c Building ../bin/genhash strip ../bin/genhash

Make complete

make[1]: Leaving directory `/home/soft/keepalived-1.2.12/genhash'

Make complete

# make install

make -C keepalived install

make[1]: Entering directory `/home/soft/keepalived-1.2.12/keepalived' install -d /usr/local/keepalived/sbin

install -m 700 ../bin/keepalived /usr/local/keepalived/sbin/ install -d /usr/local/keepalived/etc/rc.d/init.d

install -m 755 etc/init.d/keepalived.init /usr/local/keepalived/etc/rc.d/init.d/keepalived install -d /usr/local/keepalived/etc/sysconfig

install -m 755 etc/init.d/keepalived.sysconfig /usr/local/keepalived/etc/sysconfig/keepalived install -d /usr/local/keepalived/etc/keepalived/samples

install -m 644 etc/keepalived/keepalived.conf /usr/local/keepalived/etc/keepalived/ install -m 644 ../doc/samples/* /usr/local/keepalived/etc/keepalived/samples/ install -d /usr/local/keepalived/share/man/man5 install -d /usr/local/keepalived/share/man/man8

install -m 644 ../doc/man/man5/keepalived.conf.5 /usr/local/keepalived/share/man/man5 install -m 644 ../doc/man/man8/keepalived.8 /usr/local/keepalived/share/man/man8 make[1]: Leaving directory `/home/soft/keepalived-1.2.12/keepalived' make -C genhash install

make[1]: Entering directory `/home/soft/keepalived-1.2.12/genhash' install -d /usr/local/keepalived/bin

install -m 755 ../bin/genhash /usr/local/keepalived/bin/ install -d /usr/local/keepalived/share/man/man1

install -m 644 ../doc/man/man1/genhash.1 /usr/local/keepalived/share/man/man1 make[1]: Leaving directory `/home/soft/keepalived-1.2.12/genhash'

# cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/ \\\\ keepalived 启动脚本

# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ \\\\ keepalived启动脚本默认keepalived命令目录

# mkdir /etc/keepalived

# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/ \\\\ keepalived配置文件目录

(或者修改keepalived执行命令的目录和keepalived配置文件的目录,

修改/etc/rc.d/init.d/keepalived, 寻找大约15行左右的. /etc/sysconfig/keepalived, 修改为: . /usr/local/keepalived/etc/sysconfig/keepalived, 即指向正确的文件位置 \\\\这个修改根据你的实际目录修改

修改/usr/local/keepalived/etc/sysconfig/keepalived文件,设置正确的服务启动参数 \\\\这项根据你的实际目录修改

KEEPALIVED_OPTIONS=\)

主机keepalived配置文件:

# vim /usr/local/keepalived/etc/keepalived/keepalived.conf

! Configuration File for keepalived global_defs {

router_id LVA_DEVEL }

vrrp_script chk_haproxy {

script \ interval 2 weight 2 }

vrrp_instance VI_1 { state MASTER interface bond0