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 5006: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
可以看到此时也不会发生切换
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了