Linux 安装部署高性能缓存服务redis

Linux 系统安装Redis 5 注意事项:

  1. 下载Redis 文件包,并上传至linux服务上

  2. 解压

    tar -zxvf redis.tar

  3. 安装:
    编译

    make PREFIX=/usr/local/redis install

配置:

redis.conf

复制代码
daemonize yes
bind 127.0.0.1 192.168.1.221
supervised systemd
logfile "/usr/local/redis/log/redis.log"
dir /usr/local/redis/data/6379    【注意:这个目录没有默认:/var/lib/redis/6379  存放dump.rdb的目录, 由于系统默认没有这个目录,导致使用systemctl start redis.service 报错】
requirepass root@123

4、创建redis.service

复制代码
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/6379.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

执行命令:

systemctl daemon-reload

systemctl start redis.service

systemctl enable redis.service

systemctl stop redis.service

systemctl status redis.service

systemctl restart redis.service

主从配置:

今天在使用命令slaveof或者是replicaof命令配置redis主从复制时,从机出现master_link_status:down提示,显示主机是down的状态,主机显示没有从机挂载。主要是因为这里的redis配置了密码,可以在slave的配置文件里指定(配从不配主)
主要是因为redis配置了密码导致的,将master和slave的密码配置相同,然后将slave的配置文件中的masterauth属性进行填写,将master的密码写上去即可使用命令slaveof或者是replicaof对master进行指定;

对slave的config配置文件中的两个属性进行配置即可实现开启后自动关联。
全部重启一下:
测试验证一下:

主节点:

127.0.0.1:6379> set aaa aaa

OK

从节点:

127.0.0.1:6379> get aaa

"aaa"

所有从节点都能获取到主节点添加的数据表明主从配置完成!!!

哨兵模式:

vi sentinel.conf

复制代码
//端口默认为26379。
port:26379
//关闭保护模式,可以外部访问。
protected-mode:no
//设置为后台启动。
daemonize:yes
//日志文件。
logfile:./sentinel.log
//指定主机IP地址和端口,并且指定当有2台哨兵认为主机挂了,则对主机进行容灾切换。
sentinel monitor mymaster 192.168.231.130 6379 2
//当在Redis实例中开启了requirepass,这里就需要提供密码。
sentinel auth-pass mymaster pwdtest@2019
//这里设置了主机多少秒无响应,则认为挂了。
sentinel down-after-milliseconds mymaster 3000
//主备切换时,最多有多少个slave同时对新的master进行同步,这里设置为默认的1。
snetinel parallel-syncs mymaster 1
//故障转移的超时时间,这里设置为三分钟。
sentinel failover-timeout mymaster 180000

port 26379
daemonize yes
protected-mode no
dir "/tmp"
pidfile "/var/run/redis-sentinel.pid"
logfile "/usr/local/redis/log/sentinel.log"
sentinel monitor mymaster 192.168.1.221 6379 2
sentinel auth-pass mymaster root@123   
sentinel down-after-milliseconds mymaster 5000  

配置systemctl 启动:

vi /etc/systemd/system/redis-sentinel.service

复制代码
[Unit]
Description=redis-sentinel
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-sentinel /usr/local/redis/bin/sentinel.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

systemctl enable redis-sentinel.service

systemctl start redis-sentinel.service

启动sentinel之后,关闭master。从slave服务器上选出一个master出来

使用命令查看master: ./redis-cli -p 6379 -a root@123 info replication

相关推荐
ZZHHWW18 分钟前
Redis 哨兵模式详解
redis·后端
Java烘焙师1 小时前
架构师必备:限流方案选型(使用篇)
redis·架构·限流
emma羊羊7 小时前
【Redis】
数据库·redis·缓存
aristo_boyunv11 小时前
Redis底层原理-持久化【详细易懂】
数据库·redis·缓存
羊锦磊12 小时前
[ Redis ] SpringBoot集成使用Redis(补充)
java·数据库·spring boot·redis·spring·缓存·json
白帽子黑客罗哥13 小时前
Redis实战深度剖析:高并发场景下的架构设计与性能优化
redis·网络安全·性能优化·高并发·分布式锁·秒杀系统·缓存架构
yumgpkpm18 小时前
CMP(类ClouderaCDP7.3(404次编译) )完全支持华为鲲鹏Aarch64(ARM),粉丝数超过200就开源下载
hive·hadoop·redis·mongodb·elasticsearch·hbase·big data
儒道易行20 小时前
【攻防实战】Redis未授权RCE联动metasploit打穿三层内网(上)
数据库·redis·网络安全·缓存
ezreal_pan1 天前
架构权衡与实践:基于“约束大于规范”的缓存组件封装
redis·cache·1024程序员节
爬山算法1 天前
Redis(83)Redis的缓存击穿是什么?
java·redis·缓存