美文网首页IT技术篇
linux docker redis 集群

linux docker redis 集群

作者: 王滕辉 | 来源:发表于2021-03-15 15:07 被阅读0次
mkdir -p /home/redis-data/node1
mkdir -p /home/redis-data/node2
mkdir -p /home/redis-data/node3
chmod 777 /home/redis-data/node3
chmod 777 /home/redis-data/node2
chmod 777 /home/redis-data/node1

编写节点一
vi /home/redis-data/node1/redis.conf
port 6379
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 192.168.0.103
cluster-announce-port 6379
cluster-announce-bus-port 16379
appendonly yes
protected-mode no

save 60 10000
save 300 10 
save 900 1 

stop-writes-on-bgsave-error no
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb 
# 数据文件存放目录,rdb快照文件和aof文件都会存放至该目录,请确保有写权限        
dir ./

节点2和节点3的配置都一样

vi /home/redis-data/node2/redis.conf
vi /home/redis-data/node3/redis.conf
port 6380
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 192.168.0.103
cluster-announce-port 6380
cluster-announce-bus-port 16380
appendonly yes
protected-mode no
docker run  --restart always --name redis-node1 --net host  --privileged=true -v /home/redis-data/node1/redis.conf:/etc/redis/redis.conf -v /home/redis-data/node1:/data -d redis redis-server /etc/redis/redis.conf
docker run  --restart always --name redis-node2 --net host  --privileged=true -v /home/redis-data/node2/redis.conf:/etc/redis/redis.conf -v /home/redis-data/node2:/data -d redis redis-server /etc/redis/redis.conf
docker run  --restart always --name redis-node3 --net host  --privileged=true -v /home/redis-data/node3/redis.conf:/etc/redis/redis.conf -v /home/redis-data/node3:/data -d redis redis-server /etc/redis/redis.conf

进入主节点容器,组建集群

docker exec -it redis-node1 /bin/bash
redis-cli --cluster create 192.168.0.103:6379  192.168.0.103:6380  192.168.0.103:6381 --cluster-replicas 0

注意: redis 必须使用 host 的网络模式,否则在本机无法连接查看,容器也可能连接不到。

相关文章

网友评论

    本文标题:linux docker redis 集群

    本文链接:https://www.haomeiwen.com/subject/ngykcltx.html