For those of you running/managing/dealing with openstack installations, would you be so kind as to shed some light on what you’re doing for integrating Juniper and Cisco nexus devices specifically? My goals include basic stuff like managing vxlan/vni allocation and integration, etc, managing the ports to which compute nodes are connected, vpnaas, and maybe some other relatively (imho) basic functionality.
The official juniper neutron plugin is from 2016 and the Cisco stuff isn’t any better. Hoping there’s some newer, better option out there that I should be working with, but if it’s actually the case that folks are just still running just fine with the older modules on modern openstack then that’s fine too. What I really want to avoid is having to hire dev contractors to write code to deal with this.
VP OF INFRASTRUCTURE
Follow us on LinkedIn!
At a previous employer (a telecom) I integrated OpenStack with CIsco NSO with the NFV Orchestrator plugin. You didn’t mention any use cases but after gleaning a bit about your employer’s offerings, I don’t think this option will fit your needs. I’m not familiar with a solution that wouldn’t require significant customization for your use cases. You’re attempting to integrate compute orchestration with network orchestration, but it seems many compute projects treat the network as a black box not to be integrated with or at least not in a ‘turn-key’ way.
I suggest rethinking the idea that networking should be controlled from OpenStack, but instead think of them as discrete resource domains to be orchestrated. There are an abundance of free and open source workflow engines that can fill the requirement for an orchestrator. I also suggest taking a look at the MEF LSO framework, as it provides a good starting point for designing the integration. To do this right you should start with service modeling to map out the relationships between these components and model the use case workflows, before writing any code.
I think trying to embed network orchestration into OpenStack requires a more rigid integration that is at greater risk to changes within OpenStack’s internal structure, which for most projects, typically isn’t as stable as external interfaces.
I hope this helps and I’m very curious to learn what solution you settle on.