Redis官方网站:https://redis.io
安装之前
- 确保已经存在make
- 确保已经存在pkg-config
- 确保已经存在gcc
缺少pkg-config软件包
make[1]: Entering directory '/usr/local/redis/redis-6.2.3/src'
/bin/sh: 1: pkg-config: not found
CC Makefile.dep
缺少gcc软件包
make[1]: Entering directory '/usr/local/redis/redis-6.2.3/src'
CC Makefile.dep
CC adlist.o
/bin/sh: 1: cc: not found
出现以下错误使用make distclean && make
命令清除缓存重新编译
cd src && make all
make[1]: Entering directory '/usr/local/redis/redis-6.2.3/src'
CC adlist.o
In file included from adlist.c:34:
zmalloc.h:50:10: fatal error: jemalloc/jemalloc.h: No such file or directory
50 | #include <jemalloc/jemalloc.h>
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:368: adlist.o] Error 1
1. 安装Redis
安装之前先验证是否安装了gcc,使用gcc --version命令查看gcc版本。
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
tar xzf redis-5.0.5.tar.gz
cd redis-5.0.5
make
2. 创建Redis Cluster节点
创建redis节点配置文件,将redis-5.0.5/redis.conf复制,我需要使用6个redis节点则复制6份配置文件。
mkdir redis-5.0.5/redis-cluster/node-7001
mkdir redis-5.0.5/redis-cluster/node-7002
mkdir redis-5.0.5/redis-cluster/node-7003
mkdir redis-5.0.5/redis-cluster/node-7004
mkdir redis-5.0.5/redis-cluster/node-7005
mkdir redis-5.0.5/redis-cluster/node-7006
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7001/redis-7001.conf
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7002/redis-7002.conf
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7003/redis-7003.conf
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7004/redis-7004.conf
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7005/redis-7005.conf
cp redis-5.0.5/redis.conf redis-5.0.5/redis-cluster/node-7006/redis-7006.conf
编辑节点配置
# 根据个人需要及习惯对配置进行相应的修改
# 节点访问IP
bind 127.0.0.1
# 节点端口号
port 7001
# 打开集群
cluster-enabled yes
# 集群节点配置文件
cluster-config-file nodes-7001.conf
3. 启动服务
启动服务命令
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7001.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7002.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7003.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7004.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7005.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7006.conf
可创建简单shell脚本执行
vi redis-cluster-start.sh
#将启动命令复制或输入到文件中
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7001.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7002.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7003.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7004.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7005.conf
redis-5.0.5/src/redis-server redis-5.0.5/redis-cluster/node-7001/redis-7006.conf
#使用:wq将shell脚本进行保存
为脚本文件赋予所有权限,并执行脚本启动服务
#为脚本赋予权限
chmod 777 redis-cluster-start.sh
#执行脚本
./redis-cluster-start.sh
使用 ps
查看server进程
ps -ef | grep redis
使用 netstat
查看端口是否开启
netstat -anutp
4. 启动集群
准备ruby环境
apt install ruby
准备redis环境
gem install redis
使用 redis-cli
命令创建集群
redis-cli --cluster create --cluster-replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006