首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >守望而不尊荣

守望而不尊荣
EN

Server Fault用户
提问于 2012-09-18 18:20:08
回答 1查看 2.9K关注 0票数 2

我正在使用Keepalived来管理主从配置中的两个Redis实例。我正在经历一种情况,如果在主框(具有较高优先级的一个)上终止Keepalived,备份服务器将接管主服务器。但是,当在较高优先级框上重新启动Keepalived时,备份服务器立即将主服务器状态切换到高优先级框,这将有效地刷新Redis缓存。

我尝试在我的keepalived.conf中添加nopreempt指令,但这种行为仍在发生。

下面是来自备份(较低优先级)服务器的keepalived.conf。

代码语言:javascript
复制
global_defs{
        router_id redis_server_2
}

vrrp_script chk_redis {
        script "killall -0 redis-server"
        interval 5
}

vrrp_instance VI_1{
        interface eth0
        virtual_router_id 100
        priority 200
        advert_int 1
        state BACKUP
        nopreempt
        track_script {
                chk_redis
        }

        virtual_ipaddress {
                10.19.105.229
        }

        notify_master "/usr/bin/sudo /var/lib/redis/redis.sh -m"

        notify_backup "/usr/bin/sudo /var/lib/redis/redis.sh -s"

        notify_fault "/usr/bin/sudo /var/lib/redis/redis.sh -k"
EN

回答 1

Server Fault用户

回答已采纳

发布于 2012-09-18 18:32:55

好吧,我想了几分钟就解决了。

在高优先级框的VRRP_instance V1下,我有以下内容:

代码语言:javascript
复制
    state MASTER

现在,nopreempt没有得到尊重,因为更高优先级的框是从主人开始的。低优先级框看到具有较高优先级的主程序,并切换到从模式。通过将这一行更改为

代码语言:javascript
复制
    state BACKUP

高优先级框从从开始,看到具有更高优先级的主程序,并保持从属状态。已经做好了。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/429576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档