系统环境说明:
系统版本:CentOS6.2x86_64
Director的IP:主节点:192.168.56.101
备节点:192.168.56.102
Realserver的IP:192.168.56.103
192.168.56.104
VIP地址:192.168.56.200
一、编译安装keepalived
1、解决依赖关系
gcc
make
ipvsadm
openssl-devel
popt-devel
以上包均可通过yum安装
2、编译安装
[root@localhost ~]# tar xf keepalived-1.2.7.tar.gz
[root@localhost ~]# cd keepalived-1.2.7
[root@localhost keepalived-1.2.7]# ./configure --sysconf=/etc
[root@localhost keepalived-1.2.7]# make && make install
[root@localhost keepalived-1.2.7]# ln -s /usr/local/sbin/keepalived /sbin/keepalived
3、配置keepalived
[root@localhost ~]# vim /etc/keepalived/keepalived.conf ==> 内容如下
# 全局定义部分
global_defs {
notification_email {
live1989@foxmail.com
} # 设置邮件报警,接受报警邮件地址,如有多个可以每行一个
notification_email_from root@localhost.localdomain # 设置报警邮件的发件人地址
smtp_server 127.0.0.1 # smtp服务器地址
smtp_connect_timeout 30 # smtp连接的超时时间
router_id LVS_DEVEL # 运行keepalived服务器的一个标识,发邮件时显示在邮件标题中
}
# vrrp实例定义部分
vrrp_instance VI_1 { # 实例名称,自定义
state MASTER # 指定keepalived的角色,MASTER表示为主服务器,BACKUP表示为备用服务器
interface eth0 # 指定监测的网络接口
virtual_router_id 51 # 虚拟路由标识,同一个实例下MASTER和BACKUP必须相同的id
priority 100 # 定义优先级,数字越大优先级越高,同一个实例下MASTER必须要比BACKUP优先级高
advert_int 1 # 指定MASTER和BACKUP之间的检测的时间间隔,单位秒
authentication {
auth_type PASS # 指定验证类型,主要有PASS和AH两种
auth_pass 1111 # 设置验证密码,在同一个实例下MASTER和BACKUP必须相同,不然将无法通过认证
}
virtual_ipaddress {
192.168.56.200 # 设置虚拟IP地址,可以设置多个每行一个
}
}
# real server配置
virtual_server 192.168.56.200 80 { # VIP的地址和端口
delay_loop 6 # 检测realserver的时间间隔
lb_algo wlc # lvs的调度算法
lb_kind DR # lvs的转发模型
nat_mask 255.255.255.0
persistence_timeout 50 # 持久连接的超时时间
protocol TCP
sorry_server 192.168.56.102 80 # 当后端的realserver都不可用时,把请求转发至该IP
real_server 192.168.56.103 80 { # realserver的真实IP地址
weight 1 # lvs权重
HTTP_GET { # 检测方法
url {
path /.heartbeat.html # 检测的url
status_code 200 # 检测的页面返回的状态码为200,即表示正常
}
connect_timeout 3 # 检测的连接超时时间
nb_get_retry 3 # 在判定为不可用前的尝试次数
delay_before_retry 3 # 重连的时间间隔
}
}
real_server 192.168.56.104 80 {
weight 1
HTTP_GET {
url {
path /.heartbeat.html
status_code 200
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
4、备用节点的相关配置