redis 哨兵模式,主节点检查脚本

此脚本可以设置为keepalived的检查脚本,以进行VIP的漂移

脚本内容

redis-master-check.sh

#!/bin/bash
#Date:20220720
#By: PlatoWG
# $1 is redis server's IP ADDRESS;$2 is redis server's PORT;$3 is redis server's password

if [ -z "$(/usr/bin/redis-cli -h $1 -p $2 -a $3 INFO replication 2>/dev/null|grep "role:master")" ];then
        echo -e "\033[31m$1:$2 is not master Redis\033[0m"
        exit 1
else
        echo -e "\033[32m$1:$2 is master Redis\033[0m"
        exit 0
fi


脚本测试

[root@k8s-master1 tmp]# ./redis-master-check.sh 192.168.137.51 7003 XXXXXXXX
192.168.137.51:7003 is not master Redis
[root@k8s-master1 tmp]# ./redis-master-check.sh 192.168.137.51 7002 XXXXXXXX
192.168.137.51:7002 is master Redis
[root@k8s-master1 tmp]# ./redis-master-check.sh 192.168.137.51 7001 XXXXXXXX
192.168.137.51:7001 is not master Redis

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用以下脚本来自动化安装redis哨兵模式的三节点集群: ``` #!/bin/bash # 安装redis sudo apt-get update sudo apt-get install redis-server -y # 配置redis sudo sed -i 's/# bind 127.0.0.1/bind 0.0.0.0/g' /etc/redis/redis.conf sudo sed -i 's/protected-mode yes/protected-mode no/g' /etc/redis/redis.conf # 创建redis哨兵配置文件 sudo mkdir /etc/redis/sentinel sudo touch /etc/redis/sentinel/sentinel.conf sudo chmod 777 /etc/redis/sentinel/sentinel.conf # 配置redis哨兵 echo "port 26379" >> /etc/redis/sentinel/sentinel.conf echo "dir /tmp" >> /etc/redis/sentinel/sentinel.conf echo "sentinel monitor mymaster 127.0.0.1 6379 2" >> /etc/redis/sentinel/sentinel.conf echo "sentinel down-after-milliseconds mymaster 5000" >> /etc/redis/sentinel/sentinel.conf echo "sentinel failover-timeout mymaster 60000" >> /etc/redis/sentinel/sentinel.conf echo "sentinel parallel-syncs mymaster 1" >> /etc/redis/sentinel/sentinel.conf echo "sentinel auth-pass mymaster password" >> /etc/redis/sentinel/sentinel.conf # 启动redis哨兵 redis-server /etc/redis/sentinel/sentinel.conf --sentinel # 添加redis节点 redis-cli -p 6379 slaveof 127.0.0.1 6380 redis-cli -p 6380 slaveof 127.0.0.1 6381 # 添加redis节点 redis-cli -p 6379 config set masterauth password redis-cli -p 6379 config set requirepass password redis-cli -p 6379 config rewrite # 添加redis哨兵节点 redis-cli -p 26379 sentinel monitor mymaster 127.0.0.1 6379 2 redis-cli -p 26379 sentinel set mymaster auth-pass password redis-cli -p 26379 sentinel set mymaster down-after-milliseconds 5000 redis-cli -p 26379 sentinel set mymaster failover-timeout 60000 redis-cli -p 26379 sentinel set mymaster parallel-syncs 1 ``` 这个脚本会自动安装redis,并配置redis哨兵模式的三节点集群。注意,这个脚本中的密码是示例密码,实际使用时应该替换为更安全的密码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值