|
15 | 15 | # Install kubelet as a windows service |
16 | 16 | # Requires --windows-service flag: https://github.com/kubernetes/kubernetes/blob/7f23a743e8c23ac6489340bbb34fa6f1d392db9d/cmd/kubelet/app/options/osflags_windows.go#L26 |
17 | 17 | # Does not support kubeadm KUBELET_KUBEADM_ARGS which is used by Cluster API to pass extra user args |
18 | | -- name: Install kubelet as service |
19 | | - ansible.windows.win_service: |
20 | | - name: kubelet |
21 | | - start_mode: auto |
22 | | - path: > |
23 | | - "{{ kubernetes_install_path }}\kube-log-runner.exe" --log-file={{ systemdrive.stdout | trim }}/var/log/kubelet/kubelet.log |
24 | | - {{kubernetes_install_path }}\kubelet.exe --windows-service |
25 | | - --cert-dir={{ systemdrive.stdout | trim }}/var/lib/kubelet/pki |
26 | | - --config={{ systemdrive.stdout | trim }}/var/lib/kubelet/config.yaml |
27 | | - --bootstrap-kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/bootstrap-kubelet.conf |
28 | | - --kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/kubelet.conf |
29 | | - --pod-infra-container-image="{{ pause_image }}" |
30 | | - --enable-debugging-handlers --cgroups-per-qos=false --enforce-node-allocatable="" |
31 | | - --container-runtime-endpoint="npipe:////./pipe/containerd-containerd" |
32 | | - --resolv-conf="" |
| 18 | +- name: Install kubelet service - with restart template |
| 19 | + when: kubernetes_auto_kubelet_service_restart | bool |
| 20 | + block: |
| 21 | + - name: Install kube-log-runner |
| 22 | + ansible.windows.win_get_url: |
| 23 | + url: "{{ kubernetes_base_url }}/kube-log-runner.exe" |
| 24 | + dest: "{{ kubernetes_install_path }}\\" |
| 25 | + retries: 5 |
| 26 | + delay: 3 |
| 27 | + register: kubernetes_download |
| 28 | + until: kubernetes_download is not failed |
| 29 | + - name: Install kubelet as service |
| 30 | + ansible.windows.win_service: |
| 31 | + name: kubelet |
| 32 | + start_mode: auto |
| 33 | + path: > |
| 34 | + "{{ kubernetes_install_path }}\kube-log-runner.exe" --log-file={{ systemdrive.stdout | trim }}/var/log/kubelet/kubelet.log |
| 35 | + {{ kubernetes_install_path }}\kubelet.exe --windows-service |
| 36 | + --cert-dir={{ systemdrive.stdout | trim }}/var/lib/kubelet/pki |
| 37 | + --config={{ systemdrive.stdout | trim }}/var/lib/kubelet/config.yaml |
| 38 | + --bootstrap-kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/bootstrap-kubelet.conf |
| 39 | + --kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/kubelet.conf |
| 40 | + --pod-infra-container-image="{{ pause_image }}" |
| 41 | + --enable-debugging-handlers --cgroups-per-qos=false --enforce-node-allocatable="" |
| 42 | + --container-runtime-endpoint="npipe:////./pipe/containerd-containerd" |
| 43 | + --resolv-conf="" |
33 | 44 |
|
34 | | -- name: Create file to restart kubelet as a windows service |
35 | | - ansible.windows.win_template: |
36 | | - src: templates/RestartKubelet.ps1 |
37 | | - dest: "{{ kubernetes_install_path }}\\RestartKubelet.ps1" |
| 45 | + - name: Create file to restart kubelet as a windows service |
| 46 | + ansible.windows.win_template: |
| 47 | + src: templates/RestartKubelet.ps1 |
| 48 | + dest: "{{ kubernetes_install_path }}\\RestartKubelet.ps1" |
| 49 | + |
| 50 | +- name: Install kubelet service - without restart template |
| 51 | + when: not kubernetes_auto_kubelet_service_restart | bool |
| 52 | + block: |
| 53 | + - name: Install kubelet as service |
| 54 | + ansible.windows.win_service: |
| 55 | + name: kubelet |
| 56 | + start_mode: manual |
| 57 | + path: > |
| 58 | + {{ kubernetes_install_path }}\kubelet.exe --windows-service |
| 59 | + --cert-dir={{ systemdrive.stdout | trim }}/var/lib/kubelet/pki |
| 60 | + --config={{ systemdrive.stdout | trim }}/var/lib/kubelet/config.yaml |
| 61 | + --bootstrap-kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/bootstrap-kubelet.conf |
| 62 | + --kubeconfig={{ systemdrive.stdout | trim }}/etc/kubernetes/kubelet.conf |
| 63 | + --hostname-override=$(hostname) --pod-infra-container-image=`"{{ pause_image }}`" |
| 64 | + --enable-debugging-handlers --cgroups-per-qos=false --enforce-node-allocatable=`"`" |
| 65 | + --resolv-conf=`"`" --log-dir={{ systemdrive.stdout | trim }}/var/log/kubelet |
| 66 | + --logtostderr=false {{ additional_kubelet_args if additional_kubelet_args is defined }} |
0 commit comments