通过docker搭建一个redis集群实战【详细步骤】

本例中将展示创建一个基于docker的redis集群。由于资源有限,该集群由3个master节点组成,没有slave节点。

创建redis节点目录

mkdir -p ~/redis/node1
mkdir -p ~/redis/node1/data
chmod 777 ~/redis/node1/data

创建redis.conf 

$ cat redis.conf
#监听端口号,如果所有节点在同一台机器上,每一个节点要用不同的端口
port 6379

#允许的最大连接数
maxclients 1000

#集群模式
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000

#aof持久化
appendonly yes
appendfsync everysec

#密码
requirepass 123456

#数据文件路径,这里是docker里的路径
dir /usr/local/etc/redis/data

#允许外网ip访问
protected-mode no

把redis配置信息分发到3个节点上

scp -r . node1:/opt/redis
scp -r . node2:/opt/redis
scp -r . node3:/opt/redis

启动所有节点

docker run -v /opt/redis:/usr/local/etc/redis -d --net host redis redis-server /usr/local/etc/redis/redis.conf

命令说明 

参数说明
-v /opt/redis:/usr/local/etc/redis把主机上的redis配置目录挂载到docker下
-d后台运行
--net host映射主机的端口,将直接监听主机6379端口
redisdocker节点的名称
redis-server /usr/local/etc/redis/redis.confdocker运行命令

建立集群

docker run -it redis redis-cli --cluster create ${node1-ip}:6379 ${node2-ip}:6379 ${node3-ip}:6379 --cluster-replicas 0 -a 123456

参数说明

参数说明
-it使用前台模式运行命令
--cluster create ${node1-ip}:6379 ${node2-ip}:6379 ${node3-ip}:6379节点地址
--cluster-replicas 0不要slave节点
-a 123456节点的密码,要跟redis.conf文件里的密码一样

这个命令中途会让你确认slot分布情况,需要打入yes才能继续。 

检查

$ redis-cli -c -h 10.0.0.76 -a 123456 cluster nodes
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
858637f2406e498684b1e60fcecf4ad840276dc2 10.0.0.113:6379@16379 master - 0 1640576067894 7 connected 5461-10921
0b02a441444b365b4a9d9d26fe5f8c4fa13d110a 10.0.0.76:6379@16379 myself,master - 0 1640576065000 6 connected 0-5460
b02ea6a3c8b88891a357dfcbc8affea134d3e44d 10.0.0.168:6379@16379 master - 0 1640576067000 8 connected 10922-16383

完成

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值