Docker下Redis集群(主从+哨兵)安装配置的实现步骤
更新时间:2022年7月11日 14:43 点击:390 作者:JAVA·D·WangJing
一、所有机器拉去镜像
docker pull redis
二、主从集群搭建
2.1、redis.cong 文件
2.1.1、主节点:
bind 0.0.0.0 protected-mode no //redis配置访问密码 requirepass 123456 //主节点密码 哨兵模式下主节点宕机从新恢复变成从节点 需要密码 masterauth 123456
2.1.2、从节点:
bind 0.0.0.0 protected-mode no requirepass 123456 //主节点访问密码 masterauth 123456 //主节点信息 slaveof *.*.*.* 6379
2.2、创建本地映射文件夹,并将 redis.conf 放到 /usr/local/redis/conf 文件夹内
# /usr/local/redis cd /usr/locar/redis mkdir conf mkdir data
2.3、启动redis
docker run -p 6379:6379 --name redis \ -v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf \ -v /usr/local/redis/data:/data \ -d redis redis-server /etc/redis/redis.conf --appendonly yes
2.4、校验redis主从集群安装是否成功
### 在主节点查看 # 进入容器内部 docker exec -it redis bash # 进入redis redis-cli # 校验密码 auth 123456 # 查看集群信息 info replication
三、开启哨兵模式
3.1、sentinel.conf 配置文件
#### 根据需要修改一下内容 # 让sentinel服务后台运行(docker的话需要设置为no,非docker运行设置为yes, 因为docker有个-d属性就是让在后台运行的) daemonize no # 修改日志文件的路径 logfile "/data/sentinel.log" # 修改监控的主redis服务器 # 最后一个2表示,两台机器判定主被动下线后,就进行failover(故障转移) sentinel monitor mymaster *.*.*.*(公网ip) 6390 2 #超过5秒master还没有连接上,则认为master已经停止 sentinel down-after-milliseconds mymaster 5000 sentinel auth-pass mymaster 123456
3.2、创建本地映射文件夹,并将 sentinel.conf 放到 /usr/local/redis-sentinel/conf 文件夹内
# /usr/local/redis cd /usr/locar/redis-sentinel mkdir conf mkdir data
3.3、启动 redis-sentinel 进程
docker run -d --name sentinel -p 26379:26379 \ -v /usr/local/redis-sentinel/conf/sentinel.conf:/etc/sentinel.conf \ -v /usr/local/redis-sentinel/data:/data redis redis-sentinel /etc/sentinel.conf
3.4、进入 redis-sentinel 容器内查看
# 进入sentinel节点 docker exec -it sentinel redis-cli -p 26379 # 查看sentinel信息 info sentinel
3.5、服务测试
- 关闭 master 节点
- 执行二、主从集群搭建的2.4校验模块,多次执行 info replication 查看信息发生的变化
- 或者监听哨兵配置的日志文件,可以实时看到其发生的变化
到此这篇关于Docker下Redis集群(主从+哨兵)安装配置的实现步骤的文章就介绍到这了,更多相关Docker Redis集群配置内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!
原文出处:https://blog.csdn.net/wang_jing_jing/article/details/1226263
相关文章
- 这篇文章主要介绍了Redis连接池配置及初始化实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-29
- 这篇文章主要介绍了详解如何清理redis集群的所有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-18
详解redis desktop manager安装及连接方式
这篇文章主要介绍了redis desktop manager安装及连接方式,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2021-01-15- 这篇文章主要介绍了浅谈redis key值内存消耗以及性能影响,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-07
- 最近在工作中遇到了一个问题,通过查找相关资料才得知原因是因为返回结果的问题,下面这篇文章主要给大家介绍了关于lua读取redis数据的null判断的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了SpringBoot集成Redis实现消息队列的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-10
redis setIfAbsent和setnx的区别与使用说明
这篇文章主要介绍了redis setIfAbsent和setnx的区别与使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-04- 这篇文章主要介绍了Redis的Expire与Setex区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-15
docker 启动elasticsearch镜像,挂载目录后报错的解决
这篇文章主要介绍了docker 启动 elasticsearch镜像,挂载目录后报错的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-20解决Docker中的error during connect异常情况
这篇文章主要介绍了解决Docker中的error during connect异常情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-22- Redis 是一个开源、高性能的Key-Value数据库,被广泛应用在服务器各种场景中。本文介绍几个查看Redis内存信息的命令,包括常用的info memory、info keyspace、bigkeys等。...2021-01-15
教你使用Portainer管理多台Docker容器环境的方法
这篇文章主要介绍了Portainer管理多台Docker容器环境,本文给大家介绍的非常详细,包括环境准备及管理docker的详细过程,需要的朋友可以参考下...2021-11-11- 这篇文章主要介绍了docker部署confluence的完整步骤,这里的镜像并不是小编自己写的是基于他人打包的文中有详细介绍,需要的朋友可以参考下...2021-06-11
- 这篇文章主要介绍了docker swarm外部验证负载均衡时不生效的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-04-27
- 这篇文章主要介绍了解决docker挂载的目录无法读写问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-19
JAVA中 redisTemplate 和 jedis的配合使用操作
这篇文章主要介绍了JAVA中 redisTemplate 和 jedis的配合使用操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-13- 在本篇文章里小编给大家整理的是关于Redis的持久化方案详解,有兴趣的朋友们可以参考下。...2021-01-15
- 这篇文章主要介绍了@CacheEvict + redis实现批量删除缓存方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-10-12
- 这篇文章主要介绍了docker端口映射及外部无法访问问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-19
- 这篇文章主要介绍了redis 交集、并集、差集的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-23