Hello community, here is the log from the commit of package kubernetes for openSUSE:Factory checked in at 2018-04-16 12:48:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kubernetes (Old) and /work/SRC/openSUSE:Factory/.kubernetes.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kubernetes" Mon Apr 16 12:48:43 2018 rev:19 rq:596323 version:1.9.6 Changes: -------- --- /work/SRC/openSUSE:Factory/kubernetes/kubernetes.changes 2018-03-28 10:32:45.654068817 +0200 +++ /work/SRC/openSUSE:Factory/.kubernetes.new/kubernetes.changes 2018-04-16 12:48:50.273442249 +0200 @@ -1,0 +2,17 @@ +Fri Apr 13 08:10:16 UTC 2018 - rfernandezlo...@suse.com + +- Prevent the Kubernetes image GC from cleaning the images that have been + loaded using container-feeder. +- Added patch: + * do-not-gc-sle-kubic-images.patch + + Fixes: bsc#1069469 + +------------------------------------------------------------------- +Thu Apr 12 12:52:03 UTC 2018 - fcaste...@suse.com + +- Put all the Kubernetes related services under the podruntime slice. This the + recommended deployment to allow fine resource control on Kubernetes. + bsc#1086185 + +------------------------------------------------------------------- New: ---- do-not-gc-sle-kubic-images.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kubernetes.spec ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.313404419 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.317404274 +0200 @@ -53,6 +53,7 @@ Patch1: git-upstream.patch Patch4: make-e2e_node-run-over-distro-bins.patch Patch6: build-with-debug-info.patch +Patch7: do-not-gc-sle-kubic-images.patch BuildRequires: bash-completion BuildRequires: git @@ -188,6 +189,7 @@ %patch1 -p1 %patch4 -p1 %patch6 -p1 +%patch7 -p1 %{goprep} github.com/kubernetes/kubernetes %build ++++++ do-not-gc-sle-kubic-images.patch ++++++ commit 980df8bb8044ff3214d9515084f2370b7c797a92 Author: Rafael Fernández López <eresli...@ereslibre.es> Date: Thu Mar 1 16:25:50 2018 +0100 Avoid the kubelet image GC to remove internal images Some images are loaded by the `container-feeder`, those images won't be available until we reboot again if they get cleaned by the image GC. Avoid to clean those. diff --git a/pkg/kubelet/images/image_gc_manager.go b/pkg/kubelet/images/image_gc_manager.go index 83f6e97956..19bc1f2261 100644 --- a/pkg/kubelet/images/image_gc_manager.go +++ b/pkg/kubelet/images/image_gc_manager.go @@ -20,7 +20,9 @@ import ( goerrors "errors" "fmt" "math" + "regexp" "sort" + "strings" "sync" "time" @@ -223,6 +225,19 @@ func (im *realImageGCManager) detectImages(detectTime time.Time) (sets.String, e } } + // Mark all "kubic/" and "slesXY/" prefixed images as in use. + for _, image := range images { + for _, repo_tag := range image.RepoTags { + is_kubic := strings.HasPrefix(repo_tag, "kubic/") + is_sles, _ := regexp.MatchString("^sles\\d{2}/", repo_tag) + if is_kubic || is_sles { + glog.V(5).Infof("Marking image %s (%s) as in use, as it is an internal image", repo_tag, image.ID) + imagesInUse.Insert(image.ID) + break + } + } + } + // Add new images and record those being used. now := time.Now() currentImages := sets.NewString() ++++++ kube-apiserver.service ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.449399472 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.449399472 +0200 @@ -23,5 +23,9 @@ Type=notify LimitNOFILE=65536 +# Kubernetes services should be under the podruntime slice. This the recommended +# deployment to allow fine resource control on Kubernetes. +Slice=podruntime.slice + [Install] WantedBy=multi-user.target ++++++ kube-controller-manager.service ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.469398745 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.469398745 +0200 @@ -14,5 +14,9 @@ Restart=on-failure LimitNOFILE=65536 +# Kubernetes services should be under the podruntime slice. This the recommended +# deployment to allow fine resource control on Kubernetes. +Slice=podruntime.slice + [Install] WantedBy=multi-user.target ++++++ kube-proxy.service ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.501397581 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.501397581 +0200 @@ -14,5 +14,9 @@ Restart=on-failure LimitNOFILE=65536 +# Kubernetes services should be under the podruntime slice. This the recommended +# deployment to allow fine resource control on Kubernetes. +Slice=podruntime.slice + [Install] WantedBy=multi-user.target ++++++ kube-scheduler.service ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.521396853 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.525396708 +0200 @@ -14,5 +14,9 @@ Restart=on-failure LimitNOFILE=65536 +# Kubernetes services should be under the podruntime slice. This the recommended +# deployment to allow fine resource control on Kubernetes. +Slice=podruntime.slice + [Install] WantedBy=multi-user.target ++++++ kubelet.service ++++++ --- /var/tmp/diff_new_pack.08KMmM/_old 2018-04-16 12:48:51.553395689 +0200 +++ /var/tmp/diff_new_pack.08KMmM/_new 2018-04-16 12:48:51.553395689 +0200 @@ -21,5 +21,9 @@ $KUBELET_ARGS Restart=on-failure +# Kubernetes services should be under the podruntime slice. This the recommended +# deployment to allow fine resource control on Kubernetes. +Slice=podruntime.slice + [Install] WantedBy=multi-user.target