VRRP:Virtual Routing Redundent Protocal 虚拟路由冗余协议;能够将两个路由设备组织成一个虚拟路由;将多台
物理设备组合成一台虚拟路由
keepalived中的路由设备有两种工作模式:
抢占模式
非抢占模式
VRRP的主要目的:实现网关地址的漂移
现在流行的版本:VRRPv2 ARRPv3
一个备份组中,有一个主,master,多个从,slave
常用的是一主一从;当然可以实现一主多从的
master:
选举协议
一主多从的工作机制:
优先级:1-254
在VRRP中,每一个虚拟路由组都有路由组ID
VRRP的工作机制:
例子:当有三个路由器时:假如为Virtual router1 ,Virtual router2,Virtual router3
可以实现三个虚拟路由组:
1、Virtual router1为主,Virtual router2,Virtual router3为从
2、Virtual router2为主,Virtual router1,Virtual router3为从
3、Virtual router3为主,virtual router1,Virtual router3为从
如图所示:
VRRP主要是实现地址漂移的
备份组;master slave
在一个物理设备上,可以配置多个组,靠组ID来区别不同的组
keepalived设计的最初目的就是为LVS提供高可用功能的;属于多进程的工作模型
keepalived的功能:
将IP地址转移到另一个节点上
转移ipvs规则(在另一个节点上重新生成并启动ipvs规则)
健康状况检查
keepalived:
IP:VRRP
lvs
health check
keepalived以VRRP的方式工作
在keepalived中:
--enable-vrrp要启用起来
--disabled-snmp要禁用
vrrp_instance:定义虚拟路由
安装keepalived实现高可用功能:
1、准备两个节点,在这两个节点上安装keepalived
从ftp上下载keepalived-1.2.7-5.el5.i386.rpm
然后安装:
# yum -y --nogpgcheck localinstall keepalived-1.2.7-5.el5.i386.rpm
好了,安装完成
2、实现LVS高可用
准备两个RS
使用RS脚本实现
把VIP改成所需要的IP
给一个执行权限;
# chmod +x startrs.sh
# ./startrs.sh
然后把脚本传递给另一个节点,其过程一样;
配置realserver
改配置文件:
改之前,如图:
改之后,如图:
修改URL,状态码,等等,修改前如图:
修改后:
把realserver的地址改为自己需要用的地址
当然,有些修改可根据自己的需要;
另一个realserver的改法和第一个相似
把这个文件复制到另一个节点一份:
# scp keepalived.conf node2:/etc/keepalived/
然后打开修改
改之前,如图:
改之后,如图:
然后启动keepalived,两个都要启动
# service keepalived start
3、实现web服务的高可用
首先先把keepalived停掉,这时就用不上realserver了,要用两个节点
# service keepalived stop
# yum -y httpd
给两个节点各添加一个页面,并启动httpd
# vim /var/www/html/index.html
# service httpd start
如图所示可以访问:
然后配置keepalived
修改脚本名称,修改前,如图:
修改后,如图:
然后启动keepalived
# service keepalived start
# ifconfig