• docker技术快速实现前后端项目的集群化⑧docker部署redis集群


    docker技术快速实现前后端项目的集群化⑧docker部署redis集群

    获取基础镜像redis,并重命名为redis

    [root@server01 ~]# docker pull yyyyttttwwww/redis

    [root@server01 ~]# docker tag docker.io/yyyyttttwwww/redis redis

    创建新的网络net2,并且将redis集群运行在新的网络net2中

    [root@server01 ~]# docker network create --subnet=172.19.0.0/16 net2

    启动redis01容器

    [root@server01 ~]# docker run -it -d --name redis01 -p 5001:6379 --net=net2 --ip 172.19.0.2 redis /bin/bash

    [root@server01 ~]# docker exec -it redis01 /bin/bash

    root@7a30246ddad2:/# vim /usr/redis/redis.conf

    root@7a30246ddad2:/# cd /usr/redis/src/

    root@7a30246ddad2:/usr/redis/src# ./redis-server ../redis.conf

    编辑redis配置文件

    daemonize yes

    appendonly yes

    lua-time-limit 5000

    cluster-enabled yes

    cluster-config-file nodes.conf

    cluster-node-timeout 15000

    依次创建redis02/redis03/redis04/redis05/redis06节点,并进入容器中,启动redis程序

    docker run -it -d --name redis02 -p 5002:6379 --net=net2 --ip 172.19.0.3 redis /bin/bash

    docker run -it -d --name redis03 -p 5003:6379 --net=net2 --ip 172.19.0.4 redis /bin/bash

    docker run -it -d --name redis04 -p 5004:6379 --net=net2 --ip 172.19.0.5 redis /bin/bash

    docker run -it -d --name redis05 -p 5005:6379 --net=net2 --ip 172.19.0.6 redis /bin/bash

    docker run -it -d --name redis06 -p 50016:6379 --net=net2 --ip 172.19.0.7 redis /bin/bash

    # 示例

    [root@server01 ~]# docker exec -it redis02 /bin/bash

    root@0bcb0f08beeb:/# cd /usr/redis/src/

    root@0bcb0f08beeb:/usr/redis/src# ./redis-server ../redis.conf

    安装ruby环境通过ruby脚本创建redis集群

    root@7a30246ddad2:/etc/apt# cd /usr/redis/cluster/
    root@7a30246ddad2:/usr/redis/cluster# ./redis-trib.rb create --replicas 1 172.19.0.2:6379 172.19.0.3:6379 172.19.0.4:6379 172.19.0.5:6379 172.19.0.6:6379 172.19.0.7:6379

    测试集群

     

    停掉redis03看集群是否能正常主从切换,可以看到172.19.0.7从slave转换成了master

    Docker pause redis03

    再次启动redis03

    [root@server01 ~]# docker unpause redis03

    可以看到此时也不会发生切换

  • 相关阅读:
    MS SqlServer学习笔记(索引)
    Angular动态注册组件(controller,service...)
    如何成功发布一个MSMQ的Windows服务
    主流Web服务器一览
    .NET 创建Windows服务,及服务的安装卸载
    SQL Server 查询时间段内数据
    委托和事件
    类中实现 Dispose And Finalize
    使用 ODBC .NET 提供程序和 Visual C# .NET 执行 SQL 参数化存储过程
    Windows Form 中快捷键设置
  • 原文地址:https://www.cnblogs.com/reblue520/p/13410792.html
Copyright © 2020-2023  润新知