REDIS_redis5 Docker布署过程

#Redis 5.0 Docker集群部署

##1. 制作REDIS镜像
-  直接仓库拉取镜像
`
docker pull redis
`
- 从官网下载安装包,本地制作docker镜像包
docker 打包的方法在另一文章中再作详细说明

##2. 制作通用配置文件 
- redis-cluster.conf
`
port ${PORT}
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 172.172.66.1
cluster-announce-port ${PORT}
cluster-announce-bus-port 1${PORT}
appendonly yes
masterauth password
requirepass password
`
ip 地址在确定好网络情况后进行手动修改
- 生成6个redis节点配置目录
6000/conf/redis.conf
6000/data/
`
for port in `seq 6000 6005`; do
  mkdir -p ./${port}/conf && PORT=${port} envsubst < ./redis-cluster.conf > ./${port}/conf/redis.conf && mkdir -p ./${port}/data;done
`

##3. 集群网络配置
创建 redis-net 虚拟网络 并指定网段
`
docker network create --subnet 172.172.66.1/24 redis-net
`

##4. 创建并启动redis节点
- redis-create-run.sh
`
`#!/bin/sh
ip_addr=10;
for port in `seq 6000 6005`; do
  docker run -d -ti -p ${port}:${port} -p 1${port}:1${port} \
-v $PWD/${port}/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v $PWD/${port}/data:/data  \
--restart always \
--name redis-${port} \
--net redis-net \
--ip 172.172.66.${ip_addr} \
--sysctl net.core.somaxconn=1024 redis redis-server /usr/local/etc/redis/redis.conf; 
let ip_addr+=1;
done
`
检查启动状态
`
docker ps |grep redis-600*
`

##5. 从节点创建集群
-  查看节点的IP 地址
`
docker network inspect redis-net
`

-  create-cluster.sh 正确填写分配Redis节点的IP和端口
`
`#!/bin/sh
docker exec -i redis-6000 '/bin/bash' <<EOF
redis-cli -a password --cluster create \
172.172.66.10:6000 \
172.172.66.11:6001 \
172.172.66.12:6002 \
172.172.66.13:6003 \
172.172.66.14:6004 \
172.172.66.15:6005 \
--cluster-replicas 1 <<EOF
yes;
EOF
exit;
EOF
`

##6. 测试
- 进入容器shell 通过redis-cli进行简单的操作
`
docker exec -it redis-6000 '/bin/bash'
`
`
redis-cli -p 6000 -a password;
set a a123456;
set b b123456;
set c c123456;
get a;
`
- 关闭某个主节点,可以检查主从可以成功切换
- 本集群3主3从
- 集群节点的动态加载,删除,将在以后再进行操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值