Jacob Wagner e1ce3432d0 Add ability to deploy Octavia load balancer service
This commit enables the openstack Octavia load balancing service
if the option is enabled. The Octavia service replaced the legacy
Neutron LBAAS service.

Change-Id: Ib820ec3c4a7f6c9116608140b59332d03cf4c451
2018-10-17 13:51:35 +01:00

45 lines
1.5 KiB
Django/Jinja

# Physical interface, could be bond. This only needs to be set once
{% set server_networks = hostvars[item]['server_networks'] %}
{% for key, value in server_networks.items()|sort(attribute='1.iface') %}
{% if value.iface is defined %}
auto {{ value.iface }}
iface {{ value.iface }} inet manual
{% endif %}
{% endfor %}
{% for key, value in server_networks.items()|sort(attribute='1.iface') %}
auto br-{{ key }}
iface br-{{ key }} inet {{ value.inet_type }}
bridge_stp off
bridge_waitport 10
bridge_fd 0
offload-sg off
{% if value.iface is defined and key == "flat" %}
pre-up ip link add br-veth-{{ key }} type veth peer name v{{ value.iface }} || true
# Set both ends UP
pre-up ip link set br-veth-{{ key }} up
pre-up ip link set v{{ value.iface }} up
# Delete veth pair on DOWN
post-down ip link del br-vlan-veth || true
bridge_ports {{ value.iface }} br-veth-{{ key }}
{% elif value.iface is defined and key == "lbaas" %}
pre-up ip link add lb-veth-inbr type veth peer name lb-veth-ovrd || true
# Set both ends UP
pre-up ip link set lb-veth-inbr up
pre-up ip link set lb-veth-ovrd up
# Delete veth pair on DOWN
post-down ip link del br-vlan-veth || true
bridge_ports {{ value.iface }} lb-veth-inbr
{% elif value.iface is defined %}
bridge_ports {{ value.iface | default('none') }}
{% else %}
bridge_ports none
{% endif %}
{% if value.address is defined %}
address {{ value.address }}
{% endif %}
{% endfor %}