mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2026-03-06 10:08:37 +03:00
Master component and kubelet container upgrade fixes
* Fixes an issue where apiserver and friends (controller manager, scheduler) were prevented from restarting after manifests/secrets are changed. This occurred when a replaced kubelet doesn't reconcile new master manifests, which caused old master component versions to linger during deployment. In my case this was causing upgrades from k8s 1.6/1.7 -> k8s 1.8 to fail * Improves transitions from kubelet container to host kubelet by preventing issues where kubelet container reappeared during the deployment
This commit is contained in:
@@ -13,6 +13,24 @@
|
||||
- Master | wait for kube-scheduler
|
||||
- Master | wait for kube-controller-manager
|
||||
|
||||
- name: Master | Restart apiserver
|
||||
command: /bin/true
|
||||
notify:
|
||||
- Master | Remove apiserver container
|
||||
- Master | wait for the apiserver to be running
|
||||
|
||||
- name: Master | Restart kube-scheduler
|
||||
command: /bin/true
|
||||
notify:
|
||||
- Master | Remove scheduler container
|
||||
- Master | wait for kube-scheduler
|
||||
|
||||
- name: Master | Restart kube-controller-manager
|
||||
command: /bin/true
|
||||
notify:
|
||||
- Master | Remove controller manager container
|
||||
- Master | wait for kube-controller-manager
|
||||
|
||||
- name: Master | reload systemd
|
||||
command: systemctl daemon-reload
|
||||
|
||||
@@ -21,6 +39,15 @@
|
||||
name: kubelet
|
||||
state: restarted
|
||||
|
||||
- name: Master | Remove apiserver container
|
||||
shell: "docker ps -af name=k8s_kube-apiserver* -q | xargs --no-run-if-empty docker rm -f"
|
||||
|
||||
- name: Master | Remove scheduler container
|
||||
shell: "docker ps -af name=k8s_kube-scheduler* -q | xargs --no-run-if-empty docker rm -f"
|
||||
|
||||
- name: Master | Remove controller manager container
|
||||
shell: "docker ps -af name=k8s_kube-controller-manager* -q | xargs --no-run-if-empty docker rm -f"
|
||||
|
||||
- name: Master | wait for kube-scheduler
|
||||
uri:
|
||||
url: http://localhost:10251/healthz
|
||||
|
||||
Reference in New Issue
Block a user