IIWAB Kubernetes Event持久化方案 - IIWAB

Kubernetes Event持久化方案

IIWAB 1年前 ⋅ 672 阅读

Kubernetes中的事件最终还是存储在etcd中,默认情况下只保存1个小时,由于etcd并不支持一些复杂的分析操作,默认Kubernetes只提供了非常简单的过滤方式,比如通过Reason、时间、类型等。同时这些事件只是被动的存在etcd中,并不支持主动推送到其他系统,通常只能手动的去查看。

而实际上我们对事件的使用需求非常高,例如:

  1. 对系统中的异常事件做实时告警,例如Failed、Evicted、FailedMount、FailedScheduling等。
  2. 通常问题排查可能要去查找历史数据,因此需要去查询更长时间范围的事件(几天甚至几个月)。
  3. 事件支持归类统计,例如能够计算事件发生的趋势以及与上一时间段(昨天/上周/发布前)对比,以便基于统计指标进行判断和决策。
  4. 支持不同的人员按照各种维度去做过滤、筛选。
  5. 支持自定义的订阅这些事件去做自定义的监控,以便和公司内部的部署运维平台集成。

进行Kubernetes Event持久化:

1、使用开源项目eventrouter进行收集

项目地址: https://github.com/heptiolabs/eventrouter

参考:https://blog.csdn.net/weixin_43855694/article/details/103264930

2、kspan配合 Jaeger 利用 tracing 的方式来采集

参考:https://blog.csdn.net/tao12345666333/article/details/118214871

3、使用开源项目KubeWatch进行收集

参考:https://segmentfault.com/a/1190000041204565

4、使用开源项目kubernetes-event-exporter进行收集(推荐)

项目地址:https://github.com/opsgenie/kubernetes-event-exporter

参考:https://qiankunli.github.io/2020/04/27/kubernetes_event.html


全部评论: 0

    我有话说: