Sentinal:Docs says
Redis Sentinel为Redis提供高可用性 . 实际上,这意味着使用Sentinel可以创建一个Redis部署,可以在没有人为干预的情况下抵御某些类型的故障 .
我认为我们可以在不部署 Sentinal
的情况下为redis集群(在K8中)实现 Sentinal
功能?我正在从文档中获取一些能力并从K8中抛出一些反击点 .
-
Monitoring
- Sentinel会不断检查您的主实例和从属实例是否按预期工作 . -
我正在考虑
working as expected
意味着上升或下降 . 当您部署为Deployment
(Replicasets)甚至StatefulSets
时,这在K8中非常原生 -
Notification
- Sentinel可以通过API通知系统管理员,另一台计算机程序,其中一个受监控的Redis实例出现问题 . -
我们不能用
Operators
吗?(从redis集群状态等角度来看) -
Automatic failover
- 如果主服务器未按预期工作,Sentinel可以启动故障转移过程,其中从服务器升级为主服务器,其他其他服务器重新配置为使用新主服务器,并且使用Redis服务器的应用程序通知新地址连接时使用 -
我在考虑
not working as expected
意味着redis pod已关闭 . 在这种情况下,如果我们在Operators
/StatefulSet
Headless Service
的帮助下部署redis . 我们有主机/从机的稳定网络ID,甚至pod重新启动 . -
Configuration provider
- Sentinel充当客户端服务发现的权限来源:客户端连接到Sentinels以询问负责给定服务的当前Redis主服务器的地址 . 如果发生故障转移,Sentinels将报告新地址 . -
正如我在上面所说,我们有稳定的网络ID /名称/ IP . 客户总是可以指向主人 .
我是redis的新手 . 如有任何问题请指导我 . 谢谢 .
Update1
我的目标是避免使用sendinal并拥有HA . (主要是 master
故障转移)