From e26df3594c26563cc2de4f5a09723d5fe7b966ff Mon Sep 17 00:00:00 2001 From: chenyw1990 Date: Wed, 20 Jan 2021 20:59:19 +0800 Subject: [PATCH] do not return err when PodSandbox not exist Co-authored-by: pacoxu --- pkg/kubelet/cm/container_manager_linux.go | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/pkg/kubelet/cm/container_manager_linux.go b/pkg/kubelet/cm/container_manager_linux.go index b368270c2e5..74257cd557b 100644 --- a/pkg/kubelet/cm/container_manager_linux.go +++ b/pkg/kubelet/cm/container_manager_linux.go @@ -562,11 +562,8 @@ func (cm *containerManagerImpl) Start(node *v1.Node, // Initialize CPU manager if utilfeature.DefaultFeatureGate.Enabled(kubefeatures.CPUManager) { - containerMap, err := buildContainerMapFromRuntime(runtimeService) - if err != nil { - return fmt.Errorf("failed to build map of initial containers from runtime: %v", err) - } - err = cm.cpuManager.Start(cpumanager.ActivePodsFunc(activePods), sourcesReady, podStatusProvider, runtimeService, containerMap) + containerMap := buildContainerMapFromRuntime(runtimeService) + err := cm.cpuManager.Start(cpumanager.ActivePodsFunc(activePods), sourcesReady, podStatusProvider, runtimeService, containerMap) if err != nil { return fmt.Errorf("start cpu manager error: %v", err) } @@ -574,11 +571,8 @@ func (cm *containerManagerImpl) Start(node *v1.Node, // Initialize memory manager if utilfeature.DefaultFeatureGate.Enabled(kubefeatures.MemoryManager) { - containerMap, err := buildContainerMapFromRuntime(runtimeService) - if err != nil { - return fmt.Errorf("failed to build map of initial containers from runtime: %v", err) - } - err = cm.memoryManager.Start(memorymanager.ActivePodsFunc(activePods), sourcesReady, podStatusProvider, runtimeService, containerMap) + containerMap := buildContainerMapFromRuntime(runtimeService) + err := cm.memoryManager.Start(memorymanager.ActivePodsFunc(activePods), sourcesReady, podStatusProvider, runtimeService, containerMap) if err != nil { return fmt.Errorf("start memory manager error: %v", err) } @@ -735,7 +729,7 @@ func (cm *containerManagerImpl) SystemCgroupsLimit() v1.ResourceList { } } -func buildContainerMapFromRuntime(runtimeService internalapi.RuntimeService) (containermap.ContainerMap, error) { +func buildContainerMapFromRuntime(runtimeService internalapi.RuntimeService) containermap.ContainerMap { podSandboxMap := make(map[string]string) podSandboxList, _ := runtimeService.ListPodSandbox(nil) for _, p := range podSandboxList { @@ -746,12 +740,13 @@ func buildContainerMapFromRuntime(runtimeService internalapi.RuntimeService) (co containerList, _ := runtimeService.ListContainers(nil) for _, c := range containerList { if _, exists := podSandboxMap[c.PodSandboxId]; !exists { - return nil, fmt.Errorf("no PodsandBox found with Id '%s' for container with ID '%s' and Name '%s'", c.PodSandboxId, c.Id, c.Metadata.Name) + klog.InfoS("no PodSandBox found for the container", "podSandboxId", c.PodSandboxId, "containerName", c.Metadata.Name, "containerId", c.Id) + continue } containerMap.Add(podSandboxMap[c.PodSandboxId], c.Metadata.Name, c.Id) } - return containerMap, nil + return containerMap } func isProcessRunningInHost(pid int) (bool, error) {