Folks,
All my deployment is running on OVN and things are working great with octavia and its special lb-mgmt-net working.
Recently I am deploying a new cloud using the OVS network plugin and found dhcp-agent namespace not pinging because I have a similar IP address configured on the host interface.
My LBaaS nic
/etc/netplan/00-network.yml
...
...
# OS1_LBAAS
bond0.15:
id: 15
link: bond0
dhcp4: false
dhcp6: false
mtu: 1500
addresses: [
192.168.32.201/24 ]
Controller node interface
# ifconfig bond0.15
bond0.15: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.32.201 netmask 255.255.255.0 broadcast 192.168.32.255
inet6 fe80::b489:8ff:fe61:2298 prefixlen 64 scopeid 0x20<link>
ether b6:89:08:61:22:98 txqueuelen 1000 (Ethernet)
RX packets 1074073 bytes 54067608 (54.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1594 bytes 78172 (78.1 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
octavia DHCP agent namespace (lb-mgmt-net)
# ip netns exec qdhcp-1008bdd3-372a-44af-8fd3-00fb99b8e489 ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet
127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
13: tape6186f5a-40: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
link/ether fa:16:3e:c7:bf:2d brd ff:ff:ff:ff:ff:ff
inet
192.168.32.10/24 brd 192.168.32.255 scope global tape6186f5a-40
valid_lft forever preferred_lft forever
inet
169.254.169.254/32 brd 169.254.169.254 scope global tape6186f5a-40
valid_lft forever preferred_lft forever
My global.yml
###################
# Octavia options
###################
enable_octavia: "yes"
octavia_network_interface: "bond0.15"
octavia_amp_flavor:
name: "amphora"
is_public: no
vcpus: 2
ram: 2048
disk: 5
octavia_amp_network:
name: lb-mgmt-net
provider_network_type: vlan
provider_segmentation_id: 15
provider_physical_network: physnet1
external: false
shared: false
subnet:
name: lb-mgmt-subnet
cidr: "
192.168.32.0/24"
allocation_pool_start: "192.168.32.10"
allocation_pool_end: "192.168.32.100"
no_gateway_ip: yes
enable_dhcp: yes
When I ping from namespace to controller machine LBaaS interface I am not able to ping
# ip netns exec qdhcp-1008bdd3-372a-44af-8fd3-00fb99b8e489 ping 192.168.32.201
PING 192.168.32.201 (192.168.32.201) 56(84) bytes of data.
^C
--- 192.168.32.201 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2039ms
Seems like standard linux arp/kernel issue. How does it work? In OVN there is no namespace so everything works fine but in OVS because of namespace it doesn't work.