diff --git a/pkg/kubelet/dockertools/convert.go b/pkg/kubelet/dockertools/convert.go index 31498ed6814..31fe5aa7c63 100644 --- a/pkg/kubelet/dockertools/convert.go +++ b/pkg/kubelet/dockertools/convert.go @@ -55,6 +55,6 @@ func toRuntimeImage(image *docker.APIImages) (*kubecontainer.Image, error) { return &kubecontainer.Image{ ID: image.ID, Tags: image.RepoTags, - Size: image.Size, + Size: image.VirtualSize, }, nil } diff --git a/pkg/kubelet/dockertools/convert_test.go b/pkg/kubelet/dockertools/convert_test.go index 6cac463a30f..7afa56d9fe1 100644 --- a/pkg/kubelet/dockertools/convert_test.go +++ b/pkg/kubelet/dockertools/convert_test.go @@ -51,9 +51,9 @@ func TestToRuntimeContainer(t *testing.T) { func TestToRuntimeImage(t *testing.T) { original := &docker.APIImages{ - ID: "aeeea", - RepoTags: []string{"abc", "def"}, - Size: 1234, + ID: "aeeea", + RepoTags: []string{"abc", "def"}, + VirtualSize: 1234, } expected := &kubecontainer.Image{ ID: "aeeea", diff --git a/pkg/kubelet/dockertools/manager.go b/pkg/kubelet/dockertools/manager.go index d1a2912f539..56ba68e9fbd 100644 --- a/pkg/kubelet/dockertools/manager.go +++ b/pkg/kubelet/dockertools/manager.go @@ -1067,9 +1067,8 @@ func (dm *DockerManager) killContainer(containerID types.UID) error { return err } -// TODO(vmarmol): Unexport this as it is no longer used externally. // Run a single container from a pod. Returns the docker container ID -func (dm *DockerManager) RunContainer(pod *api.Pod, container *api.Container, netMode, ipcMode string) (kubeletTypes.DockerID, error) { +func (dm *DockerManager) runContainerInPod(pod *api.Pod, container *api.Container, netMode, ipcMode string) (kubeletTypes.DockerID, error) { ref, err := kubecontainer.GenerateContainerRef(pod, container) if err != nil { glog.Errorf("Couldn't make a ref to pod %v, container %v: '%v'", pod.Name, container.Name, err) @@ -1157,7 +1156,7 @@ func (dm *DockerManager) createPodInfraContainer(pod *api.Pod) (kubeletTypes.Doc dm.recorder.Eventf(ref, "pulled", "Successfully pulled image %q", container.Image) } - id, err := dm.RunContainer(pod, container, netNamespace, "") + id, err := dm.runContainerInPod(pod, container, netNamespace, "") if err != nil { return "", err } @@ -1405,7 +1404,7 @@ func (dm *DockerManager) SyncPod(pod *api.Pod, runningPod kubecontainer.Pod, pod // TODO(dawnchen): Check RestartPolicy.DelaySeconds before restart a container namespaceMode := fmt.Sprintf("container:%v", podInfraContainerID) - _, err = dm.RunContainer(pod, container, namespaceMode, namespaceMode) + _, err = dm.runContainerInPod(pod, container, namespaceMode, namespaceMode) dm.updateReasonCache(pod, container, err) if err != nil { // TODO(bburns) : Perhaps blacklist a container after N failures? diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index 6f1ed166f6c..b2d65585003 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -1173,7 +1173,7 @@ func (kl *Kubelet) SyncPods(allPods []*api.Pod, podSyncTypes map[types.UID]metri } // Note that we just killed the unwanted pods. This may not have reflected - // in the cache. We need to bypass the cach to get the latest set of + // in the cache. We need to bypass the cache to get the latest set of // running pods to clean up the volumes. // TODO: Evaluate the performance impact of bypassing the runtime cache. runningPods, err = kl.containerRuntime.GetPods(false) @@ -1696,7 +1696,8 @@ func getPodReadyCondition(spec *api.PodSpec, statuses []api.ContainerStatus) []a return ready } -// GetPodStatus returns information from Docker about the containers in a pod +// GetPodStatus returns information of the containers in the pod from the +// container runtime. func (kl *Kubelet) GetPodStatus(podFullName string) (api.PodStatus, error) { // Check to see if we have a cached version of the status. cachedPodStatus, found := kl.statusManager.GetPodStatus(podFullName) @@ -1722,14 +1723,14 @@ func (kl *Kubelet) generatePodStatus(pod *api.Pod) (api.PodStatus, error) { if err != nil { // Error handling - glog.Infof("Query docker container info for pod %q failed with error (%v)", podFullName, err) + glog.Infof("Query container info for pod %q failed with error (%v)", podFullName, err) if strings.Contains(err.Error(), "resource temporarily unavailable") { // Leave upstream layer to decide what to do return api.PodStatus{}, err } else { pendingStatus := api.PodStatus{ Phase: api.PodPending, - Message: fmt.Sprintf("Query docker container info failed with error (%v)", err), + Message: fmt.Sprintf("Query container info failed with error (%v)", err), } return pendingStatus, nil } diff --git a/pkg/kubelet/pod_workers.go b/pkg/kubelet/pod_workers.go index 8e5ba11b829..aa842316cee 100644 --- a/pkg/kubelet/pod_workers.go +++ b/pkg/kubelet/pod_workers.go @@ -84,10 +84,10 @@ func (p *podWorkers) managePodLoop(podUpdates <-chan workUpdate) { for newWork := range podUpdates { func() { defer p.checkForUpdates(newWork.pod.UID, newWork.updateCompleteFn) - // We would like to have the state of Docker from at least the moment - // when we finished the previous processing of that pod. + // We would like to have the state of the containers from at least + // the moment when we finished the previous processing of that pod. if err := p.runtimeCache.ForceUpdateIfOlder(minRuntimeCacheTime); err != nil { - glog.Errorf("Error updating docker cache: %v", err) + glog.Errorf("Error updating the container runtime cache: %v", err) return } pods, err := p.runtimeCache.GetPods()