本文安装系统为centos8, redis版本为5.0.7
1、安装ruby2.5.5
执行安装ruby命令: yum install ruby
参考我的另一篇博客《centos8-安装ruby2.5.5》
2、下载redis5.0.7
redis官网: https://redis.io/download
wget http://download.redis.io/releases/redis-5.0.7.tar.gz 下载redis5.0.7
3、安装redis
先安装一些命令:
yum -y install gcc gcc-c++ libstdc++-devel //提示gcc和cc命令令未找到
yum install make //安装make命令
tar -zxvf redis-5.0.7.tar.gz 解压
cd /home/joyce/soft/redis-5.0.7 进入redis目录
make MALLOC=libc make后面的参数,是为解决报错: jemalloc/jemalloc.h: No such file or directory
4、修改redis.conf为集群配置
redis.conf修改为集群配置:
bind 0.0.0.0 //使不同IP也能连上此节点,否则会报错:Error condition on socket for SYNC: Connection refused daemonize no //如果改成yes,则表示redis服务后台运行,这里保持默认 protected-mode no //关闭保护模式,使从节点能连接上此主节点,默认值: yes cluster-enabled yes //启用cluster cluster-config-file cluster-nodes-6379.conf //由redis集群自动生成,集群启动成功之后,可以命令查找之: find / -name cluster-nodes-6379.conf cluster-node-timeout 15000 //cluster节点超时时间ms
masterauth password123 //cluster集群密码
requirePass password123 //别的节点连接上主节点的密码,设置这个密码是为了防止从节点启动时报错:Unable to AUTH to MASTER: -ERR Client sent AUTH, but no password is set
启动6个节点的server端: src/redis-server /home/joyce/soft/redis-5.0.7/redis.conf
5、执行集群创建命令
src/redis-cli --cluster create 192.168.2.11:6379 192.168.2.12:6379 192.168.2.13:6379 192.168.2.14:6379 192.168.2.15:6379 192.168.2.16:6379 -a myredis --cluster-replicas 1
--cluster-replicas 1 这里的 1 指的是每个master有一个从slave
如果创建cluster命令出现这个错误:[ERR] Node 192.168.2.11:6379 NOAUTH Authentication required. 那可能是忘记添加 -a myredis 密码参数,就是这个masterauth密码
6、验证cluster集群
任意连接上一个redis节点 : src/redis-cli -c -h 192.168.2.12 -p 6379 -a password123 // 注意这里的 -c 参数代表进入集群模式
end.