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

相关推荐
毕业设计7033 小时前
(免费领源码)SSM董家湾线上点餐系统04682- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
java·redis·mysql·tomcat·maven·mybatis·ssm
用户094248568035 小时前
第1章:Redis 术语全景与单线程工作原理
redis·快应用·源码阅读
hflmwl86 小时前
RedisDesktopManager安装包中文版官方下载,redis可视化客户端工具下载
数据库·redis·缓存·可视化客户端工具
用户84913717547167 小时前
订单超时未支付自动取消实现方案 | 三种方案详解
redis·面试·rabbitmq
easyboot7 小时前
Memurai Windows下的redis
redis
我不会起名字3228 小时前
Redis RDB 落盘时的 fork 停顿:COW 机制与 3 个降低影响的配置
redis·持久化·fork·cow·rdb
蓝胖的四次元口袋8 小时前
Redis 知识梳理(4)
数据库·redis
我不会起名字3229 小时前
Redis 从 0 到 1(十一):缓存穿透/击穿/雪崩三连击,Go 3 套防御代码
redis·缓存·go·布隆过滤器·雪崩
hweiyu001 天前
Redis命令:LMOVE
redis·缓存
bug菌1 天前
一个周末就想把短链服务推到 10 万 QPS,真能靠加 Redis 做到吗?
java·redis·go