kube-eventer
kube-eventer emit kubernetes events to sinks
Overview
kube-eventer is an event emitter that sends kubernetes events to sinks(.e.g, dingtalk,sls,kafka and so on). The core design concept of kubernetes is state machine. So there will be Normal
events when transfer to desired state and Warning
events occur when to unexpected state. kube-eventer can help to diagnose, analysis and alarm problems.
Architecture diagram
Architecture diagram of kube-eventer
Usage
Here is a demo of kube-eventer with dingtalk sink. Dingtalk is an All-in-one Mobile Workplace like slack. Dingtalk sink can get kubernetes events from eventer. You can do chatops with it. Try it following the steps below.
-
Get dingtalk token
Add a chatbot in a dingtalk group and get bot token.
-
Install eventer and configure sink
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:
- /eventer
- --source=kubernetes:https://kubernetes.default
## .e.g,dingtalk sink demo
- --sink=dingtalk:[your_webhook_url]&label=[your_cluster_id]&level=[Normal or Warning(default)]
- View events in dingtalk
Supported Sinks:
Contributing
Please check CONTRIBUTING.md
License
This software is released under the Apache 2.0 license.