实现Keepalived+Lvs , 主要做 RealServer 健康检查及LoadBalance 主机与Master,Backup 主机正常运行,其中一部分主机做高可用,另一部分做负载均衡。通过在HA 主机上安装 keepalived 服务形成主备形式并进行 rr 轮询调度,使用VIP Director向客户端提供服务 IP,Keepalived 能在服务器出现故障时将其从系统中剔除并将服务改换至其他正常节点,当坏掉的节点恢复正常时能够将其加入到服务器集群中,并在实时发现故障时能够发送警告到指定邮箱。

主机环境:RHEL6 X86 (selinux&iptables disabled)

实验主机:

LVS ACTIVE:

192.168.122.103(server3)

LVS BACKUP:

192.168.122.104(server4)

LVS VIP:

192.168.122.111(vip)

Realsever:

192.168.122.101(server1)

192.168.122.102(server2)

SOFT keepalived-1.2.20


LVS(Server3,server4)配置:

[root@server3 ~]#cd /mnt/

[root@server3mnt]# ls

keepalived-1.2.20.tar.gz

[root@server3mnt]# tar zxf keepalived-1.2.20.tar.gz

[root@server3mnt]# ls

keepalived-1.2.20  keepalived-1.2.20.tar.gz

[root@server3mnt]# cd keepalived-1.2.20

[root@server3keepalived-1.2.20]# ./configure --prefix=/usr/local/keepalived

keepalived+lvs简单搭建_keep

(看来是缺少C编译器了,我们安装上GCC)

[root@server3keepalived-1.2.20]# yum install gcc

[root@server3keepalived-1.2.20]#./configure     --prefix=/usr/local/keepalived

keepalived+lvs简单搭建_keep_02

(还缺少 openssl

太麻烦了查了查执行 yum install ipvsadmkernel-devel openssl-devel popt-devel libnl-devel gcc make -y 一次安装完

keepalived+lvs简单搭建_keep_03

居然还少东西,libnfnetlink-devel这个东西没有

我在我的rhel6.5镜像里面居然没有搜索到这个东西,在网上搜索下载后安装即可重新编译。

keepalived+lvs简单搭建_keep_04

成功无报错.

[root@server3keepalived-1.2.20]# cd /usr/local/keepalived/

执行4个软链接

ln -s/usr/local/keepalived/etc/rc.d/init.d/keepalived   /etc/init.d/

(启动脚本,可方便调用)

ln -s/usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

(引用启动脚本变量的文件)

ln -s/usr/local/keepalived/etc/keepalived   /etc/

(方便使用)

ln -s/usr/local/keepalived/sbin/keepalived   /usr/sbin

(环境变量添加)

scp -r/usr/local/keepalived/ root@172.25.33.4:/usr/local/(发到SERVER4后也需要四个链接)

vim /etc/keepalived/keepalived.conf  


keepalived+lvs简单搭建_keep_05

keepalived+lvs简单搭建_alived_06

keepalived+lvs简单搭建_keep_07

Scp   /etc/keepalived/keepalived.conf   root@192.168.122.104:/etc/keepalived/

将设置文件拷入BACKUP机中,然后作以下修改

keepalived+lvs简单搭建_alived_08

启动server3&server4上的keepalived服务

/etc/init.d/keepalived start

在两个real_server上添加

ip addr add192.168.122.111/32 dev eth0

浏览器  192.168.122.101上显示

keepalived+lvs简单搭建_keep_09

浏览器 192.168.122.102上显示

keepalived+lvs简单搭建_alived_10

在浏览器输入 http://192.168.122.111,会出现 

keepalived+lvs简单搭建_keep_11

刷新一下

keepalived+lvs简单搭建_keep_12

会发现在权重都为1时,虚拟IP所显示的为192.168.122.101

192.168.122.102的轮流替换,实现了负载均衡的功能。

高可用测试:停止master 上的 keepalived 服务,backup 是否接管。

keepalived+lvs简单搭建_keep_13

如上图,在BACKUP机测试,关掉MASTERBACKUP进入了MASTER状态。当恢复MASTER机的服务后,如下

keepalived+lvs简单搭建_keep_14

可以看到备机重新恢复了BACKUP标签状态。

这样,简单的keepalivedlvs的功能就得以实现了。