--- - name: Install k3s on 3-node cluster hosts: vm1,vm2,vm3 become: true become_user: root serial: 1 # Ensure tasks are executed one host at a time vars_files: - vars.yaml tasks: - name: Install open-iscsi on all nodes ansible.builtin.package: name: open-iscsi state: present - name: Install nfs-common on all nodes ansible.builtin.package: name: nfs-common state: present - name: Install cryptsetup and dmsetup packages ansible.builtin.package: name: - cryptsetup - dmsetup state: present - name: Load dm_crypt kernel module community.general.modprobe: name: dm_crypt state: present - name: Make dm_crypt module load on boot ansible.builtin.lineinfile: path: /etc/modules line: dm_crypt create: yes - name: Check if dm_crypt module is loaded ansible.builtin.shell: lsmod | grep dm_crypt register: dm_crypt_check failed_when: false changed_when: false - name: Show dm_crypt status ansible.builtin.debug: msg: "dm_crypt module is {{ 'loaded' if dm_crypt_check.rc == 0 else 'not loaded' }}"