资讯专栏INFORMATION COLUMN

使用Docker配置redis sentinel哨兵的方法步骤

3119555200 / 525人阅读

一  主从配置


1.1   master、slave


master


mkdir -p /mydata/redis/6379/conf
mkdir -p /mydata/redis/6379/data
touch /mydata/redis/6379/conf/redis.conf
echo "appendonly yes" >> /mydata/redis/6379/conf/redis.conf
docker run --network host --name redis6379 -v /mydata/redis/6379/data:/data -v /mydata/redis/6379/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6379


slave


#slave1
mkdir -p /mydata/redis/6380/conf
mkdir -p /mydata/redis/6380/data
touch /mydata/redis/6380/conf/redis.conf
echo "appendonly yes" >> /mydata/redis/6380/conf/redis.conf
docker run --network host --name redis6380 -v /mydata/redis/6380/data:/data -v /mydata/redis/6380/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6380 --slaveof 192.168.243.4 6379
#slave2
mkdir -p /mydata/redis/6381/conf
mkdir -p /mydata/redis/6381/data
touch /mydata/redis/6381/conf/redis.conf
echo "appendonly yes" >> /mydata/redis/6381/conf/redis.conf
docker run --network host --name redis6381 -v /mydata/redis/6381/data:/data -v /mydata/redis/6381/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --port 6381 --slaveof 192.168.243.4 6379


1.2  配置查看


docker exec -it redis6379 redis-cli
>info replication


docker exec -it redis6380 redis-cli -p 6380
>info replication


1.png


二  哨兵配置


master


mkdir /mydata/redis/6379/sentinel
mkdir /mydata/redis/6379/sentinel/log
vi /mydata/redis/6379/sentinel/sentinel.conf
#输入
port 26379
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26379.log"
sentinel monitor mymaster 192.168.243.4 6379 1 
![在这里插入图片描述](https://img-blog.csdnimg.cn/9a303b239fec467385d2c8990cb3e629.png#pic_center)
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26379 -v /mydata/redis/6379/sentinel/sentinel.conf:/conf/sentinel.con


测试


docker exec -it redis6379 redis-cli
> SHUTDOWN
> exit
cat /mydata/redis/6379/sentinel/log/26379.log




再次启动docker start redis6379,可以看到6379是slave了


三   修改配置文件


slave


#slave1
mkdir /mydata/redis/6380/sentinel
mkdir /mydata/redis/6380/sentinel/log
vi /mydata/redis/6380/sentinel/sentinel.conf
#输入
port 26380
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26380.log"
sentinel monitor mymaster 192.168.243.4 6380 2
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26380 -v 
/mydata/redis/6380/sentinel/sentinel.conf:/conf/sentinel.conf -v 
/mydata/redis/6380/sentinel/log:/var/log/sentinel --network host redis 
redis-sentinel /conf/sentinel.conf
#slave2
mkdir /mydata/redis/6381/sentinel
mkdir /mydata/redis/6381/sentinel/log
vi /mydata/redis/6381/sentinel/sentinel.conf
#输入
port 26381
dir "/var/log/sentinel"
logfile "/var/log/sentinel/26381.log"
sentinel monitor mymaster 192.168.243.4 6381 2
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
#end
docker run -d --name sentinel26381 -v 
/mydata/redis/6381/sentinel/sentinel.conf:/conf/sentinel.conf -v 
/mydata/redis/6381/sentinel/log:/var/log/sentinel --network host redis 
redis-sentinel /conf/sentinel.conf


4.png


四   连接SpringBoot


application.yml


spring:
redis:
timeout: 5000
sentinel:
master: mymaster
nodes: 192.168.243.4:26379,192.168.243.4:26380,192.168.243.4:26381


controller


@Autowired
private StringRedisTemplate redisTemplate;
@RequestMapping("/redis")
public String redis() {
redisTemplate.opsForValue().set("test", "121323123");
String test = redisTemplate.opsForValue().get("test");
return "RESULT: " + test;
}


访问localhost:8080/redis


1.png


文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/127640.html

相关文章

  • Linux_基于Docker搭建Redis集群

    摘要:时间年月日星期二说明基于,开始本教程前,请确保您的系统已安装。为了保证集群的高可用,下面开始配置哨兵模式。 时间:2017年07月11日星期二 说明:基于Ubuntu16.04-64bit,开始本教程前,请确保您的Linux系统已安装Docker。 步骤一:Redis镜像安装 1、下载Redis镜像 镜像中心 推荐使用网易蜂巢的镜像中心 地址:https://c.163.com/hub...

    hoohack 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<