Linux搭建Redis集群

今天开始,我们着手搭建Redis集群,并实现客户端连接并操作Redis集群,不同于上一篇使用脚本搭建,我们使用更改配置文件的方法进行搭建

1.话不多说,首先,老样子在开始搭建集群之前,我想提醒一下,需要注意的是,redis3.0之后才支持集群,但redis3.0-redis5.0之间需要ruby环境的支撑,而redis6.x需要gcc版本在5.3以上,在搭建集群前需要检查自己的机器的gcc版本是否符合我所说的再进行搭建,可以通过该命令查看gcc版本,我机器的版本是5.4,机器呢是Ubuntu16.04,建议使用redis5或者redis6的版本,能更快速的搭建好集群,更贴近版本

gcc -v

在这里插入图片描述
2.下载redis的压缩包,我这里推荐你们官网地址,里面有redis的所有版本,可以选择相应版本下载

http://download.redis.io/releases/

3.我这里使用的是redis5.x的版本
在这里插入图片描述
4.使用命令解压: tar -zxvf redis-5.0.2.tar.gz,进入解压后的文件夹使用命令:make编译一下(注:如果make编译失败并且报 jemalloc/jemalloc.h:没有那个文件中目录 错误,这个很正常,第一次使用make编译会有这个问题,使用:make MALLOC=libc 该命令可以解决),编译好后进入src目录,使用make install PREFIX=/usr/local/redis(注:也可以指定其他目录,主要作用是将编译好后的可执行文件放到/usr/local/redis目录下),等待编译完成。
在这里插入图片描述
5.完成后返回上一级目录,将redis.conf移动到/usr/local/redis/etc/目录下,没有这个目录就创建,在/usr/local/redis/下新建redis-cluster文件夹,进入redis-cluster目录下,新建如下几个文件夹redis_6379,redis_6380,redis_6381,redis_6382,redis_6383,redis_6384,我的是单服务器下布置六个节点,如果有六台服务器做集群,那么只需要建一个文件夹

mkdir /usr/local/redis/redis-cluster/redis_6380 创建目录命令

在这里插入图片描述
6.将/usr/local/redis/etc/redis.conf 复制到这6个文件夹内

cp /usr/local/redis/etc/redis.conf  redis_6379/
cp /usr/local/redis/etc/redis.conf redis_6379/
cp /usr/local/redis/etc/redis.conf redis_6381/
cp /usr/local/redis/etc/redis.conf redis_6382/
cp /usr/local/redis/etc/redis.conf redis_6383/
cp /usr/local/redis/etc/redis.conf redis_6384/

7.修改这六个文件夹内的配置文件,我这里只修改一个配置文件,其他文件都是一样的修改,我修改redis_6380内的redis.conf文件,进入redis_6380文件夹,编辑redis.conf 文件
在这里插入图片描述
8.修改以下几个配置

#将bind注释掉或者改为0.0.0.0
#bind 127.0.0.1   
#port改为你配置的端口
port=6380
# 指定redis要用守护进程的方式启动
daemonize yes
# 开启集群
cluster-enabled yes
# 集群的配置文件    
cluster-config-file node-6380.conf  
#集群节点超时时间  
cluster-node-timeout 5000
#protect-mode:是为了禁止公网访问redis cache 需要关掉
protected-mode no
#配置集群映射的公网IP 这里要写公网ip,也就是外网能能访问的IP,必须要配置,不然外网无法访问集群
cluster-announce-ip 192.168.1.190 
# 配置集群映射的端口,要和上面端口相对应
cluster-announce-port 6380
# 配置集群映射的总线端口,开一个redis集群端口,就必须开一个总线端口,总线端口为端口+10000
cluster-announce-bus-port 16380
#开启AOF持久化策略
appendonly yes
#将端口改掉
pidfile /var/run/redis_6380.pid

9.按ESC退出编辑,按shift+:,再输入wq保存离开
在这里插入图片描述
10.接下来按照步骤8的步骤将其他几个配置文件都修改,修改完后,启动这些配置文件

/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6379/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6380/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6381/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6382/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6383/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/redis_6384/redis.conf

11.查看节点服务是否开启,使用命令ps aux |grep redis 查看
在这里插入图片描述
12.创建集群
使用命令
/usr/local/redis/bin/redis-cli --cluster create 服务器IP:port1 服务器IP:port1 服务器IP:port1 服务器IP:port1 服务器IP:port1 服务器IP:port1 --cluster-replicas 1
这是单服务器的伪集群模式,如果不同服务器,需要将这些服务器的IP和端口写上,注意:服务器IP为私网IP,也就是机子的IP地址
在这里插入图片描述
在这里插入图片描述
13.OK 测试集群是否可用
在这里插入图片描述
14.发现节点间可用自由跳转,集群就OK了,测试外网是否能访问(需要对这些端口开放端口)
在这里插入图片描述

Logo

更多推荐