docker run -d --net host --name redis-cluster-node0 redis \
redis-server --cluster-enabled yes --protected-mode no --bind 0.0.0.0 --port 7000
docker run -d --net host --name redis-cluster-node1 redis \
redis-server --cluster-enabled yes --protected-mode no --bind 0.0.0.0 --port 7001
docker run -d --net host --name redis-cluster-node2 redis \
redis-server --cluster-enabled yes --protected-mode no --bind 0.0.0.0 --port 7002
--net host相当于在本机监听,否则redis实例之间无法相互发现
docker stop redis-cluster-node0 && \
docker stop redis-cluster-node1 && \
docker stop redis-cluster-node2
docker rm redis-cluster-node0 && \
docker rm redis-cluster-node1 && \
docker rm redis-cluster-node2
查看集群信息
- redis命令 cluster nodes
- redis-cli --cluster info host:port
非 --net host
$PUBLIC_IP 为主机的公网ip
docker stop redis-cluster2-node1 && \
docker stop redis-cluster2-node2
docker rm redis-cluster2-node0 && \
docker rm redis-cluster2-node1 && \
docker rm redis-cluster2-node2
docker run -d --name redis-cluster2-node0 \
-p 8000:6379 -p 18000:16379 \
redis redis-server --cluster-enabled yes \
--cluster-announce-ip $PUBLIC_IP --cluster-announce-port 8000 --cluster-announce-bus-port 18000
docker run -d --name redis-cluster2-node1 \
-p 8001:6379 -p 18001:16379 \
redis redis-server --cluster-enabled yes \
--cluster-announce-ip $PUBLIC_IP --cluster-announce-port 8001 --cluster-announce-bus-port 18001
docker run -d --name redis-cluster2-node2 \
-p 8002:6379 -p 18002:16379 \
redis redis-server --cluster-enabled yes \
--cluster-announce-ip $PUBLIC_IP --cluster-announce-port 8002 --cluster-announce-bus-port 18002
redis-cli --cluster create $PUBLIC_IP:8000 $PUBLIC_IP:8001 $PUBLIC_IP:8002
网友评论