--- # file: tasks/main.yaml - name: "Load Kernel Modules On Startup (vfio-pci)" ansible.builtin.lineinfile: path: "/etc/modules" state: "present" line: "{{ item }}" with_items: - "vfio-pci" tags: - load-kernel-modules - name: "Disable IPv6 Router Advertisement" ansible.builtin.sysctl: name: "net.ipv6.conf.default.accept_ra" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv6 MLDv1 interval" ansible.builtin.sysctl: name: "net.ipv6.conf.default.mldv1_unsolicited_report_interval" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv6 MLDv2 interval" ansible.builtin.sysctl: name: "net.ipv6.conf.default.mldv2_unsolicited_report_interval" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv6 Autoconf" ansible.builtin.sysctl: name: "net.ipv6.conf.default.autoconf" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv6 MC Forwarding" ansible.builtin.sysctl: name: "net.ipv6.conf.default.mc_forwarding" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv4 IGMPv2 interval" ansible.builtin.sysctl: name: "net.ipv4.conf.default.igmpv2_unsolicited_report_interval" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Disable IPv4 IGMPv3 interval" ansible.builtin.sysctl: name: "net.ipv4.conf.default.igmpv3_unsolicited_report_interval" value: "0" state: "present" sysctl_file: "/etc/sysctl.d/90-csit.conf" reload: "yes" tags: - set-sysctl - name: "Copy csit-initialize-vfs.sh" ansible.builtin.copy: src: "files/csit-initialize-vfs.sh" dest: "/usr/local/bin/" owner: "root" group: "root" mode: 0744 tags: - copy-vf-script - name: "Copy csit-initialize-vfs-data.sh" ansible.builtin.copy: src: "files/{{ vfs_data_file }}" dest: "/usr/local/bin/csit-initialize-vfs-data.sh" owner: "root" group: "root" mode: 0744 tags: copy-vf-data-script when: - vfs_data_file is defined - name: "Copy Default csit-initialize-vfs-data.sh" ansible.builtin.copy: src: "files/csit-initialize-vfs-default.sh" dest: "/usr/local/bin/csit-initialize-vfs-data.sh" owner: "root" group: "root" mode: 0744 tags: copy-vf-data-script when: - vfs_data_file is not defined - name: "Start csit-initialize-vfs.service" ansible.builtin.copy: src: "files/csit-initialize-vfs.service" dest: "/etc/systemd/system/" owner: "root" group: "root" mode: 0644 notify: - "Start csit-initialize-vfs.service" tags: - start-vf-service - ansible.builtin.meta: "flush_handlers" - name: "Set Hugepages In GRUB" ansible.builtin.lineinfile: path: "/etc/default/grub" state: "present" regexp: "^GRUB_CMDLINE_LINUX=" line: "GRUB_CMDLINE_LINUX=\"{% for key, value in grub.items() %}{% if value %}{{key}}={{value}} {% else %}{{key}} {% endif %}{% endfor %}\"" notify: - "Update GRUB" tags: - set-grub