-
Notifications
You must be signed in to change notification settings - Fork 0
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
DHCP isn't available in our bare-metal data centers #4
Comments
This proposal will not work in that we will probably not assign the address to the expected interface, unless on the backend that doesn't matter. Example: If we want to, and I suspect we need to, guarantee that the "right" device gets the "right" IP address as provided in the config file then we have to use predictable device names. Which is not a problem as we know the machine configuration w.r.t. network devices and where they show up in the device tree ahead of time. This implies that the config would specify something like this: interface: enp0s20u2 [1] https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ |
It appears that the interfaces that are used don't matter. Even though six NICs are exposed to the O/S, I believe there are only two networking cables to a blade chassis. Here's the message I got back from our operations team: We have total six Network Interfaces those Interfaces are virtual NIC’s Created in Cisco UCS. Assigning IP to Any Interfaces will work. We are following below Standards:
For now eth4 and eth5 are not using. |
OK, that would imply that we cannot use persistent names but need to use predictable names. If I interpret the response correctly we can end up in a situation where "Eth1" is discovered first and thus will get "eth0" assigned by the kernel. Then based on the proposed config we would set that device up for client network traffic. This will obviously not work. |
Operations specifically said: "Assigning IP to any interfaces will work". This implies that, due to underlying wiring, traffic can be on any interface. I'll validate this once I get the network up manually. I can verify proper connectivity, shift to a different ethernet interface, then verify if I still have connectivity. That will answer the question. I'm having issues getting the network up manually, however, based on guidelines I was given. Once that is resolved, I'll verify this and then we'll know for sure, one way or the other. |
Sorry, but one statement contradicts the other. Stating that "Assigning IP to any interfaces will work" and then providing information about which interface is used for what type of traffic just doesn't fit together. |
Okay, I have details on this.
I needed to modify the YAML file slightly for this, as we needed a VLAN number. The new YAML now contains this segment:
There are three files of interest that must be set up given that segment:
IF a gateway is defined in the YAML, then you need:
Once these files were set up on the destination system, I had proper network connectivity. Note that the VLANs appear both in filenames and the files themselves. For example, in
Let me know if you have any questions on this, thanks! |
Thanks for the data, based on this we can indeed stick to persistent names in the config. |
Work through the networking section of the Azure Li/Vli config file and setup the network configuration for this instance type. This Fixes #4 !!! WIP don't merge !!!
@jeffaco thanks for the details, please note I will use 'subnet_mask' as the key not 'subnet mask' with a space character in the key. That space thing is a source for trouble which we could easily avoid :) Other than that I started the implementation as you can see in the reference. Will finish this by tomorrow |
No problem, I've updated the reference YAML to reflect this change. Thanks. It looks like you expect a |
the broadcast address gets calculated from the given ip and subnet_mask. There is no need for further information. I set the BROADCAST because your example ifcfg-eth0 contains it. Thus I thought having it explicitly set is important in your environment for some reason |
python has a very nice module called 'ipaddress' which does the broadcast calculation if you give it the ip and the subnet_mask |
Work through the networking section of the Azure Li/Vli config file and setup the network configuration for this instance type. This Fixes #4
Work through the networking section of the Azure Li/Vli config file and setup the network configuration for this instance type. This Fixes #4
It turns out that DHCP servers are not available in our bare-metal data centers, and the latest YAML specification assumed that DHCP was available.
I suggest updating the YAML specification as follows:
REMOVE
ADD
In this particular case, you can infer that there are three NICs. Description is for Microsoft purposes only, and can be ignored by
azure-li-services
. A few things to note:dhcp: true
ordhcp: false
. If DHCP is false, then it should follow with IP/subnet mask[/gateway]. This is purely optional.The latest complete YAML specification, with this proposed change, can be found here.
The text was updated successfully, but these errors were encountered: