Kubernetes kubelet如何向API服务器报告OOM事件?

Kubernetes kubelet如何向API服务器报告OOM事件?,kubernetes,kernel,kubelet,Kubernetes,Kernel,Kubelet,最近我研究了kubernetes如何处理系统事件。 但我有一个关于kubelet如何向API服务器报告OOM事件的问题 我在/kubernetes/pkg/kubelet/OOM_watcher.go for event := range eventChannel.GetChannel() { glog.V(2).Infof("Got sys oom event from cadvisor: %v", event) ow.recorder.Past

最近我研究了kubernetes如何处理系统事件。 但我有一个关于kubelet如何向API服务器报告OOM事件的问题

我在
/kubernetes/pkg/kubelet/OOM_watcher.go

        for event := range eventChannel.GetChannel() {
        glog.V(2).Infof("Got sys oom event from cadvisor: %v", event)
        ow.recorder.PastEventf(ref, metav1.Time{Time: event.Timestamp}, v1.EventTypeWarning, systemOOMEvent, "System OOM encountered")
    }
我知道kubelet将OOM事件写入记录器whitch kubelet init。 但是kubelet或apiserver如何使用记录器事件呢


我可以在哪里找到kubelet使用事件的代码或将其报告给apiserver?

我知道我在这里做一个假设,但如果有人能指出官方文档,我会很高兴;以下是我的理解-如果kubelet从这个OOM killer中恢复,那么它将按照通常的流程向API服务器通知被杀死或正在运行的POD的当前状态,否则,节点将无法准备就绪,因为API服务器将无法连接到kubelet。