• 使用DockerCompose部署Redis分片集群——整合SpringBoot


    今天来记录一下使用DockerCompose部署Redis分片集群的过程,前面写了几篇关于redis的博客了,这里就不再过多介绍了,直接上配置就好了

    1. version: "3.0"
    2. services:
    3. redisServer1:
    4. image: redis:6.2.4
    5. container_name: redis_server1
    6. volumes:
    7. - /home/redis/redis1/data:/data
    8. - /home/redis/redis1/logs:/logs
    9. - ./redis.conf:/redis.conf
    10. command:
    11. # 服务启动
    12. /bin/bash -c "redis-server /redis.conf --port 7001"
    13. #ports:
    14. # - 7001:7001
    15. network_mode: host
    16. redisServer2:
    17. image: redis:6.2.4
    18. container_name: redis_server2
    19. volumes:
    20. - /home/redis/redis2/data:/data
    21. - /home/redis/redis2/logs:/logs
    22. - ./redis.conf:/redis.conf
    23. command:
    24. # 服务启动
    25. /bin/bash -c "redis-server /redis.conf --port 7002"
    26. #ports:
    27. # - 7001:7001
    28. network_mode: host
    29. redisServer3:
    30. image: redis:6.2.4
    31. container_name: redis_server3
    32. volumes:
    33. - /home/redis/redis3/data:/data
    34. - /home/redis/redis3/logs:/logs
    35. - ./redis.conf:/redis.conf
    36. command:
    37. # 服务启动
    38. /bin/bash -c "redis-server /redis.conf --port 7003"
    39. #/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"
    40. #ports:
    41. # - 7001:7001
    42. network_mode: host
    43. redisServer4:
    44. image: redis:6.2.4
    45. container_name: redis_server4
    46. volumes:
    47. - /home/redis/redis4/data:/data
    48. - /home/redis/redis4/logs:/logs
    49. - ./redis.conf:/redis.conf
    50. command:
    51. # 服务启动
    52. /bin/bash -c "redis-server /redis.conf --port 7004"
    53. #/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"
    54. #ports:
    55. # - 7001:7001
    56. network_mode: host
    57. redisServer5:
    58. image: redis:6.2.4
    59. container_name: redis_server5
    60. volumes:
    61. - /home/redis/redis5/data:/data
    62. - /home/redis/redis5/logs:/logs
    63. - ./redis.conf:/redis.conf
    64. command:
    65. # 服务启动
    66. /bin/bash -c "redis-server /redis.conf --port 7005"
    67. #/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"
    68. #ports:
    69. # - 7001:7001
    70. network_mode: host
    71. redisServer6:
    72. image: redis:6.2.4
    73. container_name: redis_server6
    74. volumes:
    75. - /home/redis/redis6/data:/data
    76. - /home/redis/redis6/logs:/logs
    77. - ./redis.conf:/redis.conf
    78. command:
    79. # 服务启动
    80. /bin/bash -c "redis-server /redis.conf --port 7006"
    81. #/bin/bash -c "redis-server /usr/local/etc/redis/redis.conf"
    82. #ports:
    83. # - 7001:7001
    84. network_mode: host

    其中有一个redis.config配置文件。

    下载路径

    https://gitee.com/840312696/redis-demo/blob/%E5%88%86%E7%89%87%E9%9B%86%E7%BE%A4/%E6%96%87%E4%BB%B6/redis.conf

    使用docker-composer up -d启动之后 ,每个redis都是相互独立的 ,我们需要把他们加入集群

    需要进入到其中任意一个docker容器当中。

    查看容器

    docker ps

    进入到容器当中

    docker exec -it redis_server1 /bin/bash

    建立集群

    redis-cli --cluster create --cluster-replicas 1 192.168.21.69:7001 192.168.21.69:7002 192.168.21.69:7003 192.168.21.69:7004 192.168.21.69:7005 192.168.21.69:7006

     需要确认主从配置服务,输入yes

    这就搞定了

    查看集群状态

    redis-cli -p 7001 cluster nodes
     

     测试

    测试代码地址如下:

    https://gitee.com/840312696/redis-demo/tree/%E5%88%86%E7%89%87%E9%9B%86%E7%BE%A4/

    向redis中插入值

    从redis中查询值

     打印日志 

    从日志看集群已经实现了分部署,并且是读写分离的

  • 相关阅读:
    Tomcat
    阿里三面:MQ 消息丢失、重复、积压问题,如何解决?
    深入理解强化学习——多臂赌博机:增量式实现
    u盘文件损坏怎么恢复数据 U盘插上就让格式化是坏了吗?
    linux awk 命令使用详解
    设计模式之单例模式
    Excel的Index+MATCH组合使用方法
    kdxf speex
    yocto(六)——搭建yocto环境
    静态HTML网页设计作品——仿京东-海贼王(1页) HTML+CSS+JavaScript 学生DW网页设计作业成品 wweb前端期末大作业
  • 原文地址:https://blog.csdn.net/lp840312696/article/details/125891150