首页 > 数据库 >基于Docker的Redis集群配置(1)

基于Docker的Redis集群配置(1)

时间:2023-09-14 11:34:13浏览次数:43  
标签:docker -- Redis redis cluster 集群 Docker data yes

拉取redis镜像

docker pull redis:6.0.8

基于Docker的Redis集群配置(1)_redis

启动6个docker容器,名称与端口不可重复

# --cluster-enabled yes #开启redis集群
# --net host   #使用宿主机的IP和端口
# --appendonly  yes  #开启持久化
# --name   redis-1	#自定义容器名字
docker run -d --name redis-1 --network host --privileged=true -v /data/redis-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381

docker run -d --name redis-2 --network host --privileged=true -v /data/redis-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382

docker run -d --name redis-3 --network host --privileged=true -v /data/redis-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383

docker run -d --name redis-4 --network host --privileged=true -v /data/redis-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384

docker run -d --name redis-5 --network host --privileged=true -v /data/redis-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385

docker run -d --name redis-6 --network host --privileged=true -v /data/redis-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386

查看容器启动是否成功

基于Docker的Redis集群配置(1)_docker_02

构建主从关系

# --cluster-replicas 1   #为每个master创建一个slave节点
#进入redis-1容器
[root@docker_server ~]# docker exec -it redis-1 /bin/bash
[root@docker_server:/data]# redis-cli --cluster create 10.10.10.12:6381 10.10.10.12:6382 10.10.10.12:6383 10.10.10.12:6384 10.10.10.12:6385 10.10.10.13:6386 --cluster-replicas 1
M为主,S为从

slots:后是分配的固定槽位,当写入数据时会根据默认算法自动写入到对应槽位的集群节点中

基于Docker的Redis集群配置(1)_redis_03

查看集群状态

#进入任意节点中
redis-cli -p 6381
#查看集群状态信息
127.0.0.1:6381> cluster info
#查看节点信息
127.0.0.1:6381> cluster nodes

如下图所示,集群关系一一对应

基于Docker的Redis集群配置(1)_redis_04


标签:docker,--,Redis,redis,cluster,集群,Docker,data,yes
From: https://blog.51cto.com/qclr/7468368

相关文章

  • lua操作redis
    参考:https://blog.csdn.net/weixin_54721305/article/details/125648123实现分布式锁依赖<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId>......
  • Docker介绍
    Docker介绍什么是dockerDocker最初是dotCloud公司创始人SolomonHykes在法国期间发起的一个公司内部项目,它是基于dotCloud公司多年云服务技术的一次革新。在2013年底,dotCloud公司决定改名为Docker。Docker最初是在Ubuntu12.04上开发实现的;RedHat则从RHEL6.5......
  • Docker 使用
    Docker使用1.常见命令2.数据卷命令  3.自定义镜像命令   4.自定义网络命令  5.测试脚本dockerpsdockerimagesdockerrun-d--nameweb1-p8888:8888--networkhmallweb1:1.0--restart=alwaysdockerbuild-tweb1:1.0.dockerinspectqui......
  • docker 容器的导出和导入
    环境win10导出容器可以看出来导出的文件在当前ps目录导入容器接下来,我把这个tar文件拷到ubunto服务器尝试一下导入将文件上传到服务器服务器当前环境服务器当前没有任何容器执行导入命令结果出现如下报错:Errorresponsefromdaemon:Untarexitstatus1archi......
  • 《Docker与Kubernetes容器运维实战》简介
    #好书推荐##好书奇遇季#《Docker与Kubernetes容器运维实战》已经出版。本书帮助读者系统掌握Docker与K8s运维技能。 本书内容 本书分两部分系统介绍Docker与Kubernetes的运维技术。(1)Docker部分包括:全面认识Docker、初步体验Docker、Docker基本管理、Docker仓库、数据管理、......
  • 达人探店业务之点赞、排行榜功能(Redis经典场景)
    达人探店业务之点赞、排行榜功能(Redis经典场景)初始代码:@GetMapping("/likes/{id}")publicResultqueryBlogLikes(@PathVariable("id")Longid){//修改点赞数量blogService.update().setSql("liked=liked+1").eq("id",id).update();ret......
  • 学习笔记之Redis消息队列-基于Stream的消息队列
    学习笔记之Redis消息队列-基于Stream的消息队列Stream是Redis5.0引入的一种新数据类型,可以实现一个功能非常完善的消息队列。其实只需要知道写入消息队列的命令和读取消息队列的命令就行了写入消息队列:XADD读取消息队列的方式之一:XREAD在业务开发中,我们可以循环的调用......
  • 深入研究消息队列05 各消息队列集群架构对比
    23RabbitMQ的集群架构集群构建数据可靠性身份认证资源鉴权可观测性......
  • Redis7 10大数据类型(Redis列表)
    一、常用二、单key多value三、简单说明一个双端链表的结构,容量是2的32次方减1个元素,大概40多亿,主要功能有push/pop等,一般用在栈、队列、消息队列等场景。left、right都可以插入添加;如果键不存在,创建新的链表;如果键已存在,新增内容;如果值全移除,对应的键也就消失了。它的底层实......
  • ubuntu redis安装
    1.1更新仓库sudoaptupdate1.2使用apt从官方Ubuntu存储库来安装Redissudoapt-getinstallredis-server二、设置密码2.1打开Redis配置文件redis.confsudovi/etc/redis/redis.conf2.2找到#requirepassfoobared这一行,将注释符号#去掉,将后面修改成自己的密......