惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
H
Help Net Security
小众软件
小众软件
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
S
SegmentFault 最新的问题
Last Week in AI
Last Week in AI
爱范儿
爱范儿
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园 - 【当耐特】
V
Visual Studio Blog
大猫的无限游戏
大猫的无限游戏
博客园_首页
Jina AI
Jina AI
D
Docker
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Microsoft Security Blog
Microsoft Security Blog
阮一峰的网络日志
阮一峰的网络日志

博客园 - stone8386

微信调试工具,内网穿透工具,Localtunnel 使用 BackgroundService 创建 Windows 服务 centos8在更新yum源时提示失败 错误:为 repo ‘AppStream’下载元数据失败 c# 连接 sql server 数据库时报错,证书链是由不受信任的颁发机构颁发的。 锐浪报表 手工注册发布软件 - C/S报表开发 免COM DLL注册发布(绿色发布) - C/S报表开发 net 6 使用 加密sqlite 如何修复identity 2的默认登录路由中的错误 android studio 生成 keystore 命令 identityserver4 对接钉钉 centos yum install 找不到软件包 docker 挂载文件出错 在linux 或docker中使用 system.drawing.common docker 发布到私有docker registry docker 不能访问外网 centos 网卡状态 ngxin 配置ssl Install Docker Compose docker registry
docker 启动 redis集群
stone8386 · 2022-07-06 · via 博客园 - stone8386

 docker run -d --name redis-node-1 --net host --privileged=true -v /var/docker/redis/share/redis-node-1:/data redis --cluster-enabled yes --appendonly yes --port 6381

 docker run -d --name redis-node-2 --net host --privileged=true -v /var/docker/redis/share/redis-node-2:/data redis --cluster-enabled yes --appendonly yes --port 6382

 docker run -d --name redis-node-3 --net host --privileged=true -v /var/docker/redis/share/redis-node-3:/data redis --cluster-enabled yes --appendonly yes --port 6383

 docker run -d --name redis-node-4 --net host --privileged=true -v /var/docker/redis/share/redis-node-4:/data redis --cluster-enabled yes --appendonly yes --port 6384

 docker run -d --name redis-node-5 --net host --privileged=true -v /var/docker/redis/share/redis-node-5:/data redis --cluster-enabled yes --appendonly yes --port 6385

 docker run -d --name redis-node-6 --net host --privileged=true -v /var/docker/redis/share/redis-node-6:/data redis --cluster-enabled yes --appendonly yes --port 6386

说明:

--net 使用宿主机的ip和端口, 默认

--privileged=true 获取宿主机root用户权限

--cluster-enabled yes 开启redis集群

--appendonly yes 开启持久化

--port 6386 redis端口号

docker exec -it redis-node-1 /bin/bash

redis-cli --cluster create 10.0.0.3:6381 10.0.0.3:6382 10.0.0.3:6383 10.0.0.3:6384 10.0.0.3:638\5 10.0.0.3:6386 --cluster-replicas 1

说明

--cluster=replicas 1 表示为每个master创建一个slave节点

查看集群状态

redis-cli -p 6381

cluster info

cluster nodes

redis-cli -p 6381 -c  

防止路由失效加参数 -c 并新增两个key

redis-cli --cluster check 10.0.0.3:6381

主从容错切换迁移

主从扩容

redis-cli --cluster add-node 10.0.0.3:6387 10.0.0.3:6381

6387是要作为master新增节点

6381是原来集群节点里面的领路人

重新分派槽号

redis-cli --cluster reshared 10.0.0.3:6381

redis-cli --cluster add-node 10.0.0.3:6388 10.0.0.3:6387 --cluster-slave --cluster-master-id xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

主从缩容

redis-cli --cluster del-node 10.0.0.3:6388 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

redis-cli --cluster reshared 10.0.0.3:6381

redis-cli --cluster del-node 10.0.0.3:6387 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

redis-cli --cluster check 10.0.0.3:6381

docker run -d -p 6379:6379 --name redis --privileged=true -v /var/docker/redis/redis.conf:/etc/redis/redis.conf -v /var/docker/data:/data redis redis-server /etc/redis/redis.conf