-
Notifications
You must be signed in to change notification settings - Fork 8
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
Connecting a remote interface without creating a VLAN on top #18
Comments
Instead of injection, we agreed offline to go for a cluster break-out option for not adding the extra VLAN tag just connecting the given interface with the virtual interface (which belongs to local mechanism) created in NSC pod. The general naming convention is used by vpp for vlan sub-interfaces so the base interface name can not follow that naming convention. The base interface name is set in NSM by device-selector file to map to 'via' label. |
Will this naming convention have impact on the user-provided configuration.
The "name" is meant to be the name of interface exposed inside the Pod hosting the nVIP FE. For an ignorant user it would be natural set the name to "eth1.220" if the base-interface is "eth1" and the vlan-id is "220". But if I understand you correctly this is not possible/allowed? One thing I do not understand is why this is an issue. The pod has it own netns, where I would guess interfaces can be renamed to anything we like. |
@tedlean I reopen this issue - supposing closed by fault.
No, the base-interface can not be eth1.220, the name of interface exposed inside the Pod can be anything. |
Okay, so it actually is the naming of the interface on the VM worker-node, which cannot be "eth1.220". |
Confirmed.
Not yet checked but I think any other setup is affected. |
Thanks, that's fine.
Currently the interface created in NSC (by local mechanism type:kernel) is cross-connected with the sub-interface in vpp (created by remote-mechanism type:vlan) - also vlan-tag-rewrite was set on the sub-interface. In the change made by commit in case of vlan_id=0 the sub-interface is not created and no vtr is set, the host interface is directly connected to the tap/veth interface of NSC.
Meantime I figured out that the host interface can be renamed when it is created, but this will cause problem in the code where the interfaces are dumped and filtered by name. If you do not have better suggestion I will handle this in NSM code and eliminate this deviation renaming As I see now, with this change we move from a specific (vlan) remote break-out to a generic cluster breakout. |
@ljkiraly Is the interface name the issue, or is it some other characteristic of the kernel interface? |
@edwarnicke Seems that somehow the MTU setting failed (api call HwInterfaceSetMtu) for this renamed interface and the ACL creation was skipped. I double checked and I can confirm that the defined ACLs disables the traffic. What would be the impact of skipping the ACL creation for the interfaces created for cluster breakout? |
In order to facilitate a wider range of virtual environments hosting the Kubernetes cluster it could be feasible to allow the injection an interface into the NSC without creating a vlan on top. Some environments uses vlan in the underlay to provide interfaces for the worker-nodes. Here it might not be tolerated that an additional vlan is added on top ending up with a "Q-in-Q" setup.
Therefore it should be possible to have a plain Ethernet interface injected without adding any additional vlan tagging.
The text was updated successfully, but these errors were encountered: