Dirk's Tech Findings

Ansible: Adapt multiple sysctl settings in single task

Publication date: 2020-09-10

Issue: Ansible sysctl module modifies only one setting at a time

Example:

  - name: sysctl setting
    sysctl:
      name: net.ipv4.ip_forward
      value: 1
      state: present
      sysctl_set: yes

Solution: Use a "with_items" loop

Use a "with_items" loop to adapt multiple settings in the same task:

  - name: sysctl settings
    sysctl:
      name: "{{ item.name }}"
      value: "{{ item.value }}"
      state: present
      sysctl_set: yes
    with_items:
      - { name: 'net.ipv4.ip_forward', value: '1' }
      - { name: 'net.ipv6.conf.all.forwarding', value: '1' }
      - { name: 'net.ipv4.conf.all.send_redirects', value: '0' }

Hint towards the solution

Back to topic list...