| IP地址 | 节点角色 | 端口 |
| — | — | — |
| 192.168.211.104 | Redis Master/ Sentinel | 6379/26379 |
| 192.168.211.105 | Redis Slave/ Sentinel | 6379/26379 |
| 192.168.211.106 | Redis Slave/ Sentinel | 6379/26379 |
关闭防火墙:
由于是自己学习使用,我们不针对专门的端口最策略(在公司这一块有专门的运维同时来做),这里我们直接关闭服务器的防火墙(三台都需要关闭)
systemctl status firewalld.service # 查看防火墙状态
systemctl stop firewalld.service # 停止防火墙(重启后会失效)
systemctl disable firewalld.service # 禁止开机启动
效果图,不会的朋友可以参考一下
整体架构简图
二、配置一主二从
这里的Redis的主节点是192.168.211.104,所以我们在192.168.211.105和192.168.211.106的Redis配置文件中,配置replicaof指向的Master IP +port。
配置文件在Redis的安装目录:
编辑redis.conf配置文件:
vim redis.conf
redis.conf配置文件中默认注释:
# replicaof <masterport
取消注销,配置为Master的IP + port:
replicaof 192.168.211.104 6379
三、哨兵配置
单机节点实例下,Redis的安装目录默认有sentinel.conf配置文件,先对文件进行备份,备份文件名为sentinel.conf.copy(自定义):
cp sentinel.conf sentinel.conf.copy
创建日志等相关文件:
cd /usr/local/soft/redis-6.2.4/
mkdir logs
mkdir rdbs
mkdir sentinel-tmp # sentinel的工作目录,下面有说明
三台机器分别修改sentinel.conf的配置文件内容如下(内容都相同):
daemonize yes
port 26379
protected-mode no
dir “/usr/local/soft/redis-6.2.4/sentinel-tmp”
sentinel monitor redis-master 192.168.211.104 6379 2
sentinel down-after-milliseconds redis-master 30000
sentinel failover-timeout redis-master 180000
sentinel parallel-syncs redis-master 1
上述配置详细解读:
| 配置项 | 作用 |
| — | — |
| daemonize | 后台启动,与Redis一致,yes表示后台启动 |
| port | 端口 26379 |
| protected-mode | 开启外网访问保护模式,no表示关闭,这样外网可以访问 |
| dir | Sentinel工作目录 |
| sentinel monitor | Sentinel 监控的Redis主节点 |
| sentinel failover-timeout | 1、同一个sentinel对同一个master两次failover之间的间隔时间
2、当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时
3、当想要取消一个正在进行的failover所需要的时间。
4、当进行failover时,配置所有slaves指向新的master所需的最大时间 |
| sentinel parallel-syncs | 这个配置项指定了在发生failover主备切换时最多可以有多少个slave同时对新的master进行 同步,这个数字越小,完成failover所需的时间就越长,但是如果这个数字越大,就意味着越 多的slave因为replication而不可用。可以通过将这个值设为 1 来保证每次只有一个slave 处于不能处理命令请求的状态。 |
四、服务启动
上述就已经完成了Redis一主二从集群和3个Sentinel实例的监控的配置,接下来就是启动Redis和Sentinel
4.1 启动redis
进入Redis安装目录下的src目录:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)
最后
我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了7、8年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。
其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。
不断奔跑,你就知道学习的意义所在!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。
不断奔跑,你就知道学习的意义所在!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!