ansible-role-os-bootstrap/tasks/sysctl.yml

55 lines
1.8 KiB
YAML

---
- name: sysctl | Ensure that /etc/sysctl.d exists
tags: [sysctl, kernel, sysctl_ipv6, ipv6]
block:
- name: sysctl | Ensure that the /etc/sysctl.d directory exists
ansible.builtin.file:
path: /etc/sysctl.d
state: directory
owner: root
group: root
mode: "0755"
- name: sysctl | Manage sysctl values
tags: [sysctl, kernel]
block:
- name: sysctl | Set the custom sysctl values
ansible.posix.sysctl:
name: "{{ item.name }}"
value: "{{ item.value }}"
sysctl_file: "{{ item.sysctlfile | default ('/etc/sysctl.d/90-custom-values.conf') }}"
reload: "{{ item.sysctl_reload | default(true) }}"
state: "{{ item.sysctlfile_state | default('present') }}"
loop: "{{ sysctl_custom_options }}"
- name: sysctl | Manage IPv6
tags: [sysctl, kernel, sysctl_ipv6, ipv6]
block:
- name: sysctl | Disable the in kernel ipv6 support
ansible.posix.sysctl:
name: "{{ item }}"
value: 1
sysctl_file: "{{ ipv6_sysctl_file }}"
reload: true
state: present
loop:
- net.ipv6.conf.all.disable_ipv6
- net.ipv6.conf.default.disable_ipv6
- net.ipv6.conf.lo.disable_ipv6
- net.ipv6.conf.{{ ansible_default_ipv4.interface }}.disable_ipv6
when: disable_ipv6
- name: sysctl | Enable the in kernel ipv6 support
ansible.posix.sysctl:
name: "{{ item }}"
value: 0
sysctl_file: "{{ ipv6_sysctl_file }}"
reload: true
state: present
loop:
- net.ipv6.conf.all.disable_ipv6
- net.ipv6.conf.default.disable_ipv6
- net.ipv6.conf.lo.disable_ipv6
- net.ipv6.conf.{{ ansible_default_ipv4.interface }}.disable_ipv6
when: not disable_ipv6