<< Click to Display Table of Contents >> 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 的步骤。创建 7003、7004 和 7005、7006 节点并启动。
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 回车完成集群搭建。