前言
在上一篇文章中,向大家介绍了如何通过eventer将Kubernetes中的事件告警到钉钉群中,那么如何将这些非常有价值的事件进行离线存储与归档呢?
目前eventer支持elasticsearch、influxdb、kafka、sls四种离线存储的链路。具体的配置方式可以参考如下文档。今天主要讲解如何通过SLS归档Kubernetes的事件。
操作方式
1.登陆SLS
控制台并创建project与logstore。
2.通过容器服务部署
中的使用模板创建
下发eventer
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: kube-eventer
namespace: kube-system
spec:
replicas: 1
template:
metadata:
labels:
task: monitoring
k8s-app: kube-eventer
annotations:
scheduler.alpha.kubernetes.io/critical-pod: ''
spec:
serviceAccount: admin
containers:
- name: kube-eventer
image: registry.cn-hangzhou.aliyuncs.com/acs/kube-eventer-amd64:v1.0.0-d9898e1-aliyun
imagePullPolicy: IfNotPresent
command:
- /kube-eventer
- --source=kubernetes:https://kubernetes.default
- --sink=sls:https://sls.aliyuncs.com?logStore=[your_logstore]&project=[your_project]
3.操作集群产生事件(例如:删除Pod或者创建应用等),并登陆SLS
控制台预览验证数据采集。
4.设置索引与归档
对于需要设置离线归档与计算的场景,可以在logstore上面将数据投递给MaxCompute
或者OSS
。
最后
在Kubernetes中事件是审计集群操作的一种重要方式,与APIServer的审计信息相比,事件能够明确的表明产生的时间与重要行为的原因,信息更加可读、精简。项目地址:https://github.com/AliyunContainerService/heapster