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

猜你喜欢

转载自www.cnblogs.com/qianbing-li/p/11357068.html