Ansible role to manage systemd networkd
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
OpenStack Proposal Bot 9c2ac2b20d Updated from OpenStack Ansible Tests 5 hours ago
defaults Add ipforward option to configure IPForward 6 months ago
doc Merge "Replace git.openstack.org URLs with opendev.org URLs" 5 days ago
examples update example playbook to mirror a prod network 1 year ago
handlers Add async to the networkd start task 1 year ago
html-docs first commit 1 year ago
meta Add integrated coverage 3 months ago
releasenotes Replace git.openstack.org URLs with opendev.org URLs 3 months ago
tasks Add ipforward option to configure IPForward 6 months ago
templates Add ipforward option to configure IPForward 6 months ago
tests Add ipforward option to configure IPForward 6 months ago
vars debian: add support 4 months ago
zuul.d Add integrated coverage 3 months ago
.gitignore Updated from OpenStack Ansible Tests 5 hours ago
.gitreview OpenDev Migration Patch 4 months ago
CONTRIBUTING.rst Replace Chinese punctuation with English punctuation 9 months ago
LICENSE first commit 1 year ago
README.md Add release note link in README 1 year ago
Vagrantfile Updated from OpenStack Ansible Tests 1 month ago
ansible-role-requirements.yaml Replace git.openstack.org URLs with opendev.org URLs 3 months ago
bindep.txt Updated from OpenStack Ansible Tests 3 months ago
manual-test.rc first commit 1 year ago
run_tests.sh Updated from OpenStack Ansible Tests 1 month ago
setup.cfg Update home-page 7 months ago
setup.py first commit 1 year ago
tox.ini Replace git.openstack.org URLs with opendev.org URLs 3 months ago

README.md

Ansible systemd_networkd

This Ansible role configures systemd-networkd link, network, and netdev files.

This role requires the openstack-ansible-plugins repository to be available on your local system. The Ansible galaxy resolver will not retrieve this role for you. To get the plugins role in place clone the plugins repository before running this role.

# git clone https://github.com/openstack/openstack-ansible-plugins /etc/ansible/roles/plugins

Release notes for the project can be found at: https://docs.openstack.org/releasenotes/ansible-role-systemd_networkd

You can also use the ansible-galaxy command on the ansible-role-requirements.yml file.

# ansible-galaxy install -r ansible-role-requirements.yml

Example playbook

See the “defaults.yml” file for a full list of all available options.

- name: Create a systemd-networkd interfaces
  hosts: localhost
  become: true
  roles:
    - role: "systemd_networkd"
      systemd_netdevs:
        - NetDev:
            Name: dummy0
            Kind: dummy
        - NetDev:
            Name: dummy1
            Kind: dummy
        - NetDev:
            Name: bond0
            Kind: bond
          Bond:
            Mode: 802.3ad
            TransmitHashPolicy: layer3+4
            MIIMonitorSec: 1s
            LACPTransmitRate: fast
        - NetDev:
            Name: br-dummy
            Kind: bridge
      systemd_networks:
        - interface: "dummy0"
          bond: "bond0"
          mtu: 9000
        - interface: "dummy1"
          bond: "bond0"
          mtu: 9000
        - interface: "bond0"
          bridge: "br-dummy"
          mtu: 9000
        - interface: "br-dummy"
          address: "10.0.0.100"
          netmask: "255.255.255.0"
          gateway: "10.0.0.1"
          mtu: 9000
          usedns: true
          static_routes:
            - gateway: "10.1.0.1"
              cidr: "10.1.0.0/24"
          config_overrides:
            Network:
              ConfigureWithoutCarrier: true