Keepalived 如何通过健康检查来保证高可用?非抢占模式该如何配置?
时间: 2024-04-15 16:30:28 浏览: 66
keepalived安装实现高可用的配置
Keepalived 可以通过健康检查来保证高可用。它使用健康检查来监视服务的运行状态,并根据检查结果确定是否需要进行故障切换。
在非抢占模式下,Keepalived 的配置需要指定两个关键参数:`nopreempt` 和 `advert_int`。
1. `nopreempt` 参数用于禁止抢占。设置 `nopreempt` 为 `true`,表示在主服务器恢复正常后,备份服务器不会主动接管主服务器的角色。这样可以避免频繁的主备切换。
2. `advert_int` 参数用于设置广播间隔。广播间隔指的是 Keepalived 发送心跳信息的时间间隔。通过设置较长的广播间隔,可以减少网络流量和资源消耗。
下面是一个示例配置文件:
```
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 100
advert_int 5
nopreempt
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.0.1/24
}
}
```
在上面的配置中,`nopreempt` 设置为 true,表示非抢占模式;`advert_int` 设置为 5 秒,表示每隔 5 秒发送一次心跳信息。
阅读全文