Fix network configuration of network hosts

The Control Plane Service Placement documentation connects network hosts
to networks listed in controller_network_host_network_interfaces.
However this only contained public, tunnel, and external networks. For a
fully functional network host, we also need:

- the overcloud admin network, to manage the host
- internal network, for services to interact with each other
- storage network, for manila-share

This change updates the default network configuration for network hosts
and adds a variable to define extra networks like for other hosts. It
also improves the documentation for adding network hosts.

Change-Id: I1bb857bfca9e209bc6de30ae9852a4a08b2c7fb0
This commit is contained in:
Pierre Riteau 2020-06-25 18:50:49 +02:00
parent 791c219f4d
commit 58f26fb61b
5 changed files with 74 additions and 3 deletions

View File

@ -32,10 +32,21 @@ controller_extra_network_interfaces: []
# List of network interfaces to which network nodes are attached. # List of network interfaces to which network nodes are attached.
controller_network_host_network_interfaces: > controller_network_host_network_interfaces: >
{{ ([public_net_name, {{ (controller_network_host_default_network_interfaces +
controller_network_host_extra_network_interfaces) | reject('none') | unique | list }}
# List of default network interfaces to which network nodes are attached.
controller_network_host_default_network_interfaces: >
{{ ([admin_oc_net_name,
internal_net_name,
storage_net_name,
public_net_name,
tunnel_net_name] + tunnel_net_name] +
external_net_names) | reject('none') | unique | list }} external_net_names) | reject('none') | unique | list }}
# List of extra networks to which network nodes are attached.
controller_network_host_extra_network_interfaces: []
############################################################################### ###############################################################################
# Controller node BIOS configuration. # Controller node BIOS configuration.

View File

@ -750,6 +750,27 @@ list of names of additional networks to attach. Alternatively, the list may be
completely overridden by setting ``controller_network_interfaces``. These completely overridden by setting ``controller_network_interfaces``. These
variables are found in ``${KAYOBE_CONFIG_PATH}/controllers.yml``. variables are found in ``${KAYOBE_CONFIG_PATH}/controllers.yml``.
Network Hosts
-------------
By default, controllers provide Neutron network services and load balancing.
If separate network hosts are used (see
:ref:`control-plane-service-placement-network-hosts`), they are attached to the
following networks:
* overcloud admin network
* internal network
* storage network
* public network
* external network
* tunnel network
This list may be extended by setting
``controller_network_host_extra_network_interfaces`` to a list of names of
additional networks to attach. Alternatively, the list may be completely
overridden by setting ``controller_network_host_network_interfaces``. These
variables are found in ``${KAYOBE_CONFIG_PATH}/controllers.yml``.
Monitoring Hosts Monitoring Hosts
---------------- ----------------

View File

@ -144,6 +144,8 @@ Each level may be separately overridden by setting the following variables:
Examples Examples
======== ========
.. _control-plane-service-placement-network-hosts:
Example 1: Adding Network Hosts Example 1: Adding Network Hosts
------------------------------- -------------------------------
@ -153,7 +155,18 @@ The control plane consists of three controllers, ``controller-[0-2]``, and two
network hosts, ``network-[0-1]``. All file paths are relative to network hosts, ``network-[0-1]``. All file paths are relative to
``${KAYOBE_CONFIG_PATH}``. ``${KAYOBE_CONFIG_PATH}``.
First, we must map the hosts to kayobe groups. First, we must make the network group separate from controllers:
.. code-block:: ini
:caption: ``inventory/groups``
[controllers]
# Empty group to provide declaration of controllers group.
[network]
# Empty group to provide declaration of network group.
Then, we must map the hosts to kayobe groups.
.. code-block:: yaml .. code-block:: yaml
:caption: ``overcloud.yml`` :caption: ``overcloud.yml``

View File

@ -7,7 +7,7 @@
#controller_bootstrap_user: #controller_bootstrap_user:
############################################################################### ###############################################################################
# Network interface attachments. # Controller network interface configuration.
# List of networks to which controller nodes are attached. # List of networks to which controller nodes are attached.
#controller_network_interfaces: #controller_network_interfaces:
@ -21,6 +21,12 @@
# List of network interfaces to which network nodes are attached. # List of network interfaces to which network nodes are attached.
#controller_network_host_network_interfaces: #controller_network_host_network_interfaces:
# List of default network interfaces to which network nodes are attached.
#controller_network_host_default_network_interfaces:
# List of extra networks to which network nodes are attached.
#controller_network_host_extra_network_interfaces:
############################################################################### ###############################################################################
# Controller node BIOS configuration. # Controller node BIOS configuration.

View File

@ -0,0 +1,20 @@
---
features:
- |
Adds ``controller_network_host_default_network_interfaces`` and
``controller_network_host_extra_network_interfaces`` variables which define
the networks to which separate network hosts are attached.
upgrade:
- |
The default value of ``controller_network_host_network_interfaces`` is now
the combination of unique networks listed in new variables named
``controller_network_host_default_network_interfaces`` and
``controller_network_host_extra_network_interfaces``. As a result
``controller_network_host_network_interfaces`` now contains the following
additional networks: overcloud admin network, internal network and storage
network. See :kayobe-doc:`network configuration of network hosts
<configuration/network.html#network-hosts>` for more details.
fixes:
- |
The default value for ``controller_network_host_network_interfaces``
was updated to connect network hosts to all their required networks.