mirror of
https://github.com/PyratLabs/ansible-role-k3s
synced 2024-11-10 07:23:30 +01:00
fix: restore clustering feature
For some weird reason, string booleans were set on `k3s_control_node` and `k3s_primary_control_node`, making their behavior non-obvious (for python `bool("false") == True`). This fixes that problem, and BTW restores the ability to create clusters, which got lost with this bug. After running the role against a cluster, see: ```sh ❯ ansible -i inventories/testing.yaml k8s_node -m command -ba 'kubectl get node' vm0 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm0 Ready control-plane,etcd,master 9m19s v1.21.2+k3s1 vm2 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm2 Ready control-plane,etcd,master 9m22s v1.21.2+k3s1 vm1 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm1 Ready control-plane,etcd,master 9m22s v1.21.2+k3s1 ``` Now, after the patch: ```sh ❯ ansible -i inventories/testing.yaml k8s_node -m command -ba 'kubectl get node' vm0 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm0 Ready control-plane,etcd,master 2m2s v1.21.2+k3s1 vm1 Ready control-plane,etcd,master 58s v1.21.2+k3s1 vm2 Ready control-plane,etcd,master 80s v1.21.2+k3s1 vm1 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm0 Ready control-plane,etcd,master 2m2s v1.21.2+k3s1 vm1 Ready control-plane,etcd,master 58s v1.21.2+k3s1 vm2 Ready control-plane,etcd,master 80s v1.21.2+k3s1 vm2 | CHANGED | rc=0 >> NAME STATUS ROLES AGE VERSION vm0 Ready control-plane,etcd,master 2m2s v1.21.2+k3s1 vm1 Ready control-plane,etcd,master 58s v1.21.2+k3s1 vm2 Ready control-plane,etcd,master 80s v1.21.2+k3s1 ``` @Tecnativa TT2541
This commit is contained in:
parent
05e62b6344
commit
4b42a9bf49
2 changed files with 4 additions and 4 deletions
|
@ -9,12 +9,12 @@
|
|||
|
||||
- name: Ensure k3s control node fact is set
|
||||
ansible.builtin.set_fact:
|
||||
k3s_control_node: "{{ 'false' if k3s_build_cluster else 'true' }}"
|
||||
k3s_control_node: "{{ false if k3s_build_cluster else true }}"
|
||||
when: k3s_control_node is not defined
|
||||
|
||||
- name: Ensure k3s primary control node fact is set
|
||||
ansible.builtin.set_fact:
|
||||
k3s_primary_control_node: "{{ 'false' if k3s_build_cluster else 'true' }}"
|
||||
k3s_primary_control_node: "{{ false if k3s_build_cluster else true }}"
|
||||
when: k3s_primary_control_node is not defined
|
||||
|
||||
- name: Ensure k3s control plane port is captured
|
||||
|
|
|
@ -29,7 +29,7 @@ ExecStart={{ k3s_install_dir }}/k3s
|
|||
{% if k3s_control_node %}
|
||||
server
|
||||
{% if (k3s_etcd_datastore is defined and k3s_etcd_datastore) and (k3s_primary_control_node is not defined or not k3s_primary_control_node) and k3s_controller_list | length > 1 %}
|
||||
--server https://{{ k3s_registration_address }}:{{ k3s_control_plane_port | default(6443) }}
|
||||
--server https://{{ k3s_registration_address }}:{{ k3s_control_plane_port | default(6443) | string }}
|
||||
--token-file {{ k3s_token_location }}
|
||||
{% endif %}
|
||||
{% if k3s_server is defined %}
|
||||
|
@ -37,7 +37,7 @@ ExecStart={{ k3s_install_dir }}/k3s
|
|||
{% endif %}
|
||||
{% else %}
|
||||
agent
|
||||
--server https://{{ k3s_registration_address }}:{{ k3s_control_plane_port | default(6443) }}
|
||||
--server https://{{ k3s_registration_address }}:{{ k3s_control_plane_port | default(6443) | string }}
|
||||
--token-file {{ k3s_token_location }}
|
||||
{% if k3s_agent is defined %}
|
||||
--config {{ k3s_config_file }}
|
||||
|
|
Loading…
Reference in a new issue