Docker镜像配置redis集群

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表示进入集群

完成。

posted @ 2019-01-13 17:14  郭老头  阅读(1655)  评论(1编辑  收藏  举报