千家信息网

CentOS6.5如何搭建Redis3.2.8单机分布式集群

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍了CentOS6.5如何搭建Redis3.2.8单机分布式集群,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最近在服务
千家信息网最后更新 2026年11月04日CentOS6.5如何搭建Redis3.2.8单机分布式集群

这篇文章主要介绍了CentOS6.5如何搭建Redis3.2.8单机分布式集群,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

最近在服务器上搭建了一套Redis3.0伪分布式集群,发现一个问题,就是Shell脚本编写能力和运维工具的重要性亟待提高。

集群环境安装

1.安装Redis

$ cd /usr/local #安装目录$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz$ tar xzf redis-3.2.8.tar.gz$ mv redis-3.2.8/ redis$ cd redis$ make$ make install

注意:官方给的命令少了make install,导致redis-server只能在redis的src目录下使用

2.安装Ruby&rubygems

$ yum install ruby ruby-devel rubygems

3.创建集群环境

创建集群需要的目录[至少需要6个,3个master,3个slave,公式6+2N]

$ mkdir -p /usr/local/redis/cluster/16001/$ mkdir -p /usr/local/redis/cluster/16002/$ mkdir -p /usr/local/redis/cluster/16003/$ mkdir -p /usr/local/redis/cluster/16004/$ mkdir -p /usr/local/redis/cluster/16005/$ mkdir -p /usr/local/redis/cluster/16006/

复制redis.conf到每个节点下

$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16001/redis.conf$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16002/redis.conf$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16003/redis.conf$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16004/redis.conf$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16005/redis.conf$ cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16006/redis.conf

然后修改每个节点下的redis.conf,主要修改内容如下

port <端口>daemonize yescluster-enabled yescluster-config-file nodes.confcluster-node-timeout 5000logfile "redis-server.log"appendonly yes

4.远程访问

①远程访问配置

如果要远程访问,需要修改redis.conf中的bind

默认是127.0.0.1回环地址,如果要远程访问,需要修改成局域网地址 或者 修改成 0.0.0.0,当然也可以使用双地址模式,比如我的局域网地址是192.168.12.213,此外,服务器上的ip一般是固定的,那么可以修改成如下方式

$ bind 192.168.12.213 127.0.0.1 #推荐$ bind 0.0.0.0 #不推荐

具体请参考:Redis开启远程登录连接

②.开放防火墙端口

$ service iptables status #查看防火墙状态$ iptables -I INPUT -p tcp --dport 16001 -j ACCEPT$ iptables -I INPUT -p tcp --dport 16002 -j ACCEPT$ iptables -I INPUT -p tcp --dport 16003 -j ACCEPT$ iptables -I INPUT -p tcp --dport 16004 -j ACCEPT$ iptables -I INPUT -p tcp --dport 16005 -j ACCEPT$ iptables -I INPUT -p tcp --dport 16006 -j ACCEPT

④telnet链接

telnet 192.168.12.213 16001

5.启动Redis实例

#分别启动这6个redis实例(此时,节点均以Redis Cluster的方式运行,但并没有自动构建集群,因为还处于"我不认识你,你不属于我"的状态,它们每个都是孤零零的Redis节点,或者说只包含了一个节点的集群)

$ cd /usr/local/redis/cluster/16001 && redis-server redis.conf > redis-server.log 2>&1 &$ cd /usr/local/redis/cluster/16002 && redis-server redis.conf > redis-server.log 2>&1 &$ cd /usr/local/redis/cluster/16003 && redis-server redis.conf > redis-server.log 2>&1 &$ cd /usr/local/redis/cluster/16004 && redis-server redis.conf > redis-server.log 2>&1 &$ cd /usr/local/redis/cluster/16005 && redis-server redis.conf > redis-server.log 2>&1 &$ cd /usr/local/redis/cluster/16006 && redis-server redis.conf > redis-server.log 2>&1 &

命令中的 2>&1表示标准错误流输入到标准输出流中,也就是输入到每个节点的redis-server.log中,至于最后的 &表示是否后台启动,在linux上redis-server本身就是后台启动,因此这个 & 可以不加

当然,我们可以通过 tail命令监听每个redis-server.log的变化

tail -f /usr/local/redis/cluster/16002/redis-server.log

上面的所有redis启动之后,我们可以通过如下命令中的任何一条命令进行检测

$ netstat -lntp | grep 'redis*'$ ps -e | grep 'redis*'$ lsof -i 4 TCP$ hping --scan 16001-16006 -S 192.168.12.213$ nmap -sS 192.168.12.213 -p 1600-16007

创建集群

1.安装redis gem插件

我们需要安装支持redis的gem工具,否则会报错

$ gem install redis --version 3.0.0

注意:gem install redis --version 3.0.0 失败的话,需要修改一下gem的源

gem sources --remove https://rubygems.org/gem sources -a https://ruby.taobao.org/

2.创建集群

让上面的实例互相通讯(1 表示为每个master分配一个salve)

$ /usr/local/redis/src/redis-trib.rb create --replicas 1 \127.0.0.1:16001 \127.0.0.1:16002 \127.0.0.1:16003 \127.0.0.1:16004 \127.0.0.1:16005 \127.0.0.1:16006

3.集群信息查看

集群创建完成,可以使用下面的命令查看相关信息:

#查看集群目前状况$ redis-cli -c -p 16001#关闭其中一个节点$ redis-cli -p 16001 shutdown#打印集群的信息$ redis-cli cluster info#列出集群当前已知的所有节点(node),以及这些节点的相关信息。$ redis-cli cluster nodes

输出的信息:

127.0.0.1:16002 master - 0 1439345771781 2 connected 5461-10922127.0.0.1:16003 master - 0 1439345772286 3 connected 10923-16383127.0.0.1:16001 myself,master - 0 0 1 connected 0-5460127.0.0.1:16004 slave 2566ea486fc30c911aafaf1b71130fd24a38dba9 0 1439345772791 4 connected127.0.0.1:16005 slave edea1e50bd224c6895b1904bce79e83fa07d6017 0 1439345772286 5 connected127.0.0.1:16006 slave ab06e033698627ce0ecd4c8c645585a1ae70cc84 0 1439345771276 6 connected

从上面的信息可以明显看到哪些是主节点、从节点。

4.保存集群信息

将节点的配置文件保存到硬盘里

$ redis-cli cluster saveconfig

连接端口(可以使用其他端口测试16001 -> 16006)

$ redis-cli -c -p 16001$ 127.0.0.1:16001> set key001 v001$ 127.0.0.1:16001> get key001

选举端口检测

如果细心的话,你就会发现,在我们创建了集群之后,启动了一些新的端口

通过如下命令

netstat -lntp | grep 'redis'

你就会找到如下端口,这些端口是用来进行选举和主备切换的

26001 26002 26003 26004 26005 26006

感谢你能够认真阅读完这篇文章,希望小编分享的"CentOS6.5如何搭建Redis3.2.8单机分布式集群"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

集群 节点 信息 命令 端口 地址 篇文章 面的 分布式 实例 目录 单机 可以通过 后台 就是 局域 局域网 工具 方式 服务器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网与科技 互联网络科技 互联网科技名片 互联网科技产业 上海互联网科技有限公司 易互联网科技有限公司 善班互联网科技有限公司 上海致骋互联网科技 互联网高科技企业 顺网科技2021年互联网排名 创业天下互联网科技有限公司 昊天互联网科技有限公司 互联网科技公司实习生 中国航天科技大学国际工业互联网 浙南科技城互联网大厦建设工程 中国互联网有什么科技 工业互联网科技创业 互联网科技手抄报图片 中国互联网公司的科技投入 第三届互联网大会安防黑科技 涨乐互联网科技 美国互联网科技巨头监管 阿里巴巴算科技企业还是互联网 互联网校园科技培训 重庆互联网医院沙龙医盟信息科技 链环科技传统企业怎么转型互联网 工业互联网科技成果转化 广东鹅鹅鹅互联网科技有限公司 互联网金融金融科技 科技发展第三阶段互联网时代
0