diff --git a/pkg/kubelet/dockertools/docker_manager.go b/pkg/kubelet/dockertools/docker_manager.go index 175541be105..4640ab91cc7 100644 --- a/pkg/kubelet/dockertools/docker_manager.go +++ b/pkg/kubelet/dockertools/docker_manager.go @@ -688,18 +688,20 @@ func (dm *DockerManager) runContainer( } // Set sysctls if requested - sysctls, unsafeSysctls, err := api.SysctlsFromPodAnnotations(pod.Annotations) - if err != nil { - dm.recorder.Eventf(ref, api.EventTypeWarning, events.FailedToCreateContainer, "Failed to create docker container %q of pod %q with error: %v", container.Name, format.Pod(pod), err) - return kubecontainer.ContainerID{}, err - } - if len(sysctls)+len(unsafeSysctls) > 0 { - hc.Sysctls = make(map[string]string, len(sysctls)+len(unsafeSysctls)) - for _, c := range sysctls { - hc.Sysctls[c.Name] = c.Value + if container.Name == PodInfraContainerName { + sysctls, unsafeSysctls, err := api.SysctlsFromPodAnnotations(pod.Annotations) + if err != nil { + dm.recorder.Eventf(ref, api.EventTypeWarning, events.FailedToCreateContainer, "Failed to create docker container %q of pod %q with error: %v", container.Name, format.Pod(pod), err) + return kubecontainer.ContainerID{}, err } - for _, c := range unsafeSysctls { - hc.Sysctls[c.Name] = c.Value + if len(sysctls)+len(unsafeSysctls) > 0 { + hc.Sysctls = make(map[string]string, len(sysctls)+len(unsafeSysctls)) + for _, c := range sysctls { + hc.Sysctls[c.Name] = c.Value + } + for _, c := range unsafeSysctls { + hc.Sysctls[c.Name] = c.Value + } } }