Ansible role to manage systemd networkd
b9c7d79089
Name option is not a valid one for systemd.link [1] while it is for systemd.network [2] though having same meaning. This basically resulted in link files being just ignored by udevadm and were not loaded properly after reboot [1] https://www.freedesktop.org/software/systemd/man/latest/systemd.link.html#OriginalName= [2] https://www.freedesktop.org/software/systemd/man/latest/systemd.network.html#Name= Closes-Bug: #1896589 Change-Id: If82946b7f5ad3c618606110576c586632f9bbd08 |
||
---|---|---|
defaults | ||
doc | ||
examples | ||
files/gpg | ||
handlers | ||
html-docs | ||
meta | ||
releasenotes | ||
tasks | ||
templates | ||
tests | ||
vars | ||
zuul.d | ||
.gitignore | ||
.gitreview | ||
bindep.txt | ||
CONTRIBUTING.rst | ||
LICENSE | ||
manual-test.rc | ||
README.md | ||
requirements.yml | ||
run_tests.sh | ||
tox.ini | ||
Vagrantfile |
Ansible systemd_networkd
This Ansible role configures systemd-networkd link, network, and netdev files.
This role requires the ansible-config_template
collection to be available
on your local system.
To get collection you can use use the ansible-galaxy
command on the
requirements.yml
file.. You need to install collection before
running this role.
# ansible-galaxy install -r requirements.yml
Release notes for the project can be found at: https://docs.openstack.org/releasenotes/ansible-role-systemd_networkd
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