一、主从节点搭建
1、在home目录下下载Redis安装包
下载Redis安装包命令: wget http://download.redis.io/releases/redis-6.0.8.tar.gz
2、编译并安装
make install PREFIX=/usr/local/redis
gcc版本问题,新版本的。redis6.0以上:
解决方式
#升级到 5.3及以上版本
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
#注意:scl命令启用只是临时的,推出xshell或者重启就会恢复到原来的gcc版本。
#如果要长期生效的话,执行如下:
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
3、部署主从节点,主节点(port=6379)和2个从节点(port=6380/6381)的配置文件
\#redis-6379.conf
port 6379
daemonize yes
logfile "6379.log"
dbfilename "dump-6379.rdb"
\#redis-6380.conf
port 6380
daemonize yes
logfile "6380.log"
dbfilename "dump-6380.rdb"
slaveof 10.0.4.10 6379
\#redis-6381.conf
port 6381
daemonize yes
logfile "6381.log"
dbfilename "dump-6381.rdb"
slaveof 10.0.4.10 6379
4、配置完成后,依次启动主节点和从节点:
redis-server redis-6379.conf
redis-server redis-6380.conf
redis-server redis-6381.conf
4.1 主节点
4.2 从节点
问题记录
在虚拟机版本Centos7环境下连接redis
但是使用IP连接报错,提示如下:
解決方法:
在redis配置文件/etc/redis-*.conf中添加本地IP地址
再次连接成功
二、部署哨兵节点
1、哨兵配置文件 以sentinel-26379.conf为例
port 26379
daemonize yes
logfile "26379.log"
sentinel monitor mymaster 10.0.4.10 6379 2
配置的含义是:该哨兵节点监控10.0.4.10:6379这个主节点,该主节点的名称是mymaster,最后的2的含义与主节点的故障判定有关:至少需要2个哨兵节点同意,才能判定主节点故障并进行故障转移。
# sentinel monitor master-name ip redis-port quorum
2、启动哨兵
redis-sentinel sentinel-26379.conf
或者 redis-server sentinel-26379.conf --sentinel
3、Redis-cli连接哨兵节点进行验证,监控mymaster主节点(即10.0.4.10:6379),并发现了其2个从节点和另外2个哨兵节点。
4、同時可以查看到sentinel-*.conf配置文件也發生了變化
known-replica 和known-sentinel显示哨兵已经发现了从节点和其他哨兵;带有epoch的参数与配置纪元有关
*注:*查看服务安装路径两种方式