honor config.NetworkInterface in NodeNetworks #8486
Merged
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.
Fixes #8445 .
Nomad 0.12 introduces
NodeNetworks
structs in #8208 but it looks like it may be out of sync from earlier network interpretation, namely,.NodeResources.Networks
.NodeResources.Networks
honorsnetwork_interface
from config, but looks like.NodeResources.Networks
uses the "default" network (as specified byip route
). This mis-attribution result into pods getting assigned unexpected ip addresses.It's notable that
NodeResources
aren't reported when usingnomad node status -json
- we must usecurl
.To test this, I had a simple nomad agent with
network_interface = "eth2"
config. Notice how NodeNetworks and Networks report different interface names before, and with the fix both point toeth2
.The command:
Before
After