Docker部署Redis集群


拉取最新鏡像

docker pull redis

創建掛載目錄

mkdir -p /mnt/redis/{6380,6381}/data

創建容器

分別在a.youlai.storeb.youlai.storec.youlai.store執行以下命令完成容器的創建,中cluster-announce-ip需改為當前實施的服務器IP地址

6380節點

docker create --name redis-6380 --restart=always --net host  \
-v /mnt/redis/6380/data:/data redis \
--requirepass 123456 \
--masterauth 123456 \
--port 6380 \
--appendonly yes \
--cluster-enabled yes \
--cluster-announce-ip a.youlai.store

6381節點

docker create --name redis-6381 --restart=always --net host  \
-v /mnt/redis/6381/data:/data redis \
--requirepass 123456 \
--masterauth 123456 \
--port 6381 \
--appendonly yes \
--cluster-enabled yes \
--cluster-announce-ip a.youlai.store
  • cluster-enabled:是否啟動集群,默認no
  • appendonly:是否開啟持久化,默認no
  • cluster-announce-ip:對外提供訪問的IP,如果集群機器不在局域網內的服務器需填寫外網域名或IP

啟動節點容器

docker start redis-6380 redis-6381

開放端口

除了Redis應用監聽端口6380、6381之外,還要開放集群總線端口,對應的是16380和16381

創建redis集群

docker exec -it redis-6380 redis-cli -a 123456 --cluster create 47.117.115.107:6380 47.117.115.107:6381 101.132.25.57:6380 101.132.25.57:6381 106.75.231.227:6380 106.75.231.227:6381 --cluster-replicas 1
  • --cluster-replicas 1 指定從節點的個數

測試

集群連通測試

docker exec -it redis-6380 redis-cli -h b.youlai.store -p 6381 -a 123456 -c

docker exec -it redis-6380 redis-cli -h a.youlai.store -p 6381 -a 123456 -c

集群節點

cluster nodes

集群信息

cluster info


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM