以下是其中一台keepalived(173.10.16.166)服务器的配置
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL1
[color=]#默认是不跳过检查。检查收到的VRRP通告中的所有地址可能会比较 耗时,设置此命令的意思是,如果通告与接收的上一个通告来自相同的 master路由器,则不执行检查(跳过检查)
vrrp_skip_check_adv_addr
[color=]#严格遵守VRRP协议。
[color=]# vrrp_strict
[color=]#在一个接口发送的两个免费ARP之间的延迟。可以精确到毫秒级。 默认是0
vrrp_garp_interval 5
[color=]#在一个网卡上每组na消息之间的延迟时间,默认为0
vrrp_gna_interval 0
}
vrrp_script ck_nginx {
script
[color=]"/etc/keepalived/ck_nginx.sh"
[color=]#执行脚本的位置
interval 2
[color=]#执行脚本的周期,秒为单位
weight -20
[color=]#权重的计算方式
}
[color=]#设置keepalived实例的相关信息,VI_1为VRRP实例名称
vrrp_instance VI_1 {
[color=]#有两个值可选MASTER主 BACKUP备
state BACKUP
[color=]#vrrp实例绑定的接口,用于发送VRRP包[当前服务器使用的网卡名称]
interface eth0
[color=]#指定VRRP实例ID,范围是0-255
virtual_router_id 51
[color=]#指定优先级,优先级高的将成为MASTER
priority 100
[color=]#指定发送VRRP通告的间隔,单位是秒
advert_int 1
unicast_src_ip 173.10.16.166
[color=]#本机ip
unicast_peer {
173.10.16.165
[color=]#对端ip
}
[color=]#vrrp之间通信的认证信息
authentication {
[color=]#指定认证方式。PASS简单密码认证(推荐)
auth_type PASS
[color=]#指定认证使用的密码,最多8位
auth_pass 1111
}
[color=]#虚拟IP地址设置虚拟IP地址,供用户访问使用,可设置多个,一行一个
virtual_ipaddress {
173.10.16.100
}
track_script {
ck_nginx
}
[color=]# Allow packets addressed to the VIPs above to be received
accept
}
以下是另一台keepalived(173.10.16.165)服务器的配置
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL2
[color=]#默认是不跳过检查。检查收到的VRRP通告中的所有地址可能会比较 耗时,设置此命令的意思是,如果通告与接收的上一个通告来自相同的 master路由器,则不执行检查(跳过检查)
vrrp_skip_check_adv_addr
[color=]#严格遵守VRRP协议。
[color=]# vrrp_strict
[color=]#在一个接口发送的两个免费ARP之间的延迟。可以精确到毫秒级。 默认是0
vrrp_garp_interval 5
[color=]#在一个网卡上每组na消息之间的延迟时间,默认为0
vrrp_gna_interval 0
}
vrrp_script ck_nginx {
script
[color=]"/etc/keepalived/ck_nginx.sh"
[color=]#执行脚本的位置
interval 2
[color=]#执行脚本的周期,秒为单位
weight -20
[color=]#权重的计算方式
}
[color=]#设置keepalived实例的相关信息,VI_1为VRRP实例名称
vrrp_instance VI_1 {
[color=]#有两个值可选MASTER主 BACKUP备
state BACKUP
[color=]#vrrp实例绑定的接口,用于发送VRRP包[当前服务器使用的网卡名称]
interface eth0
[color=]#指定VRRP实例ID,范围是0-255
virtual_router_id 51
[color=]#指定优先级,优先级高的将成为MASTER
priority 90
[color=]#指定发送VRRP通告的间隔,单位是秒
advert_int 1
unicast_src_ip 173.10.16.165
[color=]#本机ip
unicast_peer {
173.10.16.166
[color=]#对端ip
}
[color=]#vrrp之间通信的认证信息
authentication {
[color=]#指定认证方式。PASS简单密码认证(推荐)
auth_type PASS
[color=]#指定认证使用的密码,最多8位
auth_pass 1111
}
[color=]#虚拟IP地址设置虚拟IP地址,供用户访问使用,可设置多个,一行一个
virtual_ipaddress {
173.10.16.100
}
track_script {
ck_nginx
}
[color=]# Allow packets addressed to the VIPs above to be received
accept
}
以下是
[color=]ck_nginx.sh配置
[color=]#!/bin/bash
num
[color=]=
`
[color=]ps
[color=]-C
nginx
[color=]--no-header
[color=]|
[color=]wc
[color=]-l
`
[color=]if
[color=][
[color=]$num
[color=]-eq
[color=]0
[color=]];
[color=]then
[color=]/
usr
[color=]/
local
[color=]/
openresty
[color=]/
nginx
[color=]/
sbin
[color=]/
nginx
[color=]sleep
[color=]2
[color=]if
[color=][
`
[color=]ps
[color=]-C
nginx
[color=]--no-header
[color=]|
[color=]wc
[color=]-l
`
[color=]-eq
[color=]0
[color=]];
[color=]then
[color=]killall
keepalived
[color=]fi
[color=]fi