ac60786c6f
* Add support for restart handlers for control plane on crio/containerd Change-Id: I8343cc4e9df7f55b732628ed01cc6e7ea5dcee85 * Update main.yml
97 lines
3.9 KiB
YAML
97 lines
3.9 KiB
YAML
---
|
|
- name: Preinstall | restart network
|
|
command: /bin/true
|
|
notify:
|
|
- Preinstall | reload network
|
|
- Preinstall | reload kubelet
|
|
- Preinstall | kube-controller configured
|
|
- Preinstall | kube-apiserver configured
|
|
- Preinstall | restart kube-controller-manager docker
|
|
- Preinstall | restart kube-controller-manager crio/containerd
|
|
- Preinstall | restart kube-apiserver docker
|
|
- Preinstall | restart kube-apiserver crio/containerd
|
|
when: not ansible_os_family in ["CoreOS", "Container Linux by CoreOS"]
|
|
|
|
# FIXME(bogdando) https://github.com/projectcalico/felix/issues/1185
|
|
- name: Preinstall | reload network
|
|
service:
|
|
name: >-
|
|
{% if ansible_os_family == "RedHat" -%}
|
|
network
|
|
{%- elif ansible_distribution == "Ubuntu" and ansible_distribution_release == "bionic" -%}
|
|
systemd-networkd
|
|
{%- elif ansible_os_family == "Debian" -%}
|
|
networking
|
|
{%- endif %}
|
|
state: restarted
|
|
when: not ansible_os_family in ["CoreOS", "Container Linux by CoreOS"] and kube_network_plugin not in ['canal', 'calico']
|
|
|
|
- name: Preinstall | update resolvconf for Container Linux by CoreOS
|
|
command: /bin/true
|
|
notify:
|
|
- Preinstall | apply resolvconf cloud-init
|
|
- Preinstall | reload kubelet
|
|
when: ansible_os_family in ["CoreOS", "Container Linux by CoreOS"]
|
|
|
|
- name: Preinstall | apply resolvconf cloud-init
|
|
command: /usr/bin/coreos-cloudinit --from-file {{ resolveconf_cloud_init_conf }}
|
|
when: ansible_os_family in ["CoreOS", "Container Linux by CoreOS"]
|
|
|
|
- name: Preinstall | reload kubelet
|
|
service:
|
|
name: kubelet
|
|
state: restarted
|
|
notify:
|
|
- Preinstall | kube-controller configured
|
|
- Preinstall | kube-apiserver configured
|
|
- Preinstall | restart kube-controller-manager docker
|
|
- Preinstall | restart kube-controller-manager crio/containerd
|
|
- Preinstall | restart kube-apiserver docker
|
|
- Preinstall | restart kube-apiserver crio/containerd
|
|
when: not dns_early|bool
|
|
|
|
# FIXME(mattymo): Also restart for kubeadm mode
|
|
- name: Preinstall | kube-apiserver configured
|
|
stat: path="{{ kube_manifest_dir }}/kube-apiserver.manifest"
|
|
register: kube_apiserver_set
|
|
when: inventory_hostname in groups['kube-master'] and dns_mode != 'none' and resolvconf_mode == 'host_resolvconf'
|
|
|
|
# FIXME(mattymo): Also restart for kubeadm mode
|
|
- name: Preinstall | kube-controller configured
|
|
stat: path="{{ kube_manifest_dir }}/kube-controller-manager.manifest"
|
|
register: kube_controller_set
|
|
when: inventory_hostname in groups['kube-master'] and dns_mode != 'none' and resolvconf_mode == 'host_resolvconf'
|
|
|
|
- name: Preinstall | restart kube-controller-manager docker
|
|
shell: "docker ps -f name=k8s_POD_kube-controller-manager* -q | xargs --no-run-if-empty docker rm -f"
|
|
when:
|
|
- container_manager == "docker"
|
|
- inventory_hostname in groups['kube-master']
|
|
- dns_mode != 'none'
|
|
- resolvconf_mode == 'host_resolvconf'
|
|
- kube_controller_set.stat.exists
|
|
|
|
- name: Preinstall | restart kube-controller-manager crio/containerd
|
|
shell: crictl pods --name kube-controller-manager* -q | xargs -I% --no-run-if-empty bash -c 'crictl stopp % && crictl rmp %'
|
|
when:
|
|
- container_manager in ['crio', 'containerd']
|
|
- inventory_hostname in groups['kube-master']
|
|
- dns_mode != 'none'
|
|
- resolvconf_mode == 'host_resolvconf'
|
|
- kube_controller_set.stat.exists
|
|
|
|
- name: Preinstall | restart kube-apiserver docker
|
|
shell: "docker ps -f name=k8s_POD_kube-apiserver* -q | xargs --no-run-if-empty docker rm -f"
|
|
when:
|
|
- container_manager == "docker"
|
|
- inventory_hostname in groups['kube-master']
|
|
- dns_mode != 'none'
|
|
- resolvconf_mode == 'host_resolvconf'
|
|
|
|
- name: Preinstall | restart kube-apiserver crio/containerd
|
|
shell: crictl pods --name kube-apiserver* -q | xargs -I% --no-run-if-empty bash -c 'crictl stopp % && crictl rmp %'
|
|
when:
|
|
- container_manager in ['crio', 'containerd']
|
|
- inventory_hostname in groups['kube-master']
|
|
- dns_mode != 'none'
|
|
- resolvconf_mode == 'host_resolvconf'
|