一、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. 在虚拟机中使用Git

    自己如何从安装虚拟机到使用git进行项目代码版本管理的部分教程因为是自学所以没有好的教程只能自己进行百度,网上的教程太多了但都是只是一个模块没有从头到尾详细的教程,我们如果有个详细的教程本来只需花很少 ...

  2. Java + Selenium 无头浏览器模式

    我们说的无头模式,只是在爬虫执行的时候,不再弹出浏览器的界面,只是使用浏览器的内核进行爬取,下面是示例代码: //设置本地chromedriver地址 System.setProperty(" ...

  3. 开发笔记—钉钉服务商应用isv开发,从应用配置,到获取客户企业通讯录

    以第三方企业微应用为例 在第三方企业微应用应用时,比较底层的需求,就是应用需要获取客户企业的通讯录,即部门/员工的数据.本人整理以下几个关键数据,供大家开发参考. 新建第三方微应用时,能拿到这些初始数 ...

  4. Iris_xorm

    xorm表基本操作及高级操作 表结构基本操作 对表结构的操作最常见的操作是查询和统计相关的方法,我们首先来看相关实现: 条件查询 Id值查询:参数接收主键字段的值.例如: var user User ...

  5. Go_select

    select 是 Go 中的一个控制结构.select 语句类似于 switch 语句,但是select会随机执行一个可运行的case.如果没有case可运行,它将阻塞,直到有case可运行. sel ...

  6. vue项目接入markdown

    vue 项目接入 markdown 最近做一个项目,需要在vue项目中接入 markdown 编辑器,其实这个好接,他没有什么特别的样式,男的就是图片的上传. 今天给大家推荐一个插件 :mavonEd ...

  7. MODULE BUILD FAILED: ERROR: COULDN’T FIND PRESET “ES2015” RELATIVE TO DIRECTORY

    npm run dev 遇到报错: Module build failed: Error: Couldn't find preset "es2015" relative to di ...

  8. idea中使用Data Source and Drivers时,如果使用自己自定义的jar包

  9. Atcoder Beginner Contest152F(DFS+状压DP)

    二维状压写成一维状压,省略加上第i条边这一维 #define HAVE_STRUCT_TIMESPEC #include<bits/stdc++.h> using namespace st ...

  10. IEC 60958 && IEC 61937

    IEC 60958 IEC 60958是一种传递数字音频的接口规范,相比I2S,IEC60958通过一根线同时传递时钟信号和数据信号.IEC 60958用来传递两channel,16/20/24bit ...