mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-23 18:40:53 +00:00
don't watch headless services on kubelet
The kubelet watches services only to generate the environment variables inside a pod, but headless services are not needed for this. Change-Id: I22ee2b3352f8fe71cddfafa6f09b768c0a0e26b4
This commit is contained in:
parent
0595ec7942
commit
5122fe0732
@ -451,7 +451,11 @@ func NewMainKubelet(kubeCfg *kubeletconfiginternal.KubeletConfiguration,
|
||||
var serviceLister corelisters.ServiceLister
|
||||
var serviceHasSynced cache.InformerSynced
|
||||
if kubeDeps.KubeClient != nil {
|
||||
kubeInformers := informers.NewSharedInformerFactoryWithOptions(kubeDeps.KubeClient, 0)
|
||||
// don't watch headless services, they are not needed since this informer is only used to create the environment variables for pods.
|
||||
// See https://issues.k8s.io/122394
|
||||
kubeInformers := informers.NewSharedInformerFactoryWithOptions(kubeDeps.KubeClient, 0, informers.WithTweakListOptions(func(options *metav1.ListOptions) {
|
||||
options.FieldSelector = fields.OneTermNotEqualSelector("spec.clusterIP", v1.ClusterIPNone).String()
|
||||
}))
|
||||
serviceLister = kubeInformers.Core().V1().Services().Lister()
|
||||
serviceHasSynced = kubeInformers.Core().V1().Services().Informer().HasSynced
|
||||
kubeInformers.Start(wait.NeverStop)
|
||||
|
Loading…
Reference in New Issue
Block a user