Ansible role to manage systemd networkd
Go to file
melissaml fc954bcb01 Replace git.openstack.org URLs with opendev.org URLs
Change-Id: Ic0196a84e18c6d7fe2e4df40d9b15c3c76aae436
2019-05-10 18:48:48 +08:00
defaults Add ipforward option to configure IPForward 2019-02-11 09:55:26 -05:00
doc Replace git.openstack.org URLs with opendev.org URLs 2019-05-10 18:48:48 +08:00
examples update example playbook to mirror a prod network 2018-03-16 02:11:38 -05:00
handlers Add async to the networkd start task 2018-08-18 17:36:50 -05:00
html-docs first commit 2018-03-13 23:09:48 -05:00
meta debian: add support 2019-04-09 00:46:33 +00:00
releasenotes Replace git.openstack.org URLs with opendev.org URLs 2019-05-10 18:48:48 +08:00
tasks Add ipforward option to configure IPForward 2019-02-11 09:55:26 -05:00
templates Add ipforward option to configure IPForward 2019-02-11 09:55:26 -05:00
tests Add ipforward option to configure IPForward 2019-02-11 09:55:26 -05:00
vars debian: add support 2019-04-09 00:46:33 +00:00
zuul.d switch documentation job to new PTI 2018-08-21 13:21:43 +00:00
.gitignore Updated from OpenStack Ansible Tests 2018-10-02 14:57:07 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:29:42 +00:00
ansible-role-requirements.yaml Replace git.openstack.org URLs with opendev.org URLs 2019-05-10 18:48:48 +08:00
bindep.txt Updated from OpenStack Ansible Tests 2019-05-09 11:36:29 +00:00
CONTRIBUTING.rst Replace Chinese punctuation with English punctuation 2018-10-29 20:07:39 +08:00
LICENSE first commit 2018-03-13 23:09:48 -05:00
manual-test.rc first commit 2018-03-13 23:09:48 -05:00
README.md Add release note link in README 2018-06-29 14:51:46 +08:00
run_tests.sh Updated from OpenStack Ansible Tests 2019-05-09 11:36:29 +00:00
setup.cfg Update home-page 2019-01-12 09:43:17 +00:00
setup.py first commit 2018-03-13 23:09:48 -05:00
tox.ini Replace git.openstack.org URLs with opendev.org URLs 2019-05-10 18:48:48 +08:00
Vagrantfile Updated from OpenStack Ansible Tests 2019-05-09 11:36:29 +00:00

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