由于rediscluster叢集,資料是分片存儲,是以一個節點挂掉,這個節點的資料就沒有了。是以每個redis要配一個備援節點。是以需要三主三從節點
安裝Redis,配置RedisCluster叢集
- 安裝Redis鏡像
# 必須是這個鏡像 docker pull yyyyttttwwww/redis
- 建立net2網段
docker network create --subnet=172.19.0.0/16 net2
- 建立6節點Redis容器
docker run -it -d --name r1 -p 5001:6379 --net=net2 --ip 172.19.0.2 redis bash docker run -it -d --name r2 -p 5002:6379 --net=net2 --ip 172.19.0.3 redis bash docker run -it -d --name r3 -p 5003:6379 --net=net2 --ip 172.19.0.4 redis bash docker run -it -d --name r4 -p 5004:6379 --net=net2 --ip 172.19.0.5 redis bash docker run -it -d --name r5 -p 5005:6379 --net=net2 --ip 172.19.0.6 redis bash docker run -it -d --name r6 -p 5006:6379 --net=net2 --ip 172.19.0.7 redis bash
4. 啟動6節點Redis伺服器
#進入r1節點
docker exec -it r1 bash
cp /home/redis/redis.conf /usr/redis/redis.conf
cd /usr/redis/src
./redis-server ../redis.conf
#進入r2節點
docker exec -it r2 bash
cd /usr/redis/src
./redis-server ../redis.conf
#進入r3節點
docker exec -it r3 bash
cp /home/redis/redis.conf /usr/redis/redis.conf
cd /usr/redis/src
./redis-server ../redis.conf
#進入r4節點
docker exec -it r4 bash
cp /home/redis/redis.conf /usr/redis/redis.conf
cd /usr/redis/src
./redis-server ../redis.conf
#進入r5節點
docker exec -it r5 bash
cp /home/redis/redis.conf /usr/redis/redis.conf
cd /usr/redis/src
./redis-server ../redis.conf
#進入r6節點
docker exec -it r6 bash
cp /home/redis/redis.conf /usr/redis/redis.conf
cd /usr/redis/src
./redis-server ../redis.conf
- 建立Cluster叢集(使用redis-trib.rb腳本)
#在r1節點上執行下面的指令 cd /usr/redis/src mkdir -p ../cluster cp redis-trib.rb ../cluster/ cd ../cluster #建立Cluster叢集 ./redis-trib.rb create --replicas 1 172.19.0.2:6379 172.19.0.3:6379 172.19.0.4:6379 172.19.0.5:6379 172.19.0.6:6379 172.19.0.7:6379