|
60 | 60 | src: apiserver-audit-policy.yaml.j2
|
61 | 61 | dest: "{{ audit_policy_file }}"
|
62 | 62 | mode: "0640"
|
63 |
| - register: apiserver_audit_policy_update |
64 | 63 | when: kubernetes_audit | default(false) or kubernetes_audit_webhook | default(false)
|
| 64 | + notify: Control plane | Restart apiserver |
65 | 65 |
|
66 | 66 | - name: Write api audit webhook config yaml
|
67 | 67 | template:
|
68 | 68 | src: apiserver-audit-webhook-config.yaml.j2
|
69 | 69 | dest: "{{ audit_webhook_config_file }}"
|
70 | 70 | mode: "0640"
|
71 |
| - register: apiserver_audit_webhook_config_update |
72 | 71 | when: kubernetes_audit_webhook | default(false)
|
| 72 | + notify: Control plane | Restart apiserver |
73 | 73 |
|
74 | 74 | - name: Create apiserver tracing config directory
|
75 | 75 | file:
|
|
83 | 83 | src: apiserver-tracing.yaml.j2
|
84 | 84 | dest: "{{ kube_config_dir }}/tracing/apiserver-tracing.yaml"
|
85 | 85 | mode: "0640"
|
86 |
| - register: apiserver_tracing_config_update |
87 | 86 | when: kube_apiserver_tracing
|
| 87 | + notify: Control plane | Restart apiserver |
88 | 88 |
|
89 | 89 | # Nginx LB(default), If kubeadm_config_api_fqdn is defined, use other LB by kubeadm controlPlaneEndpoint.
|
90 | 90 | - name: Set kubeadm_config_api_fqdn define
|
|
111 | 111 | src: "admission-controls.yaml.j2"
|
112 | 112 | dest: "{{ kube_config_dir }}/admission-controls/admission-controls.yaml"
|
113 | 113 | mode: "0640"
|
114 |
| - register: apiserver_admission_control_config_update |
115 | 114 | when: kube_apiserver_admission_control_config_file
|
| 115 | + notify: Control plane | Restart apiserver |
116 | 116 |
|
117 | 117 | - name: Kubeadm | Push admission control config files
|
118 | 118 | template:
|
119 | 119 | src: "{{ item | lower }}.yaml.j2"
|
120 | 120 | dest: "{{ kube_config_dir }}/admission-controls/{{ item | lower }}.yaml"
|
121 | 121 | mode: "0640"
|
122 |
| - register: apiserver_admission_control_plugin_config_update |
123 | 122 | when:
|
124 | 123 | - kube_apiserver_admission_control_config_file
|
125 | 124 | - item in kube_apiserver_admission_plugins_needs_configuration
|
126 | 125 | loop: "{{ kube_apiserver_enable_admission_plugins }}"
|
| 126 | + notify: Control plane | Restart apiserver |
127 | 127 |
|
128 | 128 | - name: Kubeadm | Check apiserver.crt SANs
|
129 | 129 | vars:
|
|
240 | 240 | - upgrade_cluster_setup
|
241 | 241 | - kubeadm_already_run.stat.exists
|
242 | 242 |
|
243 |
| -- name: Kubeadm | Trigger restart kube-apiserver |
244 |
| - debug: |
245 |
| - msg: Detected changes in kube-apiserver config files |
246 |
| - changed_when: true |
247 |
| - when: |
248 |
| - - kubeadm_already_run.stat.exists |
249 |
| - - > |
250 |
| - apiserver_audit_policy_update.changed or |
251 |
| - apiserver_audit_webhook_config_update.changed or |
252 |
| - apiserver_tracing_config_update.changed or |
253 |
| - apiserver_admission_control_config_update.changed or |
254 |
| - apiserver_admission_control_plugin_config_update.changed |
255 |
| - notify: Control plane | Restart apiserver |
256 |
| - |
257 | 243 | # FIXME(mattymo): from docs: If you don't want to taint your control-plane node, set this field to an empty slice, i.e. `taints: {}` in the YAML file.
|
258 | 244 | - name: Kubeadm | Remove taint for control plane node with node role
|
259 | 245 | command: "{{ kubectl }} taint node {{ inventory_hostname }} {{ item }}"
|
|
0 commit comments