docker 部署redis集群

2021-10-25 08:37:43 字數 2973 閱讀 8675

部署方式這裡沒有採用哨兵模式,而是使用 分片+高可用+負載均衡的模式,架構圖 ,至少啟動6個容器

建立網絡卡

docker network create redis --subnet 192.168.0.0/16

通過指令碼建立6個redis配置

for port in

$(seq 1 6)

; \do \

mkdir -p /mydata/redis/node-$/conf

touch /mydata/redis/node-$/conf/redis.conf

cat<< eof >/mydata/redis/node-$/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 192.168.0.1$

cluster-announce-port 6379

cluster-announce-bus-port 16379

eofdone

docker run -p 637$:6379 -p 1637$:16379 --name redis-$\

-v /mydata/redis/node-$/data:/data \

-v /mydata/redis/node-$/conf/redis.conf:/etc/redis/redis.conf \

-d --net redis --ip 192.168.0.1$ redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf; \

docker run -p 6371:6379 -p 16371:16379 --name redis-1 \

-v /mydata/redis/node-1/data:/data \

-v /mydata/redis/node-1/conf/redis.conf:/etc/redis/redis.conf \

-d --net redis --ip 192.168.0.11 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

docker run -p 6372:6379 -p 16372:16379 --name redis-2 -v /mydata/redis/node-2/data:/data -v /mydata/redis/node-2/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 192.168.0.12 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

docker run -p 6373:6379 -p 16373:16379 --name redis-3 -v /mydata/redis/node-3/data:/data -v /mydata/redis/node-3/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 192.168.0.13 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

docker run -p 6374:6379 -p 16374:16379 --name redis-4 -v /mydata/redis/node-4/data:/data -v /mydata/redis/node-4/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 192.168.0.14 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

docker run -p 6375:6379 -p 16375:16379 --name redis-5 -v /mydata/redis/node-5/data:/data -v /mydata/redis/node-5/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 192.168.0.15 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

docker run -p 6376:6379 -p 16376:16379 --name redis-6 -v /mydata/redis/node-6/data:/data -v /mydata/redis/node-6/conf/redis.conf:/etc/redis/redis.conf -d --net redis --ip 192.168.0.16 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf;

建立集群

redis-cli --cluster create 192.168.0.11:6379 192.168.0.12:6379 192.168.0.13:6379 192.168.0.14:6379 192.168.0.15:6379 192.168.0.16:6379 --cluster-replicas 1
進入到某個redis docker容器中執行4的命令,會出現下列資訊,說明集群已經建立成功

在redis的docker容器中,執行redis-cli -c 進入到命令列,到此部署就完成了。接下來你可以隨便停乙個redis容器,可以測試一下高可用。

Docker部署Redis集群

centos系統docker部署3主3從redis集群 docker pull redis 6.0.5 alpine密碼為redis2020pass,可自行修改 vi redis cluster.tmplport protected mode no cluster enabled yes clust...

利用docker部署redis集群

目錄 一 首先配置redis.conf檔案,1 1 獲取配置檔案.1 2 修改各配置檔案的引數.2 1 建立網路.2 2 拉取映象並啟動容器.2 三 設定redis集群.3 1 安裝ruby.3 2 安裝redis cluster的ruby介面,並啟動集群.3 3 測試.3 redis集群的安裝 版...

docker簡單部署redis集群

單機伺服器,使用docker 部署redis 集群 首先獲取redis映象,docker pull redis 我直接使用最新版本的redis,如果需要某一版本,則可以docker pull redis 4.0.1 獲取成功後,可以通過docker images 檢視。下面開始部署redis集群 首...