
To make this role distro agnostic all of the variable configs have been moved into defaults which will source private variables when available using distro specific configs. This change will make it possible to run this role on any distro, even if there's no distro specific variable files. Change-Id: I547edd2052c7e136b79d99e1b8e75e3aee68689d Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
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
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
Description
Languages
Python
74.3%
Jinja
25.7%