mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-02 08:17:26 +00:00
service: initialize EventClient
Kubelet events are not being tracked. This commit fixes it by initializing the event client. fixes https://github.com/mesosphere/kubernetes-mesos/issues/680
This commit is contained in:
parent
78c31b6769
commit
9176e93ba8
@ -147,9 +147,20 @@ func (s *KubeletExecutorServer) runKubelet(
|
||||
staticPodsConfigPath string,
|
||||
apiclient *client.Client,
|
||||
podLW *cache.ListWatch,
|
||||
) error {
|
||||
) (err error) {
|
||||
defer func() {
|
||||
if err != nil {
|
||||
// close the channel here. When Run returns without error, the executorKubelet is
|
||||
// responsible to do this. If it returns with an error, we are responsible here.
|
||||
close(kubeletDone)
|
||||
}
|
||||
}()
|
||||
|
||||
kcfg, err := s.UnsecuredKubeletConfig()
|
||||
if err == nil {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// apply Mesos specific settings
|
||||
executorDone := make(chan struct{})
|
||||
kcfg.Builder = func(kc *kubeletapp.KubeletConfig) (kubeletapp.KubeletBootstrap, *kconfig.PodConfig, error) {
|
||||
@ -173,6 +184,21 @@ func (s *KubeletExecutorServer) runKubelet(
|
||||
kcfg.DockerDaemonContainer = "" // don't move the docker daemon into a cgroup
|
||||
kcfg.Hostname = kcfg.HostnameOverride
|
||||
kcfg.KubeClient = apiclient
|
||||
|
||||
// taken from KubeletServer#Run(*KubeletConfig)
|
||||
eventClientConfig, err := s.CreateAPIServerClientConfig()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// make a separate client for events
|
||||
eventClientConfig.QPS = s.EventRecordQPS
|
||||
eventClientConfig.Burst = s.EventBurst
|
||||
kcfg.EventClient, err = client.New(eventClientConfig)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
kcfg.NodeName = kcfg.HostnameOverride
|
||||
kcfg.PodConfig = kconfig.NewPodConfig(kconfig.PodConfigNotificationIncremental, kcfg.Recorder) // override the default pod source
|
||||
kcfg.StandaloneMode = false
|
||||
@ -189,6 +215,7 @@ func (s *KubeletExecutorServer) runKubelet(
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
kcfg.CAdvisorInterface = cAdvisorInterface
|
||||
kcfg.ContainerManager, err = cm.NewContainerManager(kcfg.Mounter, cAdvisorInterface)
|
||||
if err != nil {
|
||||
@ -216,14 +243,8 @@ func (s *KubeletExecutorServer) runKubelet(
|
||||
// that because then every kubelet instance would query the master
|
||||
// state.json which does not scale.
|
||||
err = s.KubeletServer.Run(kcfg)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
// close the channel here. When Run returns without error, the executorKubelet is
|
||||
// responsible to do this. If it returns with an error, we are responsible here.
|
||||
close(kubeletDone)
|
||||
}
|
||||
return err
|
||||
return
|
||||
}
|
||||
|
||||
// Run runs the specified KubeletExecutorServer.
|
||||
|
Loading…
Reference in New Issue
Block a user