Merge "Add possibility to configure tenant network types and type drivers"
This commit is contained in:
commit
ee11884e37
@ -519,6 +519,11 @@ designate_ns_record: "sample.openstack.org"
|
|||||||
#######################
|
#######################
|
||||||
neutron_bgp_router_id: "1.1.1.1"
|
neutron_bgp_router_id: "1.1.1.1"
|
||||||
neutron_bridge_name: "br-ex"
|
neutron_bridge_name: "br-ex"
|
||||||
|
# Comma-separated type of enabled ml2 type drivers
|
||||||
|
neutron_type_drivers: "flat,vlan,vxlan"
|
||||||
|
# Comma-separated types of tenant networks (should be listed in 'neutron_type_drivers')
|
||||||
|
# NOTE: for ironic this list should also contain 'flat'
|
||||||
|
neutron_tenant_network_types: "vxlan"
|
||||||
|
|
||||||
computes_need_external_bridge: "{{ enable_neutron_dvr | bool or enable_neutron_provider_networks | bool }}"
|
computes_need_external_bridge: "{{ enable_neutron_dvr | bool or enable_neutron_provider_networks | bool }}"
|
||||||
|
|
||||||
|
@ -38,3 +38,9 @@
|
|||||||
with_items:
|
with_items:
|
||||||
- "ironic-agent.kernel"
|
- "ironic-agent.kernel"
|
||||||
- "ironic-agent.initramfs"
|
- "ironic-agent.initramfs"
|
||||||
|
|
||||||
|
- name: Looking for 'flat' in tenant network types
|
||||||
|
local_action: fail msg="'flat' is not in neutron_tenant_network_types [{{ neutron_tenant_network_types }}]"
|
||||||
|
changed_when: false
|
||||||
|
when: tenant_network_types.find('flat') == -1
|
||||||
|
run_once: true
|
||||||
|
@ -36,3 +36,13 @@
|
|||||||
or inventory_hostname in groups['neutron-l3-agent']
|
or inventory_hostname in groups['neutron-l3-agent']
|
||||||
or inventory_hostname in groups['neutron-metadata-agent'])
|
or inventory_hostname in groups['neutron-metadata-agent'])
|
||||||
- ansible_os_family == 'RedHat' or ansible_distribution == 'Ubuntu'
|
- ansible_os_family == 'RedHat' or ansible_distribution == 'Ubuntu'
|
||||||
|
|
||||||
|
- name: Checking tenant network types
|
||||||
|
vars:
|
||||||
|
type_drivers: "{{ neutron_type_drivers.replace(' ', '').split(',') | reject('equalto', '') | list }}"
|
||||||
|
tenant_network_types: "{{ neutron_tenant_network_types.replace(' ', '').split(',') | reject('equalto', '') | list }}"
|
||||||
|
local_action: fail msg="Tenant network type '{{ item }}' is not in type drivers [{{ neutron_type_drivers }}]"
|
||||||
|
changed_when: false
|
||||||
|
when: item not in type_drivers
|
||||||
|
run_once: true
|
||||||
|
with_items: "{{ tenant_network_types }}"
|
||||||
|
@ -1,16 +1,8 @@
|
|||||||
# ml2_conf.ini
|
# ml2_conf.ini
|
||||||
[ml2]
|
[ml2]
|
||||||
{% if enable_ironic | bool %}
|
|
||||||
tenant_network_types = vxlan, flat
|
|
||||||
mechanism_drivers = openvswitch
|
|
||||||
{% elif enable_hyperv | bool %}
|
|
||||||
type_drivers = flat,vlan,vxlan
|
|
||||||
tenant_network_types = flat,vlan
|
|
||||||
{% else %}
|
|
||||||
# Changing type_drivers after bootstrap can lead to database inconsistencies
|
# Changing type_drivers after bootstrap can lead to database inconsistencies
|
||||||
type_drivers = flat,vlan,vxlan
|
type_drivers = {{ neutron_type_drivers }}
|
||||||
tenant_network_types = vxlan
|
tenant_network_types = {{ neutron_tenant_network_types }}
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if neutron_plugin_agent == "openvswitch" %}
|
{% if neutron_plugin_agent == "openvswitch" %}
|
||||||
{% if enable_hyperv | bool %}
|
{% if enable_hyperv | bool %}
|
||||||
|
@ -94,6 +94,12 @@ Hyper-V options are also required in ``/etc/kolla/globals.yml``:
|
|||||||
vswitch_name: <HyperV virtual switch name>
|
vswitch_name: <HyperV virtual switch name>
|
||||||
nova_msi_url: "https://www.cloudbase.it/downloads/HyperVNovaCompute_Beta.msi"
|
nova_msi_url: "https://www.cloudbase.it/downloads/HyperVNovaCompute_Beta.msi"
|
||||||
|
|
||||||
|
If tenant networks are to be built using VLAN add corresponding type in ``/etc/kolla/globals.yml``:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
neutron_tenant_network_types: 'flat,vlan'
|
||||||
|
|
||||||
The virtual switch is the same one created on the HyperV setup part.
|
The virtual switch is the same one created on the HyperV setup part.
|
||||||
For nova_msi_url, different Nova MSI (Mitaka/Newton/Ocata) versions can be found on
|
For nova_msi_url, different Nova MSI (Mitaka/Newton/Ocata) versions can be found on
|
||||||
`Cloudbase website
|
`Cloudbase website
|
||||||
|
@ -20,6 +20,21 @@ The Ironic implementation is "tech preview", so currently instances can only be
|
|||||||
deployed on baremetal. Further work will be done to allow scheduling for both
|
deployed on baremetal. Further work will be done to allow scheduling for both
|
||||||
virtualized and baremetal deployments.
|
virtualized and baremetal deployments.
|
||||||
|
|
||||||
|
Pre-deployment Configuration
|
||||||
|
============================
|
||||||
|
|
||||||
|
Enable Ironic role in ``/etc/kolla/globals.yml``:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
enable_ironic: "yes"
|
||||||
|
|
||||||
|
Beside that an additional network type 'flat' has to be added to a list of tenant network types:
|
||||||
|
|
||||||
|
.. code-block:: console
|
||||||
|
|
||||||
|
neutron_tenant_network_types: "vxlan,flat"
|
||||||
|
|
||||||
Configuring Web Console
|
Configuring Web Console
|
||||||
=======================
|
=======================
|
||||||
Configuration based off upstream web_console_documentation_.
|
Configuration based off upstream web_console_documentation_.
|
||||||
|
@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
Allow users to set neutron type drivers and tenant network types.
|
||||||
|
These are configurable via 'neutron_type_drivers' and
|
||||||
|
'neutron_tenant_network_types' variables correspondingly.
|
||||||
|
Tenant network types are checked against a list of type drivers.
|
||||||
|
Also 'flat' network type is checked in the lists for Ironic.
|
||||||
|
upgrade:
|
||||||
|
- |
|
||||||
|
Default neutron_tenant_network_types list consist of 'vxlan'.
|
||||||
|
Ironic users should add 'flat' to the list. Also for Hyper-V
|
||||||
|
the list should contain 'vlan'.
|
Loading…
x
Reference in New Issue
Block a user