單機伺服器,使用docker 部署redis 集群
首先獲取redis映象,docker pull redis ,我直接使用最新版本的redis,如果需要某一版本,則可以docker pull redis:4.0.1
獲取成功後,可以通過docker images 檢視。
下面開始部署redis集群
首先新建配置 模板:
vi redis-cluster.tmpl
port $引數描述masterauth 123456
requirepass 123456
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 172.17.40.1
cluster-announce-port $
cluster-announce-bus-port 1$
(1)port(埠號)
(2)masterauth(設定集群節點間訪問密碼,跟下面一致
(3)requirepass(設定redis訪問密碼)
(4)cluster-enabled yes(啟動集群模式)
(5)cluster-config-file nodes.conf(集群節點資訊檔案)
(6)cluster-node-timeout 5000(redis節點宕機被發現的時間)
(7)cluster-announce-ip(集群節點的匯報ip,防止nat,預先填寫為閘道器ip後續需要手動修改配置檔案) ,單機直接使用 ifconfig 如下, 直接使用 172.17.40.1
docker0: flags=4099mtu 1500然後執行如下指令碼建立 配置檔案:inet 172.17.40.1 netmask 255.255.255.0 broadcast 0.0.0.0
ether 02:42:a5:3e:29:d8 txqueuelen 0 (ethernet)
rx packets 291 bytes 30756 (30.0 kib)
rx errors 0 dropped 0 overruns 0 frame 0
tx packets 215 bytes 13108 (12.8 kib)
tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0
......
for port in `seq 7001 7006`; do \下面啟動docker redis 容器mkdir -p ./$/conf \
&& port=$ envsubst < ./redis-cluster.tmpl > ./$/conf/redis.conf \
&& mkdir -p ./$/data; \
done
for port in `seq 7001 7006`; do建立完成可以,可以通過docker ps 檢視,進入其中乙個redis 容器: docker exec -it redis-7001 /bin/bashdocker run -d --net=host -v /usr/local/docker/config/$/conf/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/config/$/data:/data --restart always --name=redis-$ redis redis-server /etc/redis/redis.conf;
done
執行如下命令建立集群:
redis-cli -a 123456 --cluster create 172.17.40.1:7001 172.17.40.1:7002 172.17.40.1:7003 172.17.40.1:7004 172.17.40.1:7005 172.17.40.1:7006 --cluster-replicas 1如下圖,建立集群成功。
可以連線某一節點,檢驗集群狀態:
七、檢查集群狀態
容器內驗證
執行此命令可以連線到某乙個redis服務:redis-cli -c -a 123456 -h 172.17.40.1 -p 7001
進入某一容器,執行此命令,可以檢視集群主從詳情:redis-cli -a 123456 -c -p 7001 cluster nodes
Docker快速部署Redis
1 查詢docker hub上的redis映象 root wugenqiang redis docker search redis2 pull映象 root wugenqiang docker pull redis 3.2這裡我們拉取官方的映象,標籤為3.2 3 執行映象 命令說明 p 6379 6...
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集群
部署方式這裡沒有採用哨兵模式,而是使用 分片 高可用 負載均衡的模式,架構圖 至少啟動6個容器 建立網絡卡 docker network create redis subnet 192.168.0.0 16 通過指令碼建立6個redis配置 for port in seq 1 6 do mkdir ...