Skip to content

Commit

Permalink
make list of instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
MaxBed4d committed Nov 7, 2024
1 parent 96895b6 commit 947d6f0
Showing 1 changed file with 29 additions and 17 deletions.
46 changes: 29 additions & 17 deletions doc/source/operations/octavia.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,23 +20,35 @@ Deploying Octavia
=================

Much like any other Kolla managed service, the method of deploying Octavia is as simple
as enabling ``kolla_enable_octavia: true`` within the chosen environment's ``kolla.yml``.
However, before running a ``kayobe overcloud service configure``, check
``octavia_net_interface`` (often found within the ``controllers`` directory within
``${KAYOBE_CONFIG_PATH}/inventory/group_vars``) to see the network which Octavia management
network will be using. If it is configured to use a VLAN then ``kolla_enable_neutron_provider_networks: true``
should also be set in ``kolla.yml``.

.. note::

It of course goes without saying that the network configured for ``octavia_net_interface``
should also exist in ``networks.yml``.

By default Octavia will deploy an Amphora (a single Ubuntu VM running HAProxy) per load balancing service.
Consequently, if using Amphora this default behaviour should be changed to make them highly available so that
there are two Amphora VMs per service. Done by setting ``octavia_loadbalancer_topology: "ACTIVE_STANDBY"``
in ``${KAYOBE_CONFIG_PATH}/kolla/globals.yml``, this will ensure that if the master Amphora VM were to go down,
the other would be able to take over the load balancing functions.
as:

#. Enabling ``kolla_enable_octavia: true`` within the chosen environment's ``kolla.yml``.
#. Check ``octavia_net_interface`` is configured in ``${KAYOBE_CONFIG_PATH}/inventory/group_vars/``
(often in ``controllers/network-interfaces.yml``).
- IF NOT CONFIGURED
#. Check if a ``bond_interface`` has been configured, still within ``network-interfaces.yml``.
#. Check whether other network interfaces, such as ``internal_interface``, are configured to use ``{{ bond_interface }}``
and/or ``{{ .._vlan }}``.
#. If they are, then ``octavia_net_interface: "{{ brbond0_interface }}.{{ octavia_net`` ± ``_vlan }}"``.
- IF CONFIGURED
#. Continue to step 3.
#. Check that the ``{{ .._net_.. }}`` network configured for ``octavia_net_interface`` exists in ``networks.yml``.
- IF NOT CONFIGURED
#. Set ``octavia_net_name: octavia_net``.
#. Configure the Octavia network IP information, making sure to set ``octavia_net_vlan`` if using a VLAN.
- IF CONFIGURED
#. Continue to step 4.
#. Dependencies if:
- USING VLAN
#. Set ``kolla_enable_neutron_provider_networks: true`` in ``kolla.yml``.
- USING AMPHORA
#. Set ``octavia_loadbalancer_topology: "ACTIVE_STANDBY"`` in ``${KAYOBE_CONFIG_PATH}/kolla/globals.yml``.
#. Run ``kayobe overcloud service configure``.

By default Octavia will deploy an Amphora (a single Ubuntu VM running HAProxy) per load balancing service.
Consequently, if using Amphora, this default behaviour should be changed to make them highly available so that
there are two Amphora VMs per service. Achieved by step 4.2 above, this will ensure that if the master Amphora
VM were to go down, the other would be able to take over the load balancing functions.

Further configuration options and details on installation can be found in the
`Octavia documentation <https://docs.openstack.org/kolla-ansible/latest/reference/networking/octavia.html>`_.
Expand Down

0 comments on commit 947d6f0

Please sign in to comment.