使用 docker 构建reids集群节点
默认配置文件,只需要修改 requirepass
的密码和 masterpassauth
密码
授权 requirepass
默认 woshitiancai
端口 port
默认 6379
aof dir
默认 /data
> 1.构建镜像
1
| docker build -t qqfirst/redis_cluster .
|
> 2.节点启动镜像
1 2
| docker run -d --net=host --name redis_cluster qqfirst/redis_cluster
|
> 3.编排节点启动,或者使用已存在的节点
1
| docker run -it --name redis_cluster qqfirst/redis_cluster sh
|
> 4.节点编排
1
| redis-cli --cluster create ip:port ip:port ip:port --cluster-relicas 1 -a 密码
|
> 例如
1
| redis-cli --cluster create -a woshitiancai host.docker.internal:6378 host.docker.internal:6377 host.docker.internal:6376 host.docker.internal:6375 host.docker.internal:6374 host.docker.internal:6373 --cluster-replicas 1
|
使用docker-compose 构建集群(测试)
> 1.启动6个节点
> 2.选择一个节点启动cluster
1
| redis-cli --cluster create -a woshitiancai 10.0.0.2:6379 10.0.0.3:6379 10.0.0.4:6379 10.0.0.5:6379 10.0.0.6:6379 10.0.0.7:6379 --cluster-replicas 1
|
> 附加1: 智能化客户端编排 hashkey
> 附加2:集群信息
常见问题
1.为什么Waiting for the cluster to join 一直卡在这里
1 2 3 4 5 6 7
| 1: https://www.cnblogs.com/luck-pig/p/12311320.html 2: 需要修改redis.conf 1378行
# cluster-announce-ip 10.1.1.5 # cluster-announce-port 6379 # cluster-announce-bus-port 6380
|
2.At least 6 nodes are required.
1 2 3
| redis集群必须至少3个master , --cluster-replicas 为1 的时候 一个master配1个s 副本,
所以最少要6个redis
|
3.WRONGPASS invalid username-password pair