docker中如何搭建redis集群


首先我們要了解docker的網絡類型有:

None:不為容器配置任何網絡功能,沒有網絡 --net=none

Container:與另一個運行中的容器共享Network Namespace,--net=container:containerID

Host:與主機共享Network Namespace,--net=host

Bridge:Docker設計的NAT網絡模型(默認類型)

重點關注下Host類型:

host模式創建的容器沒有自己獨立的網絡命名空間,是和物理機共享一個Network Namespace,並且共享物理機 的所有端口與IP。但是它將容器直接暴露在公共網絡中,是有安全隱患的。

我們這里使用host網絡進行搭建集群:

#拉取鏡像

docker pull redis:5.0.2

#創建容器

docker create --name redis-node01 --net host -v /data/redis-data/node01:/data redis:5.0.2 --cluster-enabled yes --cluster-config-file nodes-node-01.conf --port 6379
docker create --name redis-node02 --net host -v /data/redis-data/node02:/data redis:5.0.2 --cluster-enabled yes --cluster-config-file nodes-node-02.conf --port 6380
docker create --name redis-node03 --net host -v /data/redis-data/node03:/data redis:5.0.2 --cluster-enabled yes --cluster-config-file nodes-node-03.conf --port 6381

#啟動容器
docker start redis-node01 redis-node02 redis-node03

#進入redis-node01容器進行操作
docker exec -it redis-node01 /bin/bash

#組建集群(注意端口的變化)
redis-cli --cluster create 192.188.215.130:6379 192.188.215.130:6380 192.188.215.130:6381 --cluster-replicas 0

查看集群信息:

root@91df3e5228b1:/data# redis-cli

127.0.0.1:6379> CLUSTER NODES


免責聲明!

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



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