安装redis
- 因redis使用源码编译安装,如果没有安装编译环境,请安装,安装过程中,若有问题请联系系统安装人员配置yum源,若已安装,请跳过。
yum -y install gcc gcc-c++ libstdc++-devel
- 进入/opt目录,执行命令创建redis目录,并进入redis目录,上传redis-5.0.3.tar.gz,然后解压安装
tar -zxvf redis-5.0.3.tar.gz #解压
cd redis-5.0.3/ #进入解压后的目录
make # 编译
cd src/ # 编译成功后进入当前目录下的src目录
make install PREFIX=/opt/redis # 安装,安装目录指定为 /opt/redis:
redis配置
- Make后在源码的解压目录(/opt/redis /redis-5.0.3)会生成redis的配置文件redis.conf,创建/opt/redis/etc 目录,移动配置文件到安装目录下:
cd /opt/redis
mkdir /opt/redis/etc
cp redis-5.0.3/redis.conf /opt/redis/etc/
-
找到daemonize 项,将no 改成 yes (vi编辑器的操作见附录 6.2),然后保存。protected-mode项 改为no,bind 127.0.0.1 (将bind 127.0.0.1 注释)(否则远程无法链接)
-
配置文件目录,找到dir 项,改成 /opt/redis/bin
-
配置redis开机启动
vim /etc/systemd/system/redis.service # 在文件中添加一下内容 [Unit] Description=redis-server After=network.target [Service] Type=forking # 注意这一行改成你自己的配置 ExecStart=/opt/redis/bin/redis-server /opt/redis/etc/redis.conf PrivateTmp=true [Unit] Description=redis-server After=network.target [Install] WantedBy=multi-user.target # 加入开机自启 systemctl enable redis.service # 重启验证 reboot
-
更改目录属主为sysman
chown -R sysman:sysman /opt/redis
- 切换到sysman用户,启动,停止redis
su sysman # 切换用户
/opt/redis/bin/redis-server /opt/redis/etc/redis.conf # 启动命令
ps -ef|grep redis # 查看进程是否存在
/opt/redis/bin/redis-cli shutdown # 关闭服务
redis配置哨兵模式
服务类型 | 主从服务器 | IP地址 | 端口 |
---|---|---|---|
Redis | 主 | 192.168.220.131 | 6379 |
Redis | 从 | 192.168.220.134 | 6379 |
Sentinel | - | 192.168.220.131 | 26379 |
Sentinel | - | 192.168.220.134 | 26379 |
主从redis配置监听所有网卡
# 使得Redis服务器可以跨网络访问
bind 0.0.0.0
从机配置
-
配置从服务
# 指定主服务器,注意:有关slaveof的配置只是配置从服务器,主服务器不需要配置 slaveof 192.168.220.131 6379
哨兵配置
-
配置哨兵
配置2个哨兵,每个哨兵的配置都是一样的。进入redis配置文件目录 /opt/redis/etc,编辑sentinel.conf
# 将配置文件复制到redis目录下 cp /home/xb/redis-5.0.3/sentinel.conf /opt/redis/etc/ # 修改配置文件sentinel.conf # 配置后台启动 daemonize yes # 禁止保护模式 protected-mode no # 配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,192.168.220.131代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。 sentinel monitor mymaster 192.168.220.131 6379 2
启动服务
注意启动顺序。首先是主机(192.168.220.131)的Redis服务进程,然后启动从机的服务进程,最后启动2个哨兵的服务进程。
# 若已启动,请关闭
# 无权限,则授权
# 启动主服务,从服务
/opt/redis/bin/redis-server /opt/redis/etc/redis.conf
# 启动哨兵进程(多台机器都要启动)
/opt/redis/bin/redis-sentinel /opt/redis/etc/sentinel.conf