1 docker 安装redis集群
docker 安装redis集群,3主3从的配置。
1 创建一个redis通信网卡
#创建一个redis集群使用的网卡
docker network create redis --subnet 172.38.0.0/16
2 创建6个redis的配置文件
#通过脚本创建六个redis配置,复制下面命令直接执行
for port in $(seq 1 6);\
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 6379
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 172.38.0.1${port}
cluster-announce-port 6379
cluster-announce-bus-port 16379
appendonly yes
EOF
done
3 创建6个redis的容器
#开启redis01容器
docker run -p 6371:6379 -p 16371:16379 --name redis01 -v /mydata/redis/node-1/data:/data -v /mydata/redis/node-1/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.11 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
#开启redis02容器
docker run -p 6372:6379 -p 16372:16379 --name redis02 -v /mydata/redis/node-2/data:/data -v /mydata/redis/node-2/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.12 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
#开启redis03容器
docker run -p 6373:6379 -p 16373:16379 --name redis03 -v /mydata/redis/node-3/data:/data -v /mydata/redis/node-3/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.13 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
#开启redis04容器
docker run -p 6374:6379 -p 16374:16379 --name redis04 -v /mydata/redis/node-4/data:/data -v /mydata/redis/node-4/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.14 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
#开启redis05容器
docker run -p 6375:6379 -p 16375:16379 --name redis05 -v /mydata/redis/node-5/data:/data -v /mydata/redis/node-5/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.15 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
#开启redis06容器
docker run -p 6376:6379 -p 16376:16379 --name redis06 -v /mydata/redis/node-6/data:/data -v /mydata/redis/node-6/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 172.38.0.16 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
4 组建集群
#进入redis01容器
docker exec -ti redis01 /bin/sh
#开启集群
redis-cli --cluster create 172.38.0.11:6379 172.38.0.12:6379 172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379 172.38.0.16:6379 --cluster-replicas 1
2 docker安装redis可视化工具
上一个步骤中创建了一个redis的集群,这里利用docker安装redis可视化工具redisinsight来管理redis数据库和集群
1.安装redisinsight容器
# 运行容器, --net 网络和redis 集群使用一个网络不能无法自动发现redis集群
docker run -d --name redisinsight --net redis --ip 172.38.0.20 -v /home/wuzhibin/docker/redisinsight/:/db -p 8001:8001 -u root redislabs/redisinsight:latest
2.登录redisinsight网站
ip:8001 访问网站
3.添加redis 集群
填好master 的ip:192.168.1.113 和端口6371之后,会自动发现集群
添加redis数据库时候自动会识别到集群