DANM centralized, API driven IP management extended to work for all CNI compliant backends #111
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changing IPAM code in cnidel so centralized API driven IPAM now works for all backends requesting it!
All includes static.
If cidr/net6 is included in the network manifest, and the Pod's connection request includes "ip" / "ip6"; DANM will call ipam.Reserve and overwrite the "ipam" key in the CNI config of the static delegate with its own fakeipam integration.
This will result in CNI compliant static backends too getting their IPs purely based on a centralized network management API.
Also MACVLAN plugin recently was enhanced to tolerate the absence of "ipam" key in the CNI config. As a result "ip":"none" is now enabled for all backends.
The user will be responsible of making sure unsupported IPAM request types are not used for backends not supporting it; and that only CNI standard compliant backends are fed by DANM's IPAM.