Login
网站首页 > 文章中心 > 其它

Redis高可用配置_Keepalived)

作者:小编 更新时间:2023-08-16 07:44:49 浏览量:70人看过

①.、安装redis并配置主从同步

?安装过程省略

安装过程省略

keepalived.conf? ?

global_defs?{
?router_id?test
}
vrrp_script?chk_redis?
{?
??script?"/etc/keepalived/scripts/redis_check.sh?12⑦0.0.1?6379?123456"?
??interval?2?
??timeout?2
??fall?3
}
vrrp_instance?redis?{
?state?BACKUP?#?主也配置为SLAVE
?interface?eth0?
?virtual_router_id?51?
?priority?150??
?nopreempt?#?不抢占,注意加上
?advert_int?1??
?authentication?{?
??auth_type?PASS?
??auth_pass?123456
?}
?virtual_ipaddress?{?
?172.1⑥0.107
?}
?track_script?{?
??chk_redis?
?}?
?notify_master?"/etc/keepalived/scripts/redis_master.sh?12⑦0.0.1?6379?123456"
?notify_backup?"/etc/keepalived/scripts/redis_backup.sh?12⑦0.0.1?6379?123456?172.1⑥0.105?6379"
?notify_fault?/etc/keepalived/scripts/redis_fault.sh?
?notify_stop?/etc/keepalived/scripts/redis_stop.sh?

}

redis_master.sh?

?#!/bin/bash
?REDISCLI="redis-cli?-h?$1?-p?$2?-a?$3"
?LOGFILE="/var/log/keepalived-redis-state.log"
?echo?"[master]"?>>?$LOGFILE
?date?>>?$LOGFILE
?echo?"Being?master...."?>>?$LOGFILE?2>1
?echo?"Run?SLAVEOF?NO?ONE?cmd?..."?>>?$LOGFILE
?$REDISCLI?SLAVEOF?NO?ONE?>>?$LOGFILE?2>1



redis_backup.sh

?#!/bin/bash
?REDISCLI="redis-cli?-h?$1?-p?$2?-a?$3"
?LOGFILE="/var/log/keepalived-redis-state.log"
?echo?"[backup]"?>>?$LOGFILE
?date?>>?$LOGFILE
?echo?"Being?slave...."?>>?$LOGFILE?2>1
?echo?"Run?SLAVEOF?cmd?..."?>>?$LOGFILE
?$REDISCLI?SLAVEOF?$4?$5?>>?$LOGFILE?2>1



global_defs?{
?router_id?redis
}
vrrp_script?chk_redis?{
?script?"/etc/keepalived/scripts/redis_check.sh?12⑦0.0.1?6379?123456"?###监控脚本
?interval?2???###监控时间
?timeout?2??????###超时时间
?fall??3???###重试次数
}
vrrp_instance?redis?{
?state?BACKUP???###设置为MASTER
?interface?eth0???###监控网卡
?virtual_router_id?51
?priority?100???###权重值
?nopreempt?#?不抢占,注意加上
?advert_int?1
?authentication?{
??auth_type?PASS??###加密
??auth_pass?123456??###密码
?}
?track_script?{
?chk_redis???###执行上面定义的chk_redis
?}
?virtual_ipaddress?{
??172.1⑥0.107??###VIP
?}
?notify_master?"/etc/keepalived/scripts/redis_master.sh?12⑦0.0.1?6379?123456"
?notify_backup?"/etc/keepalived/scripts/redis_backup.sh?12⑦0.0.1?6379?123456?172.1⑥0.104?6379"
?notify_fault?/etc/keepalived/scripts/redis_fault.sh
?notify_stop?/etc/keepalived/scripts/redis_stop.sh
}




?#!/bin/bash
?REDISCLI="redis-cli?-h?$1?-p?$2?-a?$3"
?LOGFILE="/var/log/keepalived-redis-state.log"
?echo?"[master]"?>>?$LOGFILE
?date?>>?$LOGFILE
?echo?"Being?master...."?>>?$LOGFILE?2>1
?echo?"Run?SLAVEOF?NO?ONE?cmd?..."?>>?$LOGFILE
?$REDISCLI?SLAVEOF?NO?ONE?>>?$LOGFILE?2>1?



?#!/bin/bash
?REDISCLI="redis-cli?-h?$1?-p?$2?-a?$3"
?LOGFILE="/var/log/keepalived-redis-state.log"
?echo?"[backup]"?>>?$LOGFILE
?date?>>?$LOGFILE
?echo?"Being?slave...."?>>?$LOGFILE?2>1
?echo?"Run?SLAVEOF?cmd?..."?>>?$LOGFILE
?$REDISCLI?SLAVEOF?$4?$5?>>?$LOGFILE?2>1



公共配置

redis_check.sh

#!/bin/bash?
ALIVE=◆redis-cli?-h?$1?-p?$2?-a?$3?PING◆?
LOGFILE="/var/log/keepalived-redis-check.log"?
echo?"[CHECK]"?>>?$LOGFILE
date?>>?$LOGFILE
if?[?$ALIVE?==?"PONG"?];?then?:?
?echo?"Success:?redis-cli?-h?$1?-p?$2?PING?$ALIVE"?>>?$LOGFILE?2>1
?exit?0?
else?
?echo?"Failed:redis-cli?-h?$1?-p?$2?PING?$ALIVE?"?>>?$LOGFILE?2>1
?exit?1?
fi?




redis_fault.sh

#!/bin/bash?
LOGFILE=/var/log/keepalived-redis-state.log?
echo?"[fault]"?>>?$LOGFILE
date?>>?$LOGFILE?



redis_stop.sh

#!/bin/bash?
LOGFILE=/var/log/keepalived-redis-state.log?
echo?"[stop]"?>>?$LOGFILE?
date?>>?$LOGFILE?



启动keepalived:keepalived -D

查看ip漂移情况:ip a

配置要点:

双BACKUP ◆ nopreempt,优先级大的先启动作为master,当master挂掉后,slave被选中成为新的master.

以上就是土嘎嘎小编为大家整理的Redis高可用配置_Keepalived)相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章