Ansible role to manage systemd networkd
Go to file
Dmitriy Rabotyagov 4ca473b944 Use config_template as a collection
Since we still use ceph-ansible that has their own implementation of
config_template module it's worth to use mentioned module as a collection
explicitly.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/819814



Change-Id: I7024d962ed858b0442583e24612a5da4d3fa37e7
2021-11-30 15:17:07 +02:00
defaults Add CentOS 8 support 2020-06-23 12:44:21 +03:00
doc Fix linter errors and update tests 2020-10-28 12:34:10 -05:00
examples update example playbook to mirror a prod network 2018-03-16 02:11:38 -05:00
files/gpg Add GPG Key for EPEL8 Repo 2020-11-02 10:22:15 +00:00
handlers Use ansible_facts[] instead of fact variables 2021-02-24 14:26:31 +00:00
html-docs first commit 2018-03-13 23:09:48 -05:00
meta Remove references to unsupported operating systems 2021-03-16 08:58:38 +00:00
releasenotes Use newer openstackdocstheme and reno versions 2020-06-03 18:57:45 +02:00
tasks Use config_template as a collection 2021-11-30 15:17:07 +02:00
templates Fix linter errors and update tests 2020-10-28 12:34:10 -05:00
tests Use ansible_facts[] instead of fact variables 2021-02-24 14:26:31 +00:00
vars Add GPG Key for EPEL8 Repo 2020-11-02 10:22:15 +00:00
zuul.d [reno] Stop publishing release notes 2021-01-22 18:23:02 +02:00
.gitignore Updated from OpenStack Ansible Tests 2019-08-20 03:07:47 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:29:42 +00:00
CONTRIBUTING.rst [ussuri][goal] Update contributor documentation 2020-05-13 00:08:50 +03:00
LICENSE 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
Vagrantfile Updated from OpenStack Ansible Tests 2021-03-22 08:55:15 +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 2021-03-12 22:23:47 +00:00
manual-test.rc first commit 2018-03-13 23:09:48 -05:00
run_tests.sh Updated from OpenStack Ansible Tests 2021-03-12 22:23:47 +00:00
setup.cfg Cleanup py27 support 2020-04-25 16:00:47 +02:00
setup.py Cleanup py27 support 2020-04-25 16:00:47 +02:00
tox.ini Cleanup py27 support 2020-04-25 16:00:47 +02:00

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