Unverified Commit 006653f3 authored by Meagan Harris's avatar Meagan Harris Committed by GitHub
Browse files

Make agent and server groups configurable (#331)



* Make agent and server groups configurable

Signed-off-by: default avatarMeagan Harris <thewitch@siliconsorceress.com>

* Fix typo in upgrade role

Co-authored-by: default avatarDerek Nola <derek.nola@suse.com>
Signed-off-by: default avatarMeagan Harris <47128741+simagick@users.noreply.github.com>

---------

Signed-off-by: default avatarMeagan Harris <thewitch@siliconsorceress.com>
Signed-off-by: default avatarMeagan Harris <47128741+simagick@users.noreply.github.com>
Co-authored-by: default avatarDerek Nola <derek.nola@suse.com>
parent af291592
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -5,3 +5,5 @@ api_port: 6443 # noqa var-naming[no-role-prefix]
kubeconfig: ~/.kube/config.new  # noqa var-naming[no-role-prefix]
user_kubectl: true  # noqa var-naming[no-role-prefix]
cluster_context: k3s-ansible  # noqa var-naming[no-role-prefix]
server_group: server  # noqa var-naming[no-role-prefix]
agent_group: agent  # noqa var-naming[no-role-prefix]
+9 −9
Original line number Diff line number Diff line
@@ -55,10 +55,10 @@
        mode: "0644"

- name: Init first server node
  when: inventory_hostname == groups['server'][0]
  when: inventory_hostname == groups[server_group][0]
  block:
    - name: Copy K3s service file [Single]
      when: groups['server'] | length == 1
      when: groups[server_group] | length == 1
      ansible.builtin.template:
        src: "k3s-single.service.j2"
        dest: "{{ systemd_dir }}/k3s.service"
@@ -67,7 +67,7 @@
        mode: "0644"

    - name: Copy K3s service file [HA]
      when: groups['server'] | length > 1
      when: groups[server_group] | length > 1
      ansible.builtin.template:
        src: "k3s-cluster-init.service.j2"
        dest: "{{ systemd_dir }}/k3s.service"
@@ -90,7 +90,7 @@
        enabled: true

    - name: Pause to allow first server startup
      when: (groups['server'] | length) > 1
      when: (groups[server_group] | length) > 1
      ansible.builtin.pause:
        seconds: 10

@@ -144,11 +144,11 @@

- name: Start other server if any and verify status
  when:
    - (groups['server'] | length) > 1
    - inventory_hostname != groups['server'][0]
    - (groups[server_group] | length) > 1
    - inventory_hostname != groups[server_group][0]
  block:
    - name: Copy K3s service file [HA]
      when: groups['server'] | length > 1
      when: groups[server_group] | length > 1
      ansible.builtin.template:
        src: "k3s-ha.service.j2"
        dest: "{{ systemd_dir }}/k3s.service"
@@ -164,12 +164,12 @@
        enabled: true

    - name: Verify that all server nodes joined
      when: (groups['server'] | length) > 1
      when: (groups[server_group] | length) > 1
      ansible.builtin.command:
        cmd: >
          k3s kubectl get nodes -l "node-role.kubernetes.io/control-plane=true" -o=jsonpath="{.items[*].metadata.name}"
      register: nodes
      until: nodes.rc == 0 and (nodes.stdout.split() | length) == (groups['server'] | length)
      until: nodes.rc == 0 and (nodes.stdout.split() | length) == (groups[server_group] | length)
      retries: 20
      delay: 10
      changed_when: false
+2 −0
Original line number Diff line number Diff line
---
systemd_dir: /etc/systemd/system  # noqa var-naming[no-role-prefix]
server_group: server  # noqa var-naming[no-role-prefix]
agent_group: agent  # noqa var-naming[no-role-prefix]
+2 −2
Original line number Diff line number Diff line
@@ -54,14 +54,14 @@
      loop: "{{ k3s_service_files.files }}"

    - name: Restart K3s service [server]
      when: "'server' in group_names"
      when: "server_group in group_names"
      ansible.builtin.systemd:
        state: restarted
        daemon_reload: true
        name: k3s

    - name: Restart K3s service [agent]
      when: "'agent' in group_names"
      when: "agent_group in group_names"
      ansible.builtin.systemd:
        state: restarted
        daemon_reload: true