-
Notifications
You must be signed in to change notification settings - Fork 387
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Handle ExternalIPPool range changes in Egress controller
The validation webhook for ExternalIPPools prevents modifications to IP address ranges. However, it is theoretically possible for an ExternalIPPool to be deleted, then recreated immediately with different IP address ranges, and for the Egress controller to only process the Egress resources referencing the pool once, *after* the CREATE event has been handled by the ExternalIPPool controller. This is because the ExternalIPPool controller is in charge of notifying the Egress controller through a callback (event handler) mechanism, and that multiple events for the same ExternalIPPool name can be merged in the workqueue. With this change, we try to ensure the same "observable" behavior for the Egress controller, regardless of whether the DELETE and CREATE events have been merged or not. The stale Egress IP should be removed, and a new Egress IP should be allocated from the new IP ranges (regardless of whether or not the initial Egress IP was specified by the user). Prior to this change, the change of IP address ranges would be silently ignored by the Egress controller. Signed-off-by: Antonin Bas <antonin.bas@broadcom.com>
- Loading branch information
1 parent
827bd3b
commit b93c832
Showing
3 changed files
with
96 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters