• Docker下Redis集群伸缩


    Redis集群伸缩

    Redis集群伸缩是在已经搭建完成的Redis集群中进行,对集群进行添加和删除实例。

    Redis分片集群搭建Docker下搭建Redis分片集群_呆萌很的博客-CSDN博客

    创建新的redis实例

    创建一个文件夹

    mkdir 7004

    启动redis实例

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

     添加新节点到redis

    添加作为master节点

    1. #add-node  new_host:new_port existing_host:existing_port
    2. redis-cli --cluster add-node 192.168.19.128:7004 192.168.19.128:7001

    一个节点添加到集群里,第一个参数为新节点的ip:port,第二个参数为集群中任意一个已经存在的节点的ip:port

    查询新增节点

    redis-cli -p 7001 cluster nodes

     新增节点成功,但是缺少插槽。

    转移插槽

    redis-cli --cluster reshard 192.168.19.128:7001

     输入转移的插槽数量,如:3000

     输入接收的ID,ID可以在上面查询节点中找到 如:10911498af7d9e6d5a0024b1b66e9e1b60e89a1e

     输入插槽来源的节点,如:a4657cc0798026a3cf5009aa6035c0a0e8c8a661

     最后输入done,确认开始转移。

    查询分配后的插槽

     删除节点

    删除节点需要把该节点中的所有插槽转移到别的节点中,按照上面步骤操作。

    查询想要删除节点的ID

    redis-cli -p 7001 cluster nodes
    1. # del-node host:port node_id
    2. redis-cli --cluster del-node 192.168.19.128:7001 node_id

    至此redis集群伸缩,添加和删除节点成功。

  • 相关阅读:
    嵌入式分享合集117
    vue中v-for和v-if同时使用的解决办法
    java面试题总结
    轻量级音乐服务器LMS
    Ubuntu - 查看系统信息
    为什么ArcGIS添加的TIFF栅格数据是一片纯色
    Docker - compose容器编排工具 - 搭建一个自己的博客
    Juc并发编程学习笔记---狂神说(全)
    问答雕虫1
    react老项目 升级react-router
  • 原文地址:https://blog.csdn.net/qq_29385297/article/details/126797079