您现在的位置是:人工智能 >>正文
一台服务器上部署 Redis 伪集群
人工智能375人已围观
简介哈喽大家好,我是咸鱼。今天这篇文章介绍如何在一台服务器以 CentOS 7.9 为例)上通过 redis-trib.rb 工具搭建 Redis cluster 三主三从)。redis-trib.rb ...
哈喽大家好 ,台服我是器伪集咸鱼 。
今天这篇文章介绍如何在一台服务器(以 CentOS 7.9 为例)上通过 redis-trib.rb 工具搭建 Redis cluster (三主三从)。上部署redis-trib.rb 是台服一个基于 Ruby 编写的脚本 ,其功能涵盖了创建 、器伪集管理以及维护 Redis 集群的上部署各个方面。

值得注意的台服是,源码库随着时间的器伪集推移 ,一些较新版本的上部署 Redis 已经将 redis-trib.rb 标记为不推荐使用的工具。鉴于此,台服文章所采用的器伪集 Redis 版本为较老的 4.0.9 版本 。
对于较新版本的上部署 Redis,咸鱼建议采用 redis-cli 工具来进行集群的源码下载台服操作与管理,以确保与 Redis 的器伪集最新特性保持一致。
我们先把架构画出来 ,上部署这样后面部署的时候就很方便了。

需要注意的是,Redis Cluster 中,节点之间通过建立 TCP 连接 ,使用 gossip 协议来传播集群的建站模板信息,节点内部通信端口是服务端口 + 10000。
举个例子,启动 Redis 服务之后会有一个 6379 端口(对外端口)和一个 16379 端口(对内通信端口)。
开始部署
部署前准备首先创建 Redis 存储目录,用来存放 rdb 文件等 ,接着创建 pid 文件和日志文件存放目录:

我们先来安装 redis 以及相关依赖(需要能够访问到互联网):
复制# 安装相关依赖 yum install -y wget gcc gcc-c++ make tar openssl openssl-devel cmake # 安装到 /usr/local 下 cd /usr/local/ && wget https://download.redis.io/releases/redis-4.0.9.tar.gz # 解压缩 tar -xvf redis-4.0.9.tar.gz1.2.3.4.5.6.解压缩完毕之后我们进入目录开始编译安装 :

首先我们先来配置六个 Redis 服务的配置文件 :

配置文件中需要改动的配置项是下面几个 ,其他的高防服务器不变:

配置好之后,六个 Redis 服务依次启动:
复制/usr/local/redis-4.0.9/src/redis-server redis-6379.conf && /usr/local/redis-4.0.9/src/redis-server redis-26379.conf /usr/local/redis-4.0.9/src/redis-server redis-6380.conf && /usr/local/redis-4.0.9/src/redis-server redis-26380.conf /usr/local/redis-4.0.9/src/redis-server redis-6381.conf && /usr/local/redis-4.0.9/src/redis-server redis-26381.conf1.2.3. 搭建 Ruby 环境redis-trib.rb 是一个 Ruby 脚本 ,用于创建 、管理和维护 Redis 集群,它提供了一种命令行界面来执行各种集群操作,如添加节点、删除节点 、平衡数据分布等,如果要使用 redis-trib.rb 这个 Ruby 脚本来管理 Redis Cluster ,就需要安装 Ruby 解释器 。
先下载 rvm 工具(网络问题多试几次):
复制#1.下载密钥 curl -sSL https://rvm.io/mpapis.asc | gpg2 --import - curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import - #2.下载安装包(网络问题多试几次) curl -L get.rvm.io | bash -s stable1.2.3.4.5.
PS:如果安装 ruby 之后使用 redis-trib.rb 工具发现报错:

根据提示可以知道 redis-trib.rb 脚本无法找到 redis 模块,导致加载失败,这通常是因为系统中缺少了所需的 Ruby Redis 模块或模块的版本问题 。
运行以下命令安装 Redis Gem 模块:
复制# 安装 redis 模块,是 redis-trib.rb 脚本所需的依赖 gem install redis1.2. 创建 Redis 集群创建集群(--replicas 1 表示指定每个 master 有一个 slave) :
复制cd /usr/local/redis-4.0.9/ && ./src/redis-trib.rb create --replicas 1 \ 192.168.149.131:6379 192.168.149.131:26379 192.168.149.131:6380 192.168.149.131:26380 192.168.149.131:6381 192.168.149.131:263811.2.
由上图可以看到:

验证
创建集群之后我们简单验证一下:写入一个数据,可以看到数据重定向到了 master 3:

然后我们在 slave 3 上查看有没有这个数据,模板下载是否同步完毕 :

Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“信息技术视野”。http://www.bziz.cn/html/261e8999649.html
相关文章
Gartner总结三大云安全实施建议 附重要安全工具及风险评估方法
人工智能Gartner预测:到2023年,主流的云服务提供商出现重大安全事件的概率将非常低,99%以上的云安全问题都是由客户的过错引起的。而到2024年,利用云基础设施的可编程性来改进云上工作负载的安全,将展 ...
【人工智能】
阅读更多使用MacU盘安装Windows7(详细教程及步骤)
人工智能在使用苹果电脑的用户中,有时需要安装Windows操作系统来满足特定的需求。本文将介绍如何使用MacU盘来安装Windows7操作系统,帮助读者顺利完成安装。1.准备工作:获取所需材料与软件在开始之前 ...
【人工智能】
阅读更多龙芯全新发布3C5000服务器处理器,用自主架构演绎超强算力
人工智能提到CPU,我想大部分人都会首先想到x86和ARM架构。的确,在芯片领域,尤其是企业级市场中,x86一枝独秀,几乎处于垄断地位。经历过中兴与华为事件之后,让国人再次感受到“缺芯之痛”。近几年,以龙芯 ...
【人工智能】
阅读更多