一、默认安装后配置文件模板路径
# IPV4 模板默认路径
/usr/share/doc/keepalived/samples/keepalived.conf.sample
############# 说明 ###########
! Configuration File for keepalived
global_defs {
notification_email {
# 管理员邮箱,告警时的收件地址,比如 ***@163.com
acassen
}
# 邮箱的发件地址
notification_email_from Alexandre.Cassen@firewall.loc
# 邮箱服务器IP
smtp_server 192.168.200.1
# SMTP超时设置
smtp_connect_timeout 30
# 路由标识,不可以重复
router_id LVS_DEVEL
}
# 虚拟路由配置开始
vrrp_instance VI_1 {
# [新增]MASTER是主服务器,BACKUP是备服务器
state MASTER/BACKUP
# 虚拟路由绑定网口,LVS监控的网口
interface eth0
# 路由标识,不可重复,双机保持一直,0-255
virtual_router_id 50
# 不开启抢占模式
nopreempt
# 优先级
priority 100
# 通告间隔,广告周期,两台机器之间同步检查的间隔,单位是秒
advert_int 1
# [新增],开启认证
Authentication {
# 认证方式,密码认证
Auth_type pass
# 认证密码
Auth_pass 123456
}
# 虚拟IP地址
virtual_ipaddress {
192.168.200.11
192.168.200.12
192.168.200.13
}
}
#[新增]配置需要追踪的网卡
track_interface {
eth0
eth1
}
# 配置虚拟IP,指定虚拟IP和端口,空格分开
virtual_server 10.10.10.2 1358 {
# 服务轮询间隔,检测RS服务状态,健康检查,单位是秒
delay_loop 6
# 调度算法[rr/wrr/lc/wlc/lblc/sh/dh]
lb_algo rr
# LVS的负载均衡机制,集群类型[DR/NAT/TUN]
lb_kind NAT
# [新增]子网掩码,可以不写
nat_mask 255.255.255.0
# 持久连接,会话保持时间,时间到了会根据规则切换到备机或者别的地方
persistence_timeout 50
# 使用协议[TCP/UDP]
protocol TCP
# 备份服务器地址和端口,可选项
sorry_server 192.168.200.200 1358
# 双机需要配2个real_server,后台HTTP服务器所在地址与端口,虚拟地址下真实的服务地址和端口
real_server 192.168.200.2 1358 {
# 权重
weight 1
# 检测RS服务器的状态,发送请求报文
HTTP_GET {
url {
# 请求的URL
path /testurl3/test.jsp
# 对请求的页面进行hash运算,如果一致说明正常
digest 640205b7b0fc66c1ea91c463fac6334d
# [新增],判断上述检测机制为健康状态的响应码,和digest二选一即可
status_code <INT>
}
# 连接超时时间
connect_timeout 3
# 超时重试次数
nb_get_retry 3
# 每次超时过后多久再次连接
delay_before_retry 3
# [新增]向哪个IP地址发起健康状态检测请求
connect_ip <IP ADDRESS>
# [新增]向该IP的哪个端口发起健康状态检测
connect_port <PORT>
# [新增]发出健康状态检测时使用的源地址
bindto <IP ADDRESS>
# [新增]发出健康状态检测时使用的源端口
bind_port <PORT>
}
}
}
二、自定义日志位置
1、keepalived默认会把日志打印在 /var/log/messages 里面,不进行配置混一起很难排查
# 1、修改配置
vi /etc/sysconfig/keepalived
# 把
KEEPALIVED_OPTIONS="-D"
# 改为
KEEPALIVED_OPTIONS="-D -d -S 0"
# 2、添加
vi /etc/rsyslog.conf
# 末尾添加
local0.* /usr/local/log/keepalived.log
# 3、重启服务
systemctl restart rsyslog
# 4、查看状态
systemctl status rsyslog
# 5、重启keepalived
systemctl restart keepalived.service