文章目录
- 一、安装Redis
- 1、上传、解压、重命名
- 2、安装GCC环境
- 3、编译源码
- 4、进行安装
- 5、修改配置文件redis.conf
- 二、Redis主从复制搭建
- 1、创建文件夹用来实现主从复制
- 三、配置Redis的哨兵模式
- 1、创建文件夹
- 2、修改sentinel.conf配置文件
- 3、启动
一、安装Redis
1、上传、解压、重命名
cd /opt/modules
tar -zxvf redis-5.0.4.tar.gz -C /opt/installs
cd /opt/installs
mv redis-5.0.4 redis
2、安装GCC环境
yum -y install gcc-c++
3、编译源码
cd /opt/installs/redismake
4、进行安装
make install
# 默认安装到了 /usr/local/bin 目录下
redis-server # 启动redis的服务器
redis-cli # 启动redis客户端
5、修改配置文件redis.conf
并将这个文件复制到/usr/local/bin 下面:
cp /opt/installs/redis/redis.conf /usr/local/bin/# 启动的时候,指定conf 一起启动:
redis-server /usr/local/bin/redis.conf
二、Redis主从复制搭建
redis实现主从复制的好处有两个:
1)数据同步,达到备份的效果
2)读写分离,减轻主节点的压力
1、创建文件夹用来实现主从复制
cd /usr/local/bin# 创建文件夹,用来存放从节点
mkdir mastersalves# 拷贝redis.conf文件到mastersalves文件夹中
cp redis.conf ./mastersalves/
2、修改redis.conf配置文件
修改如下配置:
必须配置:
选择性配置:
mkdir -p /usr/local/bin/mastersalves/logs
mkdir -p /usr/local/bin/mastersalves/redisdatapidfile /var/run/redis_6380.pid
logfile "/usr/local/bin/mastersalves/logs/redis.log"
dir /usr/local/bin/mastersalves/redisdata
假如你主节点配置了密码保护,从节点需要添加如下配置:
masterauth 123456
启动主从节点即可:
# 启动主节点:
redis-server /usr/local/bin/redis.conf# 启动从节点:
redis-server /usr/local/bin/mastersalves/redis.conf
三、配置Redis的哨兵模式
1、创建文件夹
cd /usr/local/bin
mkdir sentinel-zc# 复制外面的sentinel.conf 到 sentinel-zc 文件夹下面:
cp /opt/installs/redis/sentinel.conf sentinel-zc
2、修改sentinel.conf配置文件
修改bind和端口号:
bind node01port 26379 第一次不需要修改
daemonize yes 表示将来的sentinel服务,后台启动sentinel monitor mymaster 192.168.187.128 6379 2
拷贝两份sentinel.conf配置文件:
cp sentinel.conf sentinel2.conf
cp sentinel.conf sentinel3.conf
sentinel2.conf端口号修改为:26380
sentinel3.conf端口号修改为:26381
假如主节点server 配置了密码,需要在sentinel.conf 文件中也配置密码:大约70行左右
sentinel auth-pass mymaster 123456
谨记: 以上这个语句必须写在 sentinel monitor mymaster 192.168.187.128 6379 2,否则启动报错。
3、启动
# 先启动 redis-server 服务
./redis-server redis.conf
./redis-server mastersalves/redis.conf# 再次启动 redis-sentinel服务:
./redis-sentinel sentinel-zc/sentinel.conf
./redis-sentinel sentinel-zc/sentinel2.conf
./redis-sentinel sentinel-zc/sentinel3.conf