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
Allow specifying on which interface the Azure IPAM should allocate IPs on #10875
Conversation
I still need to do some testing of this -- will comment out when that is done so people can review it. |
@@ -398,6 +398,10 @@ func createNodeCRD(clientset apiextensionsclient.Interface) error { | |||
Type: "string", | |||
Description: "instance-id is the Azure specific identifier of the node", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this instance-id
field being here is outdated since it has been pulled out in the main spec part via 948440d.
Is there any thing we can do here related to validation to keep the CRD validation in-line with the actual structs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure. I didn't find anything in k8s upstream either besides code review.
test-me-please |
…s on Signed-off-by: Vlad Ungureanu <vladu@palantir.com>
35d9409
to
c2d4376
Compare
test-me-please |
I deployed it to my Azure stack and was able to get it to allocate on the specified interface. I tested with the following cni config:
and the final CiliumNode after allocation looks like:
|
@@ -398,6 +398,10 @@ func createNodeCRD(clientset apiextensionsclient.Interface) error { | |||
Type: "string", | |||
Description: "instance-id is the Azure specific identifier of the node", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure. I didn't find anything in k8s upstream either besides code review.
Signed-off-by: Vlad Ungureanu vladu@palantir.com
Add an
azure
field to theCiliumNode
which should hold Azure specific IPAM settings. Starting withinterface-name
which should be used to override on which interface on the VM the Azure IPAM will allocate IPs. Currently it walks the interfaces in order and picks where it has space. This is useful in situations where the interfaces are in different subnets.Doing it the same way as the AWS IPAM is configured -- passing the interface name via the cni config which the agent can read when it registers the
CiliumNode
in the k8s apiserver.