From 5c42070eeba44ec7cd8c13cd32822880f4ec4a21 Mon Sep 17 00:00:00 2001 From: Abhishek Shah Date: Thu, 26 Mar 2015 10:03:51 -0700 Subject: [PATCH] Kill running Pod running with -net=true if kubelet does not allow it --- pkg/kubelet/kubelet.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index ee2b1230abd..e229db61bb2 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -1372,11 +1372,22 @@ func (kl *Kubelet) canRunPod(pod *api.Pod) error { return nil } +func (kl *Kubelet) killContainersInRunningPod(runningPod kubecontainer.Pod) { + for _, container := range runningPod.Containers { + glog.V(3).Infof("Killing unwanted container %+v", container) + err := kl.killContainer(container) + if err != nil { + glog.Errorf("Error killing container: %v", err) + } + } +} + func (kl *Kubelet) syncPod(pod *api.Pod, mirrorPod *api.Pod, runningPod kubecontainer.Pod) error { podFullName := kubecontainer.GetPodFullName(pod) uid := pod.UID err := kl.canRunPod(pod) if err != nil { + kl.killContainersInRunningPod(runningPod) return err }