一、docker安装(略)

二、下载redis安装包(redis-4.0.8.tar.gz)

  以任何方式获取都可以。自行官网下载。

三、拉取centos7的docker镜像

  命令:docker pull centos:7

  这种基于操作系统的安装也适合虚拟机、真机等环境,而且之前查询资料也都是这种情况开始,没有看到直接跳过这步的样例。

四、创建docker网络

  由于集群环境要求有明确的ip配置,需要提供固定ip,所以这里创建容器时指定ip,这就要求有可用的网络信息。  

  docker network create --subnet=172.19.0.0/16 mynetwork

五、创建容器

  由于计划每个容器配置两个redis,所以需要3个容器,也可以直接创建6个容器。

  docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.11 centos:7 /usr/sbin/init

  docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.12 centos:7 /usr/sbin/init

  docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.13 centos:7 /usr/sbin/init

六、安装redis

  三个容器一样,以第一个容器为例172.19.0.11。

  安装redis

  首先进入容器,将下载好的redis上传到容器内,这里可以直接拷贝到/home/bunny/cento7s/01。

  tar zxvf redis-3.2.5.tar.gz

  cd redis-3.2.5

  yum install -y wget gcc make tcl

  make && make install

  开始配置redis.conf

  新建2个文件夹/etc/redis/7001  /etc/redis/7002

  将配置文件复制到2个文件夹,一个对应端口号7001,一个对应端口号7002.下面只配置7001,7002参考7001的配置。

  下面的配置文件一共是2*3=6个,分别对应3个ip,每个ip2个端口。

  port 7001
  bind 172.19.0.11
  daemonize yes
  pidfile /var/run/redis_7001.pid
  dir /etc/redis/7001/
  appendonly yes
  cluster-enabled yes
  cluster-config-file nodes-7001.conf
  cluster-node-timeout 5000

七、安装依赖

  yum install ruby -y
  yum install rubygems -y
  gem install redis -v 3.0.7

八、启动redis集群

  启动单独的redis

  逐一启动6个redis进程,下面两条命令在每个容器内执行,一共6个命令执行。  

  /usr/local/redis-4.0.8/src/redis-server /etc/redis/7001/redis.conf

  /usr/local/redis-4.0.8/src/redis-server /etc/redis/7002/redis.conf

  通过ps -ef|grep redis 查看进程,每个容器应该2个进程。

  配置集群

  ./redis-trib.rb  create --replicas 1 172.19.0.11:7001 172.19.0.12:7001 172.19.0.13:7001  172.19.0.11:7002 172.19.0.12:7002  172.19.0.13:7002

  如果是更新的版本可能是下面这条命令

  redis-cli --cluster create 172.19.0.11:7001 172.19.0.12:7001 172.19.0.13:7001  172.19.0.11:7002 172.19.0.12:7002  172.19.0.13:7002 --cluster-replicas 1

  然后输入yes确认

  登录集群

  任何一个单点的ip地址和端口号以集群方式登录都可以,也就是在命令中添加上 -c

喵星之旅-狂奔的兔子-基于docker的redis分布式集群的更多相关文章

  1. 喵星之旅-狂奔的兔子-基于docker的rabbitmq安装

    docker安装参考:喵星之旅-狂奔的兔子-docker安装和基本使用 一.查询镜像名称 由于我们要安装的是有web管理页面的,不能直接拉取,需要指定版本. 登录docker仓库查询:https:// ...

  2. 搭建基于docker 的redis分布式集群在docker for windows

    https://blog.csdn.net/xielinrui123/article/details/85104446 首先在docker中下载使用 docker pull redis:3.0.7do ...

  3. 喵星之旅-狂奔的兔子-docker安装和基本使用

      一.前提条件 目前,CentOS 仅发行版本中的内核支持 Docker. 位.系统内核版本为 3.10 以上. 位系统.参考喵星之旅-狂奔的兔子-linux安装 二.CentOS 7下安装 Doc ...

  4. 喵星之旅-狂奔的兔子-rabbitmq的java客户端使用入门

    一.简介 RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件). 消息队列都涉及的生产者消费者模型,不做详解,本文只作为快速使用的参考文档. 消息队列主要有点 ...

  5. 喵星之旅-狂奔的兔子-myeclipse搭建ssm

    . 可以使用试用期限内的myeclipse,也可以找到有授权的机器进行操作.搭建好的项目框架可以直接移植到免费软件eclipse使用.或者直接购买myeclipse授权. 一.创建一个java web ...

  6. 喵星之旅-狂奔的兔子-centos7一键安装redmine

    一.安装环境 CentOS-7-x86_64-DVD-1908.iso 二.获取安装文件 从官网获取,在下载页面提供了多种安装,最下方是一键安装版本,里面有两种选择,一个是安装包,一个是虚拟机硬盘文件 ...

  7. 喵星之旅-狂奔的兔子-centos7安装MySQL 5.5

    安装环境:https://www.cnblogs.com/kittybunny/p/12296078.html 一.下载安装文件 下载地址 https://downloads.mysql.com/ar ...

  8. 喵星之旅-狂奔的兔子-linux安装

    一.前言 本文演示虚拟机安装,和真机区别可能在网卡驱动上有差异. 真机环境:CentOS Linux release 7.6.1810 (Core) 虚拟机(虽然centos系统自带虚拟机软件,但是习 ...

  9. 喵星之旅-狂奔的兔子-redis使用

    一.命令行使用 redis大概有200多命令,这里只是入门级别,列举了一些非常常见的内容,如果这些会了就可以开启redis进一步学习了. 1.登录数据库 我们需要知道ip地址.端口号.密码(如果有). ...

随机推荐

  1. util之Stack

    定义 Stack<Integer>s = new Stack<>(); boolean isEmpty()  测试堆栈是否为空. Object peek( ) 查看堆栈顶部的对 ...

  2. AcWing 897. 最长公共子序列

    #include <iostream> #include <algorithm> using namespace std; ; int n, m; char a[N], b[N ...

  3. 题解【洛谷P3951】[NOIP2017]小凯的疑惑

    题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中,最贵的 ...

  4. Iris路由和路由组

    package main import ( "github.com/kataras/iris" "github.com/kataras/iris/context" ...

  5. 程序员必需知道的Chrome使用技巧(入门篇)

    浏览器版本 Chrome Canary 新增一些没有经过Google工程师的测试或使用的浏览器功能版本.Chrome Dev让大多数开发人员主要使用此版本来测试对浏览器的重大版本功能版本.Chrome ...

  6. 设置DataGridView的单元格颜色

    RowPrePaint事件: private void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArg ...

  7. 多对多三种创建方式、forms组件、cookies与session

    多对多三种创建方式.forms组件.cookies与session 一.多对多三种创建方式 1.全自动 # 优势:不需要你手动创建第三张表 # 不足:由于第三张表不是你手动创建的,也就意味着第三张表字 ...

  8. 仿QQ聊天程序(java)

    仿QQ聊天程序 转载:牟尼的专栏 http://blog.csdn.net/u012027907 一.设计内容及要求 1.1综述 A.系统概述 我们要做的就是类似QQ这样的面向企业内部的聊天软件,基本 ...

  9. P&R 4

    Floorplan 要做好fp需要掌握哪些知识和技能? 通常遇到fp问题大致的debug步骤和方法有哪些? 如何衡量fp的QA? 通常FP是做PR 最关键也最具技术含量的一个环节.相对于后续的PR步骤 ...

  10. Postman 设置token为全局变量

    在做接口测试的时候,经常会用到不同用户登陆的token,来测试API,通过设置全局的token,这样更便捷: 注意设置的名称必须与你登陆后返回的名称一致,我这里是 AccessToken 1.配置环境 ...