Disaggregation and interface names #1596
Replies: 2 comments 8 replies
-
Essentially, you are going to have to duplicate the device types. I would put it under a manufacturer of "Cumulus" and then you can still use the "Dell S4148T" as the device name, but the manufacturer is "Cumulus" instead of "Dell" |
Beta Was this translation helpful? Give feedback.
-
Trying to respond to both of you without doing multiple comments, so bear with me. @danner26 I hear what you're saying about staying up to date with the latest version...wholeheartedly support it, but that is not at all what my query was about. I'm not talking about different naming based on different versions of the same OS...I'm talking the large number of network devices (well, and compute servers, to be honest) that can run completely different OSes on them, not just different versions of the same OS. The S4148T that I used as my first example, can run Dell OS10, Cumulus Linux (big ol' asterisk on that one, so maybe not a great example), PicOS, any of a number of flavors of SONiC, and numerous other OSes that I'm personally not familiar with. (For compute servers, the analogous concern would be between Windows, potentially various BSDs, and various distros of Linux, some of which might use predictable interface naming, and some don't). I'm quite happy to work with the volunteer maintainer community, indeed opening this discussion item was the first step of my attempt to do exactly that. I'm looking to make use of the device-type library in our setup as we're beginning our journey of implementing Netbox, and envision that it would include a significant amount of us contributing back changes and updates that we find. Love the idea, and quite happy to work in that world. @DanSheps OK, I kinda get the idea of going with an OS that's original installed and/or supported by the vendor, but even that doesn't get you down to a single, global, source of truth. First off, in the disaggregated switch market, it's strongly envisioned that customers won't necessarily be running the OS developed by the vendor, and more than a few of the vendors don't even have their own (EdgeCore, Accton, Quanta, and more). On the flipside you have some vendors that have more than one of their own OS. Take, for example, the SN2010 by Mellanox (BTW, Mellanox got bought by NVidia...should there be a directory name change there? I don't know how much pain that would cause users of the library), NVidia sells the SN2010, and others of the Spectrum ASIC switch line, with either Cumulus or Onyx OSes. Those are both OSes that are owned, developed by, and natively shipped on Spectrum switches by NVidia, and they use completely different interface naming. Agreed that it'd be nice to be able to dynamically handle this based on the OS version like a platform, and understood that it's a thing that doesn't exist yet in Netbox-land. And we're just starting down our Netbox implementation journey, as mentioned above, and haven't made actual use of the devicetype-library yet, but are very interested in doing so. That means I don't really, yet, understand the practical impacts of how the import system works, but I saw reference to a script that can do selective imports? Perhaps that could be leveraged somehow to select between alternatives? As a potential user, envisioning how I think this would work, I'd be quite happy, when picking a device type to add a device, to pick "S4148T (Cumulus)" rather than "S4148T" or "S4148T (PicOS)" to specify that I'm looking for the Cumulus naming rather than the "default" OS10 naming or PicOS naming. |
Beta Was this translation helpful? Give feedback.
-
With disaggregated network equipment (ie, ONIE based systems) interface names can show up in the OS with different names, depending on which OS is running on the system. Example: Dell's S4148T device-type in the repo is created based on, I think, Dell's OS10, but if you're running Cumulus Linux on them, they show up with different names (swp[1-48]).
Do we have a good way to handle these differences? The only thing I can think of would be to create "duplicate" device-types for the various OSes that can be run on these disaggregated hardware systems.
Beta Was this translation helpful? Give feedback.
All reactions