linux提高资源抢占,Keepalived 设置不抢占资源

博客介绍了在使用Keepalived进行高可用性(HA)部署时,如何避免主备节点间的频繁切换。通过设置`nopreempt`参数,禁止master节点在恢复后立即抢占VIP,确保服务稳定性。文中提供了主备节点的Keepalived配置示例,并强调了启动服务的顺序重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

keepalived做HA时,经常会遇到抢占式的master和backup之间的切换

example:

通常如果master服务死掉后backup会变成master,但是当master服务又好了的时候 master此时会抢占VIP,这样就会发生两次切换对业务繁忙的网站来说是不好的。所以我们要在配置文件加入  nopreempt  非抢占,但是这个参数只能用于state 为backup,故我们在用HA的时候最好master 和backup的state都设置成backup 让其通过priority来竞争。

注意:这样配置后,我们要注意启动keepalived服务的顺序,假设我想让A成为backup那就不能先启动A的keepalived服务。

以下是结合MHA架构主、备库配置事例

主库

[root@MySQLtest ~]# more /etc/keepalived/keepalived.conf

#20140916

#!/bin/bash

global_defs {

router_id mysqlmha

}

vrrp_script check_run {

script "/etc/keepalived/check_mysql.sh"

interval 1

}

vrrp_instance VI_1 {

state BACKUP    --这里状态指定为backup

interface eth0

virtual_router_id 151

priority 100

advert_int 1

nopreempt        --设置 nopreempt 防止抢占资源

authentication {

auth_type PASS

auth_pass 1111

}

track_script {

check_run

}

virtual_ipaddress {

192.168.66.53

}

}

备库

[root@ceshi ~]# more /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

router_id mysqlmha

}

vrrp_script check_run {

script "/etc/keepalived/check_mysql.sh"

interval 1

}

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 151

priority 90

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

track_script {

check_run

}

virtual_ipaddress {

192.168.66.53

}

}

Keepalived 的详细介绍:请点这里

Keepalived 的下载地址:请点这里

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值