You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.3 KiB

  1. ---
  2. - name: kubeadm | Upgrade first master
  3. command: >-
  4. timeout -k 600s 600s
  5. {{ bin_dir }}/kubeadm
  6. upgrade apply -y {{ kube_version }}
  7. --config={{ kube_config_dir }}/kubeadm-config.yaml
  8. --ignore-preflight-errors=all
  9. --allow-experimental-upgrades
  10. --allow-release-candidate-upgrades
  11. --etcd-upgrade=false
  12. --force
  13. register: kubeadm_upgrade
  14. # Retry is because upload config sometimes fails
  15. retries: 3
  16. when: inventory_hostname == groups['kube-master']|first
  17. failed_when: kubeadm_upgrade.rc != 0 and "field is immutable" not in kubeadm_upgrade.stderr
  18. notify: Master | restart kubelet
  19. # FIXME: https://github.com/kubernetes/kubeadm/issues/1498 remove stdout_lines
  20. # check after issue is fixed
  21. - name: kubeadm | Upgrade other masters
  22. command: >-
  23. timeout -k 600s 600s
  24. {{ bin_dir }}/kubeadm
  25. upgrade apply -y {{ kube_version }}
  26. --config={{ kube_config_dir }}/kubeadm-config.yaml
  27. --ignore-preflight-errors=all
  28. --allow-experimental-upgrades
  29. --allow-release-candidate-upgrades
  30. --etcd-upgrade=false
  31. register: kubeadm_upgrade
  32. when: inventory_hostname != groups['kube-master']|first
  33. failed_when:
  34. - kubeadm_upgrade.rc != 0
  35. - '"field is immutable" not in kubeadm_upgrade.stderr'
  36. - kubeadm_upgrade.stdout_lines | length > 1
  37. notify: Master | restart kubelet