Hi:

what i mean of  'external switch' is your physical switch.
from you description, you just need to configure octavia_amp_network in global.yml. the following is example:

please ensure you have set  enable_neutron_provider_networks = True before running octavia.

octavia_amp_network:
  name: lb-mgmt-net
  provider_network_type: vlan
  provider_segmentation_id: 1000   //vlan id, ensure your physical switch port which connected to 'neutron_external_interface' allows this vlan_id pass (trunk, allow 1000)
  provider_physical_network: physnet1  //default is physnet1, you can check this in '/etc/kolla/neutron-openvswitch-agent/openvswitch_agent.ini'
  external: false
  shared: false
  subnet:
    name: lb-mgmt-subnet
    cidr: "10.1.2.0/24"  //this should be the network cidr of vlan 1000. 
    allocation_pool_start: "10.1.2.100"
    allocation_pool_end: "10.1.2.200"
    gateway_ip: "10.1.2.1" //this is the gateway for vlan_1000 , most time, this is the vlan 1000 interface ip address in your physical switch.
    enable_dhcp: yes

anyway, the goal is that a vm with octavia_amp_network network is able to access your octavia_network_interface. 

thanks


Stuart Whitman <swhitman@groupw.com> 于2022年8月17日周三 00:50写道:
Hello,

I prefer for kolla to create the bridge automatically.  Each node has two
physical interfaces. The network_interface and neutron_external_interface
options are set in the inventory file.

> you need set octavia_network_interface and configure external switch properly

I have octavia_network_interface set to "{{ api_interface }}" and api_interface
is set to "{{ network_interface }}", the defaults.

What do you mean by "configure external switch properly"? If you mean the
external option when creating OpenStack networks, then I used the defaults
in globals.yml which does not include that option. If you mean the physical
switch, I'm using a low-budget switch I had lying around that is not configurable.

Thanks for the help - everything else with kolla-ansible has been fairly easy.

-Stu

----

From: W Ch <wchy1001@gmail.com>
Sent: Tuesday, August 16, 2022 5:32 AM
To: Stuart Whitman <swhitman@groupw.com>
Cc: openstack-discuss@lists.openstack.org <openstack-discuss@lists.openstack.org>
Subject: Re: [kolla-ansible][octavia] need networking help

Hi Stuart:

Usually, you need to add a bridge to all network nodes,  you can use "ovs-vsctl add-br  {br-name}" to add a ovs bridge, then you need to add a physical port  to that bridge by executing "ovs-vsctl  add-port {bridge} {port}".
another alternatives, you can append the physical port to neutron_external_interface variable in globals.yml.  in this case, kolla will create the ovs bridge automatically.
both of them, you need set octavia_network_interface and configure external switch properly.

if you really don't know how this works, I propose you  use   "octavia_network_type: tenant"  ref: [0] , in this case, kolla-ansible will setup the octavia management network for you, you don't need to do anything.

[0]: https://docs.openstack.org/kolla-ansible/latest/reference/networking/octavia.html#development-or-testing

thanks.


Stuart Whitman <swhitman@groupw.com> 于2022年8月16日周二 06:28写道:
Hello,

I enabled Octavia on a kolla-ansible installed Openstack
cluster. When I try to launch a loadbalancer instance, the
octavia-worker.log file reports:
"WARNING octavia.amphorae.drivers.haproxy.rest_api_driver [-]
Could not connect to instance."

I researched enough to know that the problem has to do with networking
between the controller and the lb-mgmt-net network. I initially
overlooked this in the kolla-ansible Octavia documentation:
"If using a VLAN provider network, ensure that the traffic is also bridged
to Open vSwitch on the controllers." But, I don't know how to do it.

Help to create the necessary bridge would be greatly appreciated.

Thanks,
-Stu

_____________________________________
The information contained in this e-mail and any attachments from Group W may contain confidential and/or proprietary information and is intended only for the named recipient to whom it was originally addressed. If you are not the intended recipient, be aware that any disclosure, distribution, or copying of this e-mail or its attachments is strictly prohibited. If you have received this e-mail in error, please notify the sender immediately of that fact by return e-mail and permanently delete the e-mail and any attachments to it.