redis版本:3.2.3

架构:

3节点redis集群,并为每个节点设置一个备用节点,共6个节点

1、安装redis镜像

docker load < docker.redis.tar.gz

2、创建网段

docker network create --subnet=172.19.0.0/16 net2

3、创建6节点的redis容器

docker run -it -d --name r1 -p 5001:6379 --net=net2 --ip 172.19.0.2 redis bash
docker run -it -d --name r2 -p 5002:6379 --net=net2 --ip 172.19.0.3 redis bash
docker run -it -d --name r3 -p 5003:6379 --net=net2 --ip 172.19.0.4 redis bash
docker run -it -d --name r4 -p 5004:6379 --net=net2 --ip 172.19.0.5 redis bash
docker run -it -d --name r5 -p 5005:6379 --net=net2 --ip 172.19.0.6 redis bash
docker run -it -d --name r6 -p 5006:6379 --net=net2 --ip 172.19.0.7 redis bash

4、为6个节点redis修改配置文件,并启动服务

#进入r1节点
docker exec -it r1 bash
#修改配置文件
vi /usr/redis/redis.conf
#需要修改以下内容:
daemonize yes #后台进程运行
bind 0.0.0.0 #允许任意ip连接
cluster-enabled yes #开启集群
cluster-config-file nodes.file #集群配置文件
cluster-node-timeout 15000 #超时时间
appendonly yes #开启AOF日志模式 #启动服务
cd /usr/redis/src
./redis-server ../redis.conf #查看服务是否启动成功
ps -ef | grep redis 为其余5个节点依次完成以上操作

5、创建redis集群

#本镜像中已安装配置完成ruby环境,直接创建redis集群即可
#进入任一redis节点
docker exec -it r1 bash
#创建一个文件夹
cd /usr/redis
mkdir cluster
cd src
cp redis-trib.rb ../cluster/
cd ../cluster
./redis-trib.rb create --replicas 1 172.19.0.2:6379 172.19.0.3:6379 172.19.0.4:6379 172.19.0.5:6379 172.19.0.6:6379 172.19.0.7:6379 --replicas 1 表示前三个ip为3个主节点 ,后3个ip依次为各主节点的slave节点

6、进入redis集群中测试

cd /usr/redis/src
./redis-cli -c #-c表示进入集群

完成。

Docker镜像配置redis集群的更多相关文章

  1. Docker快速构建Redis集群(cluster)

    Docker快速构建Redis集群(cluster) 以所有redis实例运行在同一台宿主机上为例子 搭建步骤 redis集群目录清单 . ├── Dockerfile ├── make_master ...

  2. 在windows下面配置redis集群遇到的一些坑

    最近工作不忙,就决定学习一下redis.因为一直在windows下工作,不会linux,没办法就选择在windows下配置redis. windows下配置redis集群的文章有很多,比如:http: ...

  3. windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error

    windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error 学习了:https ...

  4. Linux配置Redis集群 和 缓存介绍。

    // 一.什么是缓存? mybatis一级缓存和二级缓存 mybatis的一级缓存存在哪? SqlSession,就不会再走数据库 什么情况下一级缓存会失效? 当被更新,删除的时候sqlsession ...

  5. 用Docker构建分布式Redis集群

    [编者的话]本文介绍了如何使用Docker搭建Redis集群,很多读者都在问Docker能带来哪些实质性的好处,我想本文就是一个很好的例子.不使用Docker你也可以搭建Redis集群,那使用Dock ...

  6. 从零开始学习docker之在docker中搭建redis(集群)

    docker搭建redis集群 docker-compose是以多容器的方式启动,非常适合用来启动集群 一.环境准备 云环境:CentOS 7.6 64位 二.安装docker-compose #需要 ...

  7. Linux下配置Redis集群模式

    配置机器1 在演示中,172.16.179.130为当前ubuntu机器的ip 在172.16.179.130上进⼊Desktop⽬录,创建conf⽬录 在conf⽬录下创建⽂件7000.conf,编 ...

  8. 基于Docker UI 配置ceph集群

    前言 前一篇介绍了docker在命令行下面进行的ceph部署,本篇用docker的UI进行ceph的部署,目前来说市面上还没有一款能够比较简单就能直接在OS上面去部署Ceph的管理平台,这是因为OS的 ...

  9. Windows10+Docker搭建分布式Redis集群(SSH服务镜像)(二)

    前言:上篇文章我们搭建好了Docker,下面我们开始使用Docker创建镜像,Docker命令就不介绍了.这里宿主是Windows10,cmd的管理和后期文件的复制不是很方便,将创建支持SSH的Cen ...

随机推荐

  1. [数据结构] 快速排序C语言程序

    //由大到小//快速排序(待排序数组,左侧起点,右侧起点) void quickSort(int *array, int l, int r) { if ( l >= r) return; int ...

  2. Navicat Premium 最新版本12.1.16-64bit 完美破解,亲测可用!

    声明:本文只是提供一个网络上找到的针对12.1.16版本的破解注册机使用方式做一个说明,不建议企业用户破解,毕竟码农不容易,有条件的还是希望大家购买原版.当然个人学习用的但又不想购买原版的,这里只是提 ...

  3. [LeetCode] Swap Adjacent in LR String 交换LR字符串中的相邻项

    In a string composed of 'L', 'R', and 'X' characters, like "RXXLRXRXL", a move consists of ...

  4. python语法_元组

    tuple 元组 被称为只读列表 tup = (1,3,4,'234') 只能读,不能进行修改操作. 与列表的区分就是 () [] 中括号和小括号的区别,

  5. Linux系统安装tomcat

    1.首先下载tomcat:http://tomcat.apache.org/download-60.cgi 2.解压缩tar.gz文件: tar -xzvf xxxxxxx/apache-tomcat ...

  6. 5m21d缓冲区溢出学习笔记

    mysql链接字符串函数 concat(str1,str2) concat_ws(separator,str1,str2....) group_concat(str1,str2....) mysql的 ...

  7. Sybase IQ 的基础

    Sybase IQ 的基础   Sybase IQ的一些基础总结: 1.IQ跟其它的关系型数据库相比,它的主要特征是:查询快.数据压缩比高.Load快,但是插入更新慢,不太适应数据老是变化,它是按列存 ...

  8. 监听器 Listener

    监听器:监听某个对象状态的变化 被监听的对象:request.session.servletContext 监听对象的创建和销毁/对象属性的变化 ServletContext HttpSession ...

  9. eclipse安装使用fat打jar包

    在线安装步骤: eclipse菜单栏 help >software updates >Search for new features to install>new update si ...

  10. 全排列 permutation

    给定一个数字列表,返回其所有可能的排列 lintcode package www.dxb.com; import java.util.List;import java.util.ArrayList; ...