Redis 集群部署

正文:

Redis集群搭建

版本

系统: CentOS 7.4 Redis: redis-4.0.2 ruby: 2.4.2

安装gcc

rpm -ivh gcc-c++-4.8.5-16.el7.x86_64.rpm --nodeps
Preparing...                          ################################# [100%]
Updating / installing...
   1:gcc-c++-4.8.5-16.el7             ################################# [100%]

安装Redis

cd /opt 
tar xzf redis-4.0.2.tar.gz
cd redis-4.0.2
make

如果因为编译失败可以使用make distclean

创建节点

  • 创建redis-cluster目录
mkdir /opt/redis-4.0.2/redis-cluster
cd /opt/redis-4.0.2/redis-cluster
mkdir 7100 7101 7102
  • 分别修改这三个配置文件,把如下redis.conf 配置内容粘贴进去
vi 7100/redis.conf
vi 7101/redis.conf 
vi 7102/redis.conf
  • redis.conf
port 7100
bind 192.168.103.14
daemonize yes
pidfile /var/run/redis_7100.pid
cluster-enabled yes
cluster-config-file nodes_7100.conf
cluster-node-timeout 20100
appendonly yes
  • 配置说明
#端口7100,7101,7102
port 7100

#默认ip为127.0.0.1,需要改为其他节点机器可访问的ip,否则创建集群时无法访问对应的端口,无法创建集群
bind 192.168.103.14

#redis后台运行
daemonize yes

#pidfile文件对应7100,7101,7102
pidfile /var/run/redis_7100.pid

#开启集群,把注释#去掉
cluster-enabled yes

#集群的配置,配置文件首次启动自动生成 7100,7101,7102          
cluster-config-file nodes_7100.conf

#请求超时,默认15秒,可自行设置 
cluster-node-timeout 20100    
        
#aof日志开启,有需要就开启,它会每次写操作都记录一条日志
appendonly yes
  • 在另外一台机器上重复以上操作,目录和端口改为7103、7104、7105

启动集群

# 第一台机器上执行 3个节点
for((i=0;i<=2;i++)); do /opt/redis-4.0.2/src/redis-server /opt/redis-4.0.2/redis-cluster/710$i/redis.conf; done

#第二台机器上执行 3个节点
for((i=3;i<=5;i++)); do /opt/redis-4.0.2/src/redis-server /opt/redis-4.0.2/redis-cluster/710$i/redis.conf; done

检查服务

ps -ef | grep redis		   //redis是否启动成功
netstat -tnlp | grep redis  //监听redis端口

搭建集群

现在我们已经有了六个正在运行中的 Redis 实例,通过使用 Redis 集群命令行工具 redis-trib , 编写节点配置文件的工作可以非常容易地完成: redis-trib 位于 Redis 源码的 src 文件夹中, 它是一个 Ruby 程序, 这个程序通过向实例发送特殊命令来完成创建新集群, 检查集群, 或者对集群进行重新分片(reshared)等工作。所以我们先来安装ruby。

安装ruby

通过yum安装的ruby往往版本较低,这里使用安装包安装

下载地址

tar -xvzf ruby-2.4.2.tar.gz
cd ruby-2.4.2
./configure
make
sudo make install

安装完成后,可以

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏名山丶深处

CentOS快速安装Redis

2359
来自专栏Python

CentOS7为firewalld添加开放端口及相关操作

启动一个服务:systemctl start firewalld.service 关闭一个服务:systemctlstop firewalld.service ...

3553
来自专栏IT笔记

Redis使用过程中的一些常用命令汇总

最近购买了Redis做论坛session存储和缓存实现,本身项目中也使用了Redis做分布式集群session管理,抽空整理一下常用到的命令集合(随时更新)。 ...

2744
来自专栏技术博文

Nginx 日志文件 access_log 详解

Module ngx_http_log_module nginx 日志相关指令主要有两条, 一条是log_format,用来设置日志格式, 另外一条是acces...

3145
来自专栏林冠宏的技术文章

浅谈 php 采用curl 函数库获取网页 cookie 和 带着cookie去访问 网页的方法!!!!

由于近段时间帮朋友开发一个能够查询正方教务系统的微信公众平台号。有所收获。这里总结下个人经验。 开讲前,先吐槽一下新浪云服务器,一个程序里的   同一个函数  ...

90310
来自专栏Python攻城狮

Python开发环境搭建1.下载及安装2.一台PC安装多个python版本3.python2和python3版本共存的配置4. pip安装模块时执行的命令5.给python安装第三方模块6.查看pip

现在python3是趋势,很多公司已经逐渐使用python3,但是对于爬虫来说,我们现在仍需用2.7,所以现在我们安装Python2.7.9版本

1033
来自专栏PHP实战技术

如何运行vue项目

从node.js官网下载并安装node,安装过程很简单,一路“下一步”就可以了(傻瓜式安装)。

37910
来自专栏程序猿

Windows环境Java开发环境搭建

本文讲解在Windows操作系统下如何搭建Java环境变量。 一、首先下载JDK安装包。 二、安装。 三、配置Java环境变量。 四、运行CMD测试是否安装成功...

3655
来自专栏大数据-Hadoop、Spark

Linux更换jdk版本,java -version还是原来的版本JDK还是之前的版本

安装JDK 1.上传jdk-7u80-linux-x64.tar.gz到Linux上 2.解压jdk到/usr/local目录 tar -zxvf jdk-...

4537
来自专栏进击的君君的前端之路

git

1835

扫码关注云+社区

领取腾讯云代金券