commit 7db9e23fd9642eacb78731bf215a4820978436ca
Author: Fernando Royo <email address hidden>
Date: Wed Jun 1 13:46:09 2022 +0200
Apply ServiceMonitorEvent to affected LBs
Every Health_Monitor over a LB creates Load_Balancer_Health_Check
NB entry, and it creates 1..n Service_Monitor OVN SB entries according
to the member to be monitored. When more than one LB exists on the
same network segment for the same member, Service_Monitor SB
entries are not duplicated, in order to not performing multiple
checks on the same member.
When a ServiceMonitorUpdateEvent is received with status information
from a member, the LBs that match the event information (protocol,
ip, port and logical_port) are searched. At this way we ensure that
network segments are separated where the same ip and port could match
but the logical_port would be different.
The current logic will update just the status of the first LB selected
as "related" to the member event received from the Service_Monitor,
but we could use this information to keep updated all those LBs, that
are in the same network segment and have a Health_Monitor associated
to.
This patch will fix this behaviour in order to provide status to
Octavia of all LBs affected by a ServiceMonitorUpdateEvent.
Reviewed: https:/ /review. opendev. org/c/openstack /ovn-octavia- provider/ +/844283 /opendev. org/openstack/ ovn-octavia- provider/ commit/ 7db9e23fd9642ea cb78731bf215a48 20978436ca
Committed: https:/
Submitter: "Zuul (22348)"
Branch: master
commit 7db9e23fd9642ea cb78731bf215a48 20978436ca
Author: Fernando Royo <email address hidden>
Date: Wed Jun 1 13:46:09 2022 +0200
Apply ServiceMonitorEvent to affected LBs
Every Health_Monitor over a LB creates Load_Balancer_ Health_ Check
NB entry, and it creates 1..n Service_Monitor OVN SB entries according
to the member to be monitored. When more than one LB exists on the
same network segment for the same member, Service_Monitor SB
entries are not duplicated, in order to not performing multiple
checks on the same member.
When a ServiceMonitorU pdateEvent is received with status information
from a member, the LBs that match the event information (protocol,
ip, port and logical_port) are searched. At this way we ensure that
network segments are separated where the same ip and port could match
but the logical_port would be different.
The current logic will update just the status of the first LB selected
as "related" to the member event received from the Service_Monitor,
but we could use this information to keep updated all those LBs, that
are in the same network segment and have a Health_Monitor associated
to.
This patch will fix this behaviour in order to provide status to pdateEvent.
Octavia of all LBs affected by a ServiceMonitorU
Partial-Bug: #1965772 63320e53f0175de c8fdf4e2cf7
Closes-Bug: #1965772
Change-Id: I7c750035160158