Linux配置Redis-集群

<< Click to Display Table of Contents >>

当前位置:  产品安装 > 常见问题 > Linux安装Redis 

Linux配置Redis-集群

复制链接

1. 概述

部署 Redis 集群至少需要 3 台服务器,参考 环境准备,准备 3 台 Linux 服务器,每台服务器上部署 2 个节点,3 台服务器运行 6 个 Redis 实例,组成一个三主三的 Redis集群。

注意:

用户若需要搭建 Web 集群和 Redis 集群,其中 Web 节点和 Redis 节点可以共存在一台机器上,不需要准备单独的机器安装 Redis 节点。

需要部署更多节点的 Redis 集群可以基于此方案类推。

2. 服务器上创建两个 Redis 节点

注意:下文中加粗内容需要用户替换成自己的内容。

2.1 安装 gcc 编译器

安装 Redis 时需对源码包编译,此步骤依赖 gcc 编译器,如果没有 gcc 环境,则需要自行安装,联网安装命令 yum install gcc gcc-c++ ,如下所示:

gcc -v #检查是否有 gcc 编译器

2.2 下载Redis

官网下载:http://download.redis.io/releases/

2.3 安装 Redis

mkdir /usr/redis # 创建 Redis 目录

cd /usr/redis  # 进入目录

# 将 Redis 安装包传输到该目录下 #

tar -zxvf redis-5.0.4.tar.gz # 解压安装包

cd /usr/redis/redis-5.0.4 # 进入解压目录

make

make test

make install # 安装命令

redis-server -v  # 检查安装结果

2.4 创建节点

mkdir /usr/redis/redis-cluster #创建集群目录redis-cluster

cd /usr/redis/redis-cluster #进入redis-cluster目录

mkdir 7001 7002 #创建两个redis节点的目录

2.5 修改配置

1)进入节点目录编辑文件,如下所示:

cd /usr/redis/redis-cluster/7001/ #进入7001目录

vi redis.conf #编辑redis.conf文件

2)修改如下内容:

bind 127.0.0.1 ---> # bind 127.0.0.1

protected-mode yes ---> protected-mode no

daemonize no ---> daemonize yes # 默认以后台程序方式运行,不需要加&强制后台运行了

protected-mode no # 关闭保护模式

port 6379 ---> port 7001 # 将端口改为 7001

pidfile /var/run/redis_6379.pid ---> pidfile /var/run/redis_7001.pid # 将端口改为 7001

# requirepass foobared ---> requirepass admin123456 # admin123456为登录密码可任意替换

# masterauth foobared ---> masterauth admin123456 # admin123456为认证密码可任意替换

maxmemory 4294967296 # 配置内存为 4G 单位是 byte,也可以配置成其他大小

maxmemory-policy allkeys-lru # 配置过期策略,也可以配置其他策略,默认策略为volatile-lru

# cluster-enabled yes---> cluster-enabled yes # 开启集群

# cluster-config-file nodes-6379.conf---> cluster-config-file nodes-7001.conf # 集群的配置,配置文件首次启动自动生成7001

3)同上步骤进入另一个节点7002的目录编辑配置文件,上述步骤中的7001改为7002

2.6 启动 Redis

cd /usr/redis/redis-5.0.4/src #进入 src 目录

./redis-server /usr/redis/redis-cluster/7001/redis.conf # 指定7001的配置文件,启动该节点

./redis-server /usr/redis/redis-cluster/7002/redis.conf # 指定7002的配置文件,启动该节点

在启动7001 和 7002 节点后,redis 节点之间会用到17001 和 17002 端口供集群选举通信使用(CLUSTER MEET),即使用端口的大小加上 10000(端口是XXXX,那么通信端口是1XXXX),若节点间服务器有防火墙,需要对这些端口进行开放。

3. 创建其他四个节点

创建更多节点,重复操作 2.1-2.6 的步骤。创建 7003700470057006 节点并启动。

4. 创建Redis集群

节点创建完毕后,各个节点实际上是独立的,并没有组成一个集群,还需要下面的操作。

cd /usr/redis/redis-5.0.4/src/ #进入任一节点的启动目录

./redis-cli --cluster create 192.168.1.250:7001 192.168.1.250:7002 192.168.1.250:7003 192.168.1.250:7004 192.168.1.250:7005 192.168.1.250:7006 --cluster-replicas 1 -a admin123456 #创建集群的命令,输入用户环境实际的IP和端口,命令最后的admin123456是设置的认证密码,-replicas 1的意思是每台redis服务器有一个备份机,执行完此命令后,该脚本会自动为这6个redis实例分配主从和槽。

当程序提示: Can I set the above configuration? (type 'yes' to accept) 时,键入 yes 回车完成集群搭建。