当前设计中,Ruler 为 StatefulSet 方式部署,且为每个集群部署一个独立的 Ruler,用于计算 Recording rule 和部分的 Alerting rule;但节点宕机情况下,statefulSet 的 Pod 不会进行漂移,导致存在 Ruler 无法正常工作的情况。
修复方式:
- 增加PDB或其他策略,促使 Statefulset Pod 进行漂移或新建(PDB 是否可行待验证,可参考这里)
- 增加 Pod 副本数量(需要处理recording rule 数据重复、irate 函数计算精度问题)