mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	Do not set cgroup parent when --cgroups-per-qos is disabled
When --cgroups-per-qos=false (default is true), kubelet sets pod container management to podContainerManagerNoop implementation and GetPodContainerName() returns '/' as cgroup parent (default cgroup root). (1) In case of 'systemd' cgroup driver, '/' is invalid parent as docker daemon expects '.slice' suffix and throws this error: 'cgroup-parent for systemd cgroup should be a valid slice named as \"xxx.slice\"' (5fc12449d8/daemon/daemon_unix.go (L618)) '/' corresponds to '-.slice' (root slice) in systemd but I don't think we want to assign root slice instead of runtime specific default value. In case of docker runtime, this will be 'system.slice' (e2593239d9/daemon/oci_linux.go (L698)) (2) In case of 'cgroupfs' cgroup driver, '/' is valid parent but I don't think we want to assign root instead of runtime specific default value. In case of docker runtime, this will be '/docker' (e2593239d9/daemon/oci_linux.go (L695)) Current fix will not set the cgroup parent when --cgroups-per-qos is disabled.
This commit is contained in:
		@@ -299,7 +299,7 @@ func (m *podContainerManagerNoop) EnsureExists(_ *v1.Pod) error {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (m *podContainerManagerNoop) GetPodContainerName(_ *v1.Pod) (CgroupName, string) {
 | 
					func (m *podContainerManagerNoop) GetPodContainerName(_ *v1.Pod) (CgroupName, string) {
 | 
				
			||||||
	return m.cgroupRoot, m.cgroupRoot.ToCgroupfs()
 | 
						return m.cgroupRoot, ""
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (m *podContainerManagerNoop) GetPodContainerNameForDriver(_ *v1.Pod) string {
 | 
					func (m *podContainerManagerNoop) GetPodContainerNameForDriver(_ *v1.Pod) string {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user