文章目录
- 使用脚本快速搭建六个redis实例
- 搭建redis集群
- 测试使用redis集群
使用脚本快速搭建六个redis实例
1.拉取docker镜像
docker
2.快速搭建六个redis实例
for port in $(seq 7001 7006); \
do \
mkdir -p /mydata/redis/node-${port}/conf
touch /mydata/redis/node-${port}/conf/redis.conf
cat << EOF >/mydata/redis/node-${port}/conf/redis.conf
port ${port}
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
# 当前节点的ip
cluster-announce-ip 192.168.56.10
cluster-announce-port ${port}
# 集群间信息交互的端口
cluster-announce-bus-port 1${port}
appendonly yes
EOF
docker run -p ${port}:${port} -p 1${port}:1${port} --name redis-${port} \
-v /mydata/redis/node-${port}/data:/data \
-v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf \
-d redis:5.0.7 redis-server /etc/redis/redis.conf; \
done
3.其他命令
docker stop $(docker ps -a |grep redis-700 | awk '{ print $1}')
docker start $(docker ps -a |grep redis-700 | awk '{ print $1}')
docker rm $(docker ps -a |grep redis-700 | awk '{ print $1}')
搭建redis集群
1.随便进入一台redis实例
docker exec -it redis-7001 bash
2.创建redis集群
redis-cli --cluster create 192.168.56.10:7001 192.168.56.10:7002 192.168.56.10:7003 192.168.56.10:7004 192.168.56.10:7005 192.168.56.10:7006 --cluster-replicas 1
–cluster-replicas 1的意思就是设置主节点有一个从节点。
我们可以看到,7001、7002、7003是主节点,7006是7002的从,7005是7001的从,7004是7003的从。
此时,redis集群搭建完成
测试使用redis集群
1.随便连接某个redis结点
docker exec -it redis-7002 /bin/bash
redis-cli -c -h 192.168.56.10 -p 7002
2.获取集群信息
cluster info
3.获取集群结点信息
cluster nodes
4.set/get测试数据
我们发现,会正常进行重定向5.此时我们停止一个主节点
此时再查看节点信息,会发现7005号redis代替了7001,成为了主节点
6.此时再将7001启动
我们发现,7001自动成为7005的从节点了