Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IPAM improvements #527

Open
zolug opened this issue May 2, 2024 · 0 comments
Open

IPAM improvements #527

zolug opened this issue May 2, 2024 · 0 comments
Labels
kind/enhancement New feature or request

Comments

@zolug
Copy link
Collaborator

zolug commented May 2, 2024

Is your feature request related to a problem? Please describe.
Follow-up item for: #521

Main problem is, that Proxies who are in charge of IP allocation/release might disappear abruptly and along with it so can NSM connections they hosted providing no second chance to release the allocated IPs. (Same can happen during planned termination of Proxy if IPAM POD is not available.)

There should be an option to lease IPs for a certain amount of time. This could secure that IP allocations are not leaked.
For this, the db model should be extended to support expiration time like features.

NSM connections are refreshed periodically. During each refresh the IP allocation is verified, which could be used to update the db entry in IPAM. A garbage collector could be introduced to reap db entries with lifetime who haven't prolonged their leases and thus expired.

Upon upgrade, the new IPAM instance should migrate the existing database to introduce expiration time support for old db entries that belong to NSM connections. (Obviously rollback could result in serious disturbances.)

Describe the solution you'd like
See above.

Describe alternatives you've considered
NA

Additional context
NA

@zolug zolug added the kind/enhancement New feature or request label May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement New feature or request
Projects
Status: 📋 To Do
Development

No branches or pull requests

1 participant