使用docker redis-cluster集群搭建
参考https://www.cnblogs.com/cxbhakim/p/9151720.html此文
主要搭建过程参考上文,此处讲下主要过程和遇到的坑
- 首先是镜像的基础搭建,我不知道是否是作者编写时和我现在的版本不同了,第一个坑点Dockerfile中FROM Centos:7
,这
去掉算是博文复制时的bug吧,还有Centos现在不支持大写,需要改成centos - Dockerfile中的注释部分,编码可能有问题,需要正常运行最好把所有注释都删了
- 构建docker build -t hakimdstx/cluster-redis . 该镜像的时候,根据后文明显这里需要改成docker build -t hakimdstx/cluster-redis:4.0.1 . 不知道为什么会漏了,后文需要用到Tag版本,否则后面的脚本别加版本号
- 集群镜像建完,后又建了个节点镜像。。在我理解其实这两个可以合并成一个的,不知有何高见
- 之后用节点镜像启动多个redis节点,之后就是用redis远程命令查看节点信息啥的,这里我稍微蒙了会,因为作者没讲从哪里执行命令。。我考虑了下可以有至少两种方法,1. 使用下载包中src内有个redis-cli,我的地址/root/docker_redis_cluster/redis-4.0.1/src/redis-cli,可以用这个客户端调用命令 2. 我本地使用的window,用redis DeskTop Manager来远程连接redis,执行命令
- 然后使用Redis Cluster 的集群感知操作,CLUSTER MEET 将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子。
- 这样还不够,还要分配槽slot,他使用脚本,这里注意了,如果你是在服务器上部署,最好ifconfig查看下服务器内网地址,用内网地址替换他的脚本地址,还有密码,我设的密码就有)这种符号,需要把整个密码单引号包起来,否则也会报错
- 然后是从节点添加,cluster nodes查看所有主节点并记下id,对应脚本替换3个主节点id,运行脚本

- 故障转义,若自动转义失败,需要手工转义 ,登录从机CLUSTER FAILOVER force。这里模拟主节点6379挂了

发现故障自动转移,从节点自动升级为主节点,重启后原主节点自动降为从节点

- 然后再看看搭建完的redis集群占用空间情况

可以看到,在没存入数据前,几乎不占用多少内存,所以测试搭建在一台1核1G的服务也是没什么压力的 日志存放点

总结
- docker搭建redis集群还是比较容易的,当然我觉得线上环境不应该这么简单,至少把日志、配置文件都挂载到指定目录,这样配置重启都方便点
使用docker redis-cluster集群搭建的更多相关文章
- Redis Cluster集群搭建与配置
Redis Cluster是一种服务器sharding分片技术,关于Redis的集群方案应该怎么做,请参考我的另一篇博客http://www.cnblogs.com/xckk/p/6134655.ht ...
- Redis Cluster集群搭建与应用
1.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper,但从redis 3.0之后版本支持redis-cluster集群,redis-cluster采用无中心结 ...
- Redis Cluster集群搭建<原>
一.环境配置 一台window 7上安装虚拟机,虚拟机中安装的是centos系统. 二.目标 Redis集群搭建的方式有多种,根据集群逻辑的位置,大致可以分为三大类:基于客户端分片的Redis ...
- Ubuntu 16.04下Redis Cluster集群搭建(官方原始方案)
前提:先安装好Redis,参考:http://www.cnblogs.com/EasonJim/p/7599941.html 说明:Redis Cluster集群模式可以做到动态增加节点和下线节点,使 ...
- centos8平台redis cluster集群搭建(redis5.0.7)
一,规划 redis cluster 1,cluster采用六台redis,3主3从 redis1 : ip: 172.17.0.2 redis2 : ip: 172.17.0.3 red ...
- 【Redis】Redis cluster集群搭建
Redis集群基本介绍 Redis 集群是一个可以在多个 Redis 节点之间进行数据共享的设施installation. Redis 集群不支持那些需要同时处理多个键的 Redis 命令, 因为执行 ...
- Redis Cluster集群搭建后,客户端的连接研究(Spring/Jedis)(待实践)
说明:无论是否已经搭建好集群,还是使用什么样的客户端去连接,都是必须把全部IP列表集成进去,然后随机往其中一个IP写. 这样做的好处: 1.随机IP写入之后,Redis Cluster代理层会自动根据 ...
- Redis Cluster 集群搭建与扩容、缩容
说明:仍然是伪集群,所有的Redis节点,都在一个服务器上,采用不同配置文件,不同端口的形式实现 前提:已经安装好了Redis,本文的redis的版本是redis-6.2.3 Redis的下载.安装参 ...
- redis cluster 集群搭建步骤和注意事项
1.安装Ubuntu ,修改root的密码. sudo passwd (apt-get update 更新系统) 2.安装 Gcc 和G++ sudo apt-get install build- ...
- Ubuntu 16.04 下Redis Cluster集群搭建
实际操作如下: 准备工作 版本:4.0.2 下载地址:https://redis.io/download 离线版本:(链接: https://pan.baidu.com/s/1bpwDtOr 密码: ...
随机推荐
- windows上安装Maven与Gradle
(一)安装Maven 1.百度maven,进入官网http://maven.apache.org/download.cgi,选择Download,在选择相应的压缩包apache-maven-3.6.0 ...
- 169. Majority Element (Array)
Given an array of size n, find the majority element. The majority element is the element that appear ...
- CentOS7使用ZFS文件系统
默认情况下,CentOS7并没有含ZFS支持的文件和,需要进行更新和安装第三方库. Step 1:安装第三方库和更新系统 [root@localhost ~]# rpm -Uvh http://www ...
- xcode项目打不开:incompatible project version问题
低版本xcode打开高版本xcode项目或库工程的时候就会出现,打不开的问题 解决 1可以重建创建工程,将文件拷贝到新工程 2 相对一,较简单 找到.xcodeproj文件 右键 显示包内容,找到pr ...
- react组件回顶部
在挂载更新里面判断滚动条的距离(滚动条不能overflow: auto 踩坑) componentDidMount(){ window.addEventListener('scroll' , ()=& ...
- PHP错误日志记录:display_errors与log_errors的区别
我们所做的东西,无论在开发环境还是在生产环境都可能会出现一些问题. 开发环境下,我们会要求错误尽可能详细的呈现出来,错误提示信息越详细越好,越详细越能帮助开发人员确定问题所在并从根本上解决他们. 生产 ...
- 2018-2019-2 20175234 实验一 Java开发环境的熟悉(Linux + IDEA)
目录 20175234 实验一 Java开发环境的熟悉(Linux + IDEA) 第一部分 代码及运行结果截图 第二部分 要求 代码及截图 第三部分 题目 需求分析 设计 程序及运行结果 问题和解决 ...
- 20172325 2018-2019-2 《Java程序设计》第八周学习总结
20172325 2018-2019-2 <Java程序设计>第八周学习总结 教材学习内容总结 一.堆 1.什么是堆? 具有两个附加属性的一个二叉树. 堆分为小顶堆和大顶堆. 最小堆:对每 ...
- CentOS6.5在虚拟机中安装
只有一点,先建虚拟机,再选择iso镜像安装,注意,安装路径不能有中文空格之类的. CentOS6.5 64位下载链接 链接:https://pan.baidu.com/s/1d6zp5LtKtkL8I ...
- mysql---select的五种子句学习(where、group by、having、order by、limit)
mysql---select的五种子句学习(where.group by.having.order by.limit) 分类: Mysql学习2012-09-27 16:14 1533人阅读 评论 ...