首页 > 数据库 >3主3从redis集群扩缩容配置案例

3主3从redis集群扩缩容配置案例

时间:2022-10-31 14:11:56浏览次数:43  
标签:node -- 扩缩容 redis cluster 集群 docker yes

1、环境准备

#关闭防火墙
systemctl stop firewalld
#查看防火墙状态
systemctl status firewalld
#拉取redis:6.0.8镜像
docker pull redis:6.0.8

 

 2、新建6个docker容器redis实例

docker run -d --name redis-node-1 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381
 
docker run -d --name redis-node-2 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382
 
docker run -d --name redis-node-3 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383
 
docker run -d --name redis-node-4 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384
 
docker run -d --name redis-node-5 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385
docker run -d --name redis-node-6 --net host --privileged=true -v /Users/zhaoshuzhan/data/redis/share/redis-node-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386


  • 命令分步解释
  • docker run
  • 创建并运行docker容器实例
  • --name redis-node-6
  • 容器名字
  • --net host
  • 使用宿主机的IP和端口,默认
  • --privileged=true
  • 获取宿主机root用户权限
  • -v /data/redis/share/redis-node-6:/data
  • 容器卷,宿主机地址:docker内部地址
  • redis:6.0.8
  • redis镜像和版本号
  • --cluster-enabled yes
  • 开启redis集群
  • --appendonly yes
  • 开启持久化
  • --port 6386
  • redis端口号

3、进入容器构建6台机器构建主从集群关系

#进入容器
docker exec -it redis-node-1 /bin/bash
#构建关系
redis-cli --cluster create 192.168.111.99:6381 192.168.111.99:6382 192.168.111.99:6383 192.168.111.99:6384 192.168.111.99:6385 192.168.111.99:6386 --cluster-replicas 1

 

 4、登录某个阶段,查看集群和节点状态

#进入某个阶段
docker exec -it redis-node-6 /bin/bash
#登录redis
redis-cli -p 6386 #查看集群状态 cluster info #查看节点状态 cluster nodes

 5、主从容错切换迁移

#进入reidis容器
docker exec -it redis-node-6 /bin/bash
redis-cli --cluster check 192.168.111.99:6386

 

 主从关系为1-4,2-5,3-6

****node1宕机,node4成为新的master

docker stop redis-node-1
docker exec -it redis-node-2 /bin/bash
redis-cli -p 6382 -c
cluster nodes

****node1恢复,node1成为slave

docker start redis-node-1
cluster nodes

 

 

 

标签:node,--,扩缩容,redis,cluster,集群,docker,yes
From: https://www.cnblogs.com/zszitman/p/16843658.html

相关文章

  • Redis学习十一:Redis持久化
    文章目录​​一、RDB(RedisDataBase)​​​​1.1触发机制​​​​1.2如果恢复rdb文件!​​​​1.3优缺点​​​​二、AOF(AppendOnlyFile)​​​​2.1是什么​​​​2.2appen......
  • Redis学习四:测试性能
    文章目录​​一、使用自带测试工具redis-benchmark​​​​二、测试:100个并发连接100000请求​​一、使用自带测试工具redis-benchmarkredis-benchmark是一个压力测试工具......
  • 通过抓包研究redis连接问题记录
    一、研究问题1:redis配置文件设置了选项timeout后,是否会导致大量close_wait状态连接注:redis配置文件timeout选项说明如下#Closetheconnectionafteraclientisidle......
  • Redis和数据库双写情况下,客户端展示信息未及时生效
    问题现象:后端更新完数据库记录版本号后,前端展示的记录版本号仍然为老的版本号问题分析:客户端展示的版本号是从缓存中获取的,在更新后端数据库记录的时候,采用双写的方式,但......
  • Windows系统搭建基于k8s开发所需本地集群环境
    安装DockerDesktop去官网下载,新版已经比前几年好用多了安装前要去windows功能里边开启Hyper-V和适用于Linux的Windows子系统若安装完,启动显示乱码,打开管理员shell,执行......
  • Redis学习笔记
    Redisshodan:"product:Redis"shodan:product:"Rediskey-valuestore"fofa:protocol="redis"Redis基础Redis相关文章细数redis的几种getshell方法......
  • SpringBoot集成Redisson报错RedissonReactiveRedisConnection.close()
    SpringBoot集成redisson-spring-boot-starter报错:点击查看代码2022-10-3109:30:10.255WARN92312---[isson-netty-2-4]io.netty.util.concurrent.DefaultPromise......
  • 浅谈Redis与分布式锁
    后续进行补充,先放个链接在这,哈哈 https://zhuanlan.zhihu.com/p/378797329#:~:text=%E6%83%B3%E8%A6%81%E5%AE%9E%E7%8E%B0%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81%EF%BC......
  • 集群和分布式系统
    左:中心化中:去中心化右:分布式参考​​​中心化和去中心化,集群和分布式之间的区别和联系​​​​分布式系统的经典基础理论——中心化与去中心化​​​​分布式与集群的区......
  • 基于Cri-dockerd使用Kubeadm部署Kubernetes1.25集群
    1.前言介绍关于Kuebernetes的部署常用于部署K8s集群的工具和部署方式minikubekubeadm二进制包本文使用kubeadm部署方式K8s集群的部署有多种方式,而使用Kubeadm是......