2015-10-03 20:19:50 +00:00
|
|
|
---
|
2018-01-29 11:37:48 +00:00
|
|
|
- import_tasks: pre-upgrade.yml
|
2017-10-05 07:43:04 +00:00
|
|
|
tags:
|
|
|
|
- k8s-pre-upgrade
|
2015-12-16 22:49:01 +00:00
|
|
|
|
2018-12-26 09:52:53 +00:00
|
|
|
- name: Create webhook token auth config
|
|
|
|
template:
|
|
|
|
src: webhook-token-auth-config.yaml.j2
|
|
|
|
dest: "{{ kube_config_dir }}/webhook-token-auth-config.yaml"
|
2021-07-12 07:00:47 +00:00
|
|
|
mode: 0640
|
2018-12-26 09:52:53 +00:00
|
|
|
when: kube_webhook_token_auth|default(false)
|
|
|
|
|
2020-08-24 13:29:41 +00:00
|
|
|
- name: Create webhook authorization config
|
|
|
|
template:
|
|
|
|
src: webhook-authorization-config.yaml.j2
|
|
|
|
dest: "{{ kube_config_dir }}/webhook-authorization-config.yaml"
|
2021-07-12 07:00:47 +00:00
|
|
|
mode: 0640
|
2020-08-24 13:29:41 +00:00
|
|
|
when: kube_webhook_authorization|default(false)
|
|
|
|
|
2021-04-06 07:35:35 +00:00
|
|
|
- name: Create kube-scheduler config
|
|
|
|
template:
|
2021-12-21 09:38:46 +00:00
|
|
|
src: kubescheduler-config.yaml.j2
|
2021-04-06 07:35:35 +00:00
|
|
|
dest: "{{ kube_config_dir }}/kubescheduler-config.yaml"
|
|
|
|
mode: 0644
|
|
|
|
|
2018-03-15 19:20:05 +00:00
|
|
|
- import_tasks: encrypt-at-rest.yml
|
2018-12-06 10:33:38 +00:00
|
|
|
when:
|
|
|
|
- kube_encrypt_secret_data
|
2018-03-15 19:20:05 +00:00
|
|
|
|
2018-12-06 10:33:38 +00:00
|
|
|
- name: Install | Copy kubectl binary from download dir
|
2020-11-30 23:12:50 +00:00
|
|
|
copy:
|
2019-11-28 13:41:03 +00:00
|
|
|
src: "{{ local_release_dir }}/kubectl-{{ kube_version }}-{{ image_arch }}"
|
2018-09-16 02:50:56 +00:00
|
|
|
dest: "{{ bin_dir }}/kubectl"
|
2020-11-30 23:12:50 +00:00
|
|
|
mode: 0755
|
|
|
|
remote_src: true
|
2017-10-05 07:43:04 +00:00
|
|
|
tags:
|
|
|
|
- kubectl
|
|
|
|
- upgrade
|
2015-12-11 10:52:20 +00:00
|
|
|
|
2017-01-17 17:36:58 +00:00
|
|
|
- name: Install kubectl bash completion
|
|
|
|
shell: "{{ bin_dir }}/kubectl completion bash >/etc/bash_completion.d/kubectl.sh"
|
2018-07-30 09:55:25 +00:00
|
|
|
when: ansible_os_family in ["Debian","RedHat"]
|
2017-10-05 07:43:04 +00:00
|
|
|
tags:
|
|
|
|
- kubectl
|
2021-07-12 07:00:47 +00:00
|
|
|
ignore_errors: true # noqa ignore-errors
|
2016-11-14 08:22:46 +00:00
|
|
|
|
2019-08-05 01:15:48 +00:00
|
|
|
- name: Set kubectl bash completion file permissions
|
2017-01-17 17:36:58 +00:00
|
|
|
file:
|
|
|
|
path: /etc/bash_completion.d/kubectl.sh
|
2016-11-14 08:22:46 +00:00
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: 0755
|
2017-01-17 17:36:58 +00:00
|
|
|
when: ansible_os_family in ["Debian","RedHat"]
|
2017-10-05 07:43:04 +00:00
|
|
|
tags:
|
|
|
|
- kubectl
|
|
|
|
- upgrade
|
2021-07-12 07:00:47 +00:00
|
|
|
ignore_errors: true # noqa ignore-errors
|
2016-11-14 08:22:46 +00:00
|
|
|
|
2018-08-22 16:16:13 +00:00
|
|
|
- name: Disable SecurityContextDeny admission-controller and enable PodSecurityPolicy
|
|
|
|
set_fact:
|
|
|
|
kube_apiserver_enable_admission_plugins: "{{ kube_apiserver_enable_admission_plugins | difference(['SecurityContextDeny']) | union(['PodSecurityPolicy']) | unique }}"
|
|
|
|
when: podsecuritypolicy_enabled
|
|
|
|
|
2022-01-13 07:12:29 +00:00
|
|
|
- name: Define nodes already joined to existing cluster and first_kube_control_plane
|
|
|
|
import_tasks: define-first-kube-control.yml
|
|
|
|
|
2018-12-06 10:33:38 +00:00
|
|
|
- name: Include kubeadm setup
|
2018-01-29 11:37:48 +00:00
|
|
|
import_tasks: kubeadm-setup.yml
|
2019-06-20 18:12:51 +00:00
|
|
|
|
|
|
|
- name: Include kubeadm etcd extra tasks
|
|
|
|
include_tasks: kubeadm-etcd.yml
|
2022-02-22 16:53:16 +00:00
|
|
|
when: etcd_deployment_type == "kubeadm"
|
2019-09-09 17:33:20 +00:00
|
|
|
|
|
|
|
- name: Include kubeadm secondary server apiserver fixes
|
|
|
|
include_tasks: kubeadm-fix-apiserver.yml
|
2021-03-09 07:55:00 +00:00
|
|
|
|
|
|
|
- name: Include kubelet client cert rotation fixes
|
|
|
|
include_tasks: kubelet-fix-client-cert-rotation.yml
|
|
|
|
when: kubelet_rotate_certificates
|
2021-03-22 18:22:48 +00:00
|
|
|
|
|
|
|
- name: Install script to renew K8S control plane certificates
|
|
|
|
template:
|
|
|
|
src: k8s-certs-renew.sh.j2
|
|
|
|
dest: "{{ bin_dir }}/k8s-certs-renew.sh"
|
2021-07-12 07:00:47 +00:00
|
|
|
mode: 0755
|
2021-03-22 18:22:48 +00:00
|
|
|
|
|
|
|
- name: Renew K8S control plane certificates monthly 1/2
|
|
|
|
template:
|
|
|
|
src: "{{ item }}.j2"
|
|
|
|
dest: "/etc/systemd/system/{{ item }}"
|
2021-07-12 07:00:47 +00:00
|
|
|
mode: 0644
|
2021-03-22 18:22:48 +00:00
|
|
|
with_items:
|
|
|
|
- k8s-certs-renew.service
|
|
|
|
- k8s-certs-renew.timer
|
|
|
|
register: k8s_certs_units
|
|
|
|
when: auto_renew_certificates
|
|
|
|
|
|
|
|
- name: Renew K8S control plane certificates monthly 2/2
|
|
|
|
systemd:
|
|
|
|
name: k8s-certs-renew.timer
|
|
|
|
enabled: yes
|
|
|
|
state: started
|
|
|
|
daemon-reload: "{{ k8s_certs_units is changed }}"
|
|
|
|
when: auto_renew_certificates
|