一、安装
上传redis-4.0.9到/home目录下
解压redis
tar -zxvf redis-4.0.9.tar.gz
进入redis下的src目录下
cd /redis-4.0.9/src
编译
make
可能会报错,提示我们要安装gcc

上传gcc包和脚本gcc_install.sh 到home下,然后授权,gcc下载链接:https://pan.baidu.com/s/1VFS2tkRaNTRbS69igS72JA 提取码:g3vv
chmod +x -R gcc gcc_install.sh
然后执行安装
./gcc_install.sh
安装完成可以通过gcc -v或cat /proc/version查看版本号

再次进入redis目录
cd /home/redis-4.0.9
make
如果出现如下错误,只需删掉redis-4.0.9目录,再次解压,再次进入make

出现如下提示表示make完成

进入src并make install

安装完成
二、配置
拷贝三份redis-4.0.9

修改主节点redis配置文件
cd redis-6379
vim redis.conf
注释ip绑定
#bind 127.0.0.1
protected-mode no
daemonize yes
requirepass 123456
masterauth 123456(每个节点一定要修改,保持每个redis节点的密码一致)
修改从节点1
#bind 127.0.0.1 protected-mode no
port 6380 daemonize yes pidfile /var/run/redis_6380.pid slaveof 192.168.43.238 6379
masterauth 123456
requirepass 123456
修改从节点2
#bind 127.0.0.1 protected-mode no
port 6381 daemonize yes pidfile /var/run/redis_6381.pid slaveof 192.168.43.238 6379
masterauth 123456
requirepass 123456
启动redis

至此,redis读写分离已经搭建完成
接下来修改哨兵配置(三个几点只有端口不一致,其他都一致)
修改sentinel.conf
sentinel monitor mymaster 192.168.43.238 6379 2
protected-mode no port 26380(三个几点分别为26379,26380,26381)
sentinel auth-pass mymaster 123456
daemonize yes
启动(注意配置文件是相对路径)

三、测试
在6379添加一条数据

6380和6381也同步到数据了
 
停止6379的redis kill -9 1516
通过redis客户端敲入info,6380变成了master,只有一个从节点6381,

再次启动6379,发现有两个从节点
redis-server redis-6379/redis.conf

一定要注意在刚开始配置master的redis.conf是一定要配置,masterauth=123456(redis密码),不然这个节点挂了之后,没法再进入集群,因为他没有新的master节点的redis密码。 |