1. 程式人生 > >Docker映象配置redis叢集

Docker映象配置redis叢集

redis版本:3.2.3

架構:

3節點redis叢集,併為每個節點設定一個備用節點,共6個節點

 

1、安裝redis映象

docker load < docker.redis.tar.gz

2、建立網段

docker network create --subnet=172.19.0.0/16 net2

3、建立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
#修改配置檔案
vi /usr/redis/redis.conf
#需要修改以下內容:
daemonize    yes   #後臺程序執行
bind 0.0.0.0          #允許任意ip連線
cluster-enabled  yes   #開啟叢集
cluster-config-file   nodes.file #叢集配置檔案
cluster-node-timeout  15000    #超時時間
appendonly  yes    #開啟AOF日誌模式

#啟動服務
cd /usr/redis/src
./redis-server ../redis.conf

#檢視服務是否啟動成功
ps 
-ef | grep redis

為其餘5個節點依次完成以上操作

5、建立redis叢集

#本映象中已安裝配置完成rube環境,直接建立redis叢集即可
#進入任一redis節點
docker exec -it r1 bash
#建立一個資料夾
cd /usr/redis
mkdir cluster
cd src
cp redis-trib.rb ../cluster/
cd ../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

--replicas 1 表示前三個ip為3個主節點  ,後3個ip依次為各主節點的slave節點

6、進入redis叢集中測試

cd /usr/redis/src
./redis-cli -c

#-c表示進入叢集

完成。