Docker 搭建Redis Cluster 集群

这篇具有很好参考价值的文章主要介绍了Docker 搭建Redis Cluster 集群。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境:

centos7

redis:7.0.5 三主三从,六个节点

一、下载redis镜像

docker pull redis:7.0.5

二、创建虚拟网卡

docker network create redis-cluster

# 查看创建的Docker网卡
docker network ls

Docker 搭建Redis Cluster 集群,docker,redis,容器

网卡类型为bridge桥接类型

三、准备redis配置文件 redis.conf

port ${port}
requirepass 123456
masterauth 123456
bind 0.0.0.0
protected-mode no
daemonize no
appendonly yes
cluster-enabled yes 
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip  服务器ip地址
cluster-announce-port ${port}
cluster-announce-bus-port 1${port}

配置解释:

  • port:节点端口;
  • requirepass:设置密码,访问时需要验证
  • masterauth: 设置主从复制密码
  • protected-mode:保护模式,默认值 yes,即开启。开启保护模式以后,需配置 bind ip 或者设置访问密码;关闭保护模式,外部网络可以直接访问;
  • daemonize:是否以守护线程的方式启动(后台启动),默认 no;
  • appendonly:是否开启 AOF 持久化模式,默认 no;
  • cluster-enabled:是否开启集群模式,默认 no;
  • cluster-config-file:集群节点信息文件;
  • cluster-node-timeout:集群节点连接超时时间;
  • cluster-announce-ip:集群节点 IP
    • 注意: 如果你想要你的redis集群可以供外网访问,这里需要填写服务器的外网IP地址
    • 如若为了安全,只是在服务器内部进行访问,那么就填写服务器的内网IP地址,外网客户端重定向到该内网IP就无法访问
  • cluster-announce-port:集群节点映射端口;
  • cluster-announce-bus-port:集群节点总线端口。
  • 注意,关于Redis Cluster 集群官网两个TCP端口的说明:Docker 搭建Redis Cluster 集群,docker,redis,容器

将确认端口和服务器ip地址的配置文件放入/home/redis/node-${port}/conf/redis.conf。 

例如:

port 6381
requirepass 123456

masterauth 123456
bind 0.0.0.0
protected-mode no
daemonize no
appendonly yes
cluster-enabled yes 
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip  192.168.56.101
cluster-announce-port 6381
cluster-announce-bus-port 16381

四、配置/etc/sysctl.conf

vi /etc/sysctl.conf

在最后一行添加如下配置:

net.core.somaxconn = 10240

vm.overcommit_memory=1

 保存后输入:sysctl -p 使配置立即生效。

五、启动容器

 docker run -it -d -p ${port}:${port} -p 1${port}:1${port} 
    \--privileged=true -v /home/redis/node-${port}/conf/redis.conf:/usr/local/etc/redis/redis.conf 
    \--privileged=true -v /home/redis/node-${port}/data:/data 
    \--restart always --name redis-${port} --sysctl net.core.somaxconn=10000 --net redis-cluster 
    \redis:7.0.5 redis-server /usr/local/etc/redis/redis.conf

例如:docker run -it -d -p 6379:6379 -p 16379:16379 --privileged=true -v /home/redis/node-6379/conf/redis.conf:/usr/local/etc/redis/redis.conf --privileged=true -v /home/redis/node-6379/data:/data --restart always --name redis-6379 --sysctl net.core.somaxconn=10000 --net redis-cluster redis:7.0.5 redis-server /usr/local/etc/redis/redis.conf

六、 创建Redis Cluster集群

随意进入一个redis节点:

docker exec -it redis-6379 /bin/bash

进入redis 6379节点之后执行如下命令: 

redis-cli -a 之前设置的密码 --cluster create 内网IP地址:6379 内网IP地址:6380 内网IP地址:6381 内网IP地址:6382 内网IP地址:6383 内网IP地址:6384 --cluster-replicas 1

例如:

redis-cli  -a 123456 --cluster create 192.168.56.101:6379 192.168.56.101:6380 192.168.56.101:6381 192.168.56.101:6382 192.168.56.101:6383 192.168.56.101:6384 --cluster-replicas 1 

出现下图所示表示创建成功:

Docker 搭建Redis Cluster 集群,docker,redis,容器文章来源地址https://www.toymoban.com/news/detail-699467.html

到了这里,关于Docker 搭建Redis Cluster 集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Redis集群(cluster模式)搭建

    目录 1、什么是集群 2、为什么使用 3、集群连接 4、redis cluster 如何分配这六个节点? 5、集群搭建: Redis 集群(包括很多小集群)实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N,即一个小集群存储1/N的数据,每

    2024年02月15日
    浏览(35)
  • docker搭建redis集群

    1、配置文件 使用docker搭建redis集群必须要配置的内容,搭建几个集群,就需要几个配置文件。 配置文件中本节点 IP(cluster-announce-ip)、 端口(cluster-announce-port)、 总线端口(cluster-announce-bus-port) 需要单独配置,配置为 实际可访问到服务的地址 ,即docker映射后的端口。

    2024年03月15日
    浏览(34)
  • docker搭建redis集群(三主三从)及重启redis集群

    从远程仓库先拉取一下redis的镜像文件,如果已经提前安装过镜像的,可以跳过此步骤: 看到图上标识,就说明当前镜像文件已经下载好了。 通过镜像文件,分别 启动6台redis容器实例 ,并且 数据卷挂载到宿主机 上(保障容器被意外删除后数据不丢失): 每一台实例都是按

    2024年04月16日
    浏览(48)
  • 【2023】Redis cluster集群模式搭建

    Redis Cluster是Redis提供的一种分布式方案,可以将数据分散到多个节点上进行存储和处理,提高数据的可用性和性能。Redis Cluster采用哈希槽的方式来分片数据,将整个数据集分为 16384 个哈希槽,每个节点负责一部分哈希槽的数据存储和处理,节点之间通过gossip协议进行信息交

    2024年02月08日
    浏览(39)
  • docker下搭建redis集群

    准备好Linux系统机器,并安装好docker,阅读这篇文章前请先了解清楚docker的基本知识并且会熟悉运用docker的常用命令。学习docker基础知识可以参考这篇博文 安装好并启动docker后就可以开始搭建redis了 本篇文章我们安装redis6.0.6版本,执行以下命令直接下载redis6.0.6版本镜像 安装

    2024年02月04日
    浏览(26)
  • 使用Docker搭建Redis主从集群

    欢迎来到 请回答1024 的博客 🍓🍓🍓欢迎来到 请回答1024的博客 关于博主 : 我是 请回答1024 ,一个追求数学与计算的边界、时间与空间的平衡,0与1的延伸的后端开发者。 博客特色 : 在我的博客中,开设了如下专栏( 点击可以进入专栏奥~ ): Java、MySQL、Redis、Spring、SpringB

    2024年04月24日
    浏览(33)
  • 使用Docker-Compose搭建Redis集群

    3主+3从 由于仅用于测试,故我这里只用1台服务器进行模拟 redis列表 在server上创建一个目录用于存放redis集群部署文件。这里我放的路径为/root/redis-cluster 在/opt/docker/redis-cluster目录下创建redis-1,redis-2,redis-3,redis-4,redis-5,redis-6文件夹 注意:port值不能都为6379,根据上面redis列表设

    2024年02月15日
    浏览(29)
  • Redis【性能 02】Redis-5.0.14伪集群和Docker集群搭建及延迟和性能测试(均无法提升性能)

    使用的是腾讯的云服务器 1核心2G内存50G存储 ,系统信息如下: 每个Redis节点必须要有一个备机,例如搭建3个节点的集群就要有6个Redis实例。 数据按照slots分布式存储在不同的Redis节点上,节点中的数据可共享,可以动态调整数据的分布。 可扩展性强,可以动态增删节点 ,最

    2024年02月05日
    浏览(35)
  • docker搭建redis三主三从集群,及其常见问题解决

    每个配置文件都要修改对应的端口 容器内端口不能都是是6379,集群总线接口是端口号+10000 端口号与network_mode: \\\"host\\\"不能一起配置,出现下述问题 “主机”网络模式与端口绑定不兼容 问题,具体看github,有对应解释。 如果一直卡在 Waiting for the cluster to join ,那一般是端口问题

    2024年02月11日
    浏览(41)
  • 使用Docker搭建一个“一主两从”的 Redis 集群(超详细步骤)

    1、Redis 单机版安装 1.1 拉取 Redis 首先从 docker hub 拉取 Redis 镜像,这里拉取 7.0 版。 1.2 创建数据卷目录 首先要在宿主机/root 目录中创建一个目录 redis,将来用于存放外挂文件 redis.conf。 使用rz命令上传一份redis.conf: 1.3 修改 redis.conf 修改配置文件: 1.解除 IP 绑定 将 bind 行注释

    2024年02月21日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包