As server virtualization exploded however, multiple network design issues began to converge and revealed new issues to overcome:
Hardware costs rose as Spanning Tree’s lack of multipathing required redundant boxes to lay dormant in the event of failure.
Larger networks exposed the limited number of segments that VLANs could scale, capping out at just 4,094 segments, (or less when using STP).
Multi-tenancy put further pressure on VLAN limitations.
The answer to these problems arrived in 2012 as RFC 7348: VXLAN, Virtual Extensible LAN. A network overlay with the entire layer 2 frame encapsulated in UDP by only adding around 50 bytes of overhead.
So now, the 4,094 segment limitation of VLAN had expanded to an incredible 16 million segments with VXLAN. The ability for VXLAN to span layer 3 boundaries was an additional benefit for cloud networks, yet another concept emerging from server virtualization advancements.
Millions of segments, tenant isolation, layer 3 multipathing. No more network issues. Right? Ironically, these larger VXLAN enhanced networks, began discovering new limitations.
This is our third episode for what I have personally termed the ‘NX-OS’ exposed series. The first two have been about programmability. Exploring the exposed interfaces, Object Models, the NX Tool kit and more of the NX-API framework that enables DevOps teams to respond more quickly. [TWTV 176 – Open NX-OS Programmability and TWTV 180 – NX-API Rest/Object Models].
Today’s show dives into the automation piece. That simultaneously higher level conversation covering what an organization really cares about, why IT exists and how we finally brought data center switching into the automate-able value chain.
Network automation is an integral part of the overall infrastructure automation. Yet, it has been largely left out of the DevOps movement.
Automation is central to achieving a truly agile datacenter. DevOps has been the cultural movement working towards the realignment of disparate function involved in the IT value stream. It is the modern, ‘digital,’ equivalent of an optimized manufacturing line.
Surely the notion of enterprise quality wireless does not equate to some kind of increase in complexity?
This episode features the new Mobility Express Solution. We dive into the details, what little there are, on just how simple enterprise quality Wi-Fi can be with TechWiseTV episode 179: Simplified Wi-Fi.
This is the first in a multi-part series where we cover ‘programmability’ for networking. The idea is to fully review the programming options now available inside the Nexus switches, (3000, 9000). This first episode covers new access with Linux tools, NX-API and more. Further shows will be diving into the details around Object Models and orchestration partners.
The primary point for any of these is to understand how Cisco Open NX-OS extensibility exposes greater programmability and automation capabilities. It is fascinating and full of new learning opportunities. It does not come without a few career questions of course…usually, something along the lines of: do network engineers need to become programmers now too?
Two answers: Yes. It depends.
Networking knowledge and skill should not be undersold here. Programming capabilities should be additive. They are useful in just about any tech career and obviously affecting the networking space. I think it’s foolish to ever quit learning but it does depend on your aspirations, your current level of satisfaction and perhaps how narrowly defined your skill set might be.
Full disclosure: I am not a programmer. I have been learning the fundamentals of python and a few others as I work on this series but I am not hire-able for this skill by any means. But the distinct feeling I get, and the feedback I hear from you guys: its not that hard. You are probably well versed in scripting for various CLI operations…take it up a few notches and work on some of these ‘readable’ languages that will have similar syntax. This will give you the ability to judge the appeal of what we are offering with ACI and other solutions much more credibly…and I guarantee you will find ways to get rid of redundant crap and stupid errors you may be fighting with yourself or your team.
JOIN US AT THE WORKSHOP
Live, interactive, never dull.
September 21, 2015
Programmable networks will forever change the way you manage infrastructure enabling you to dramatically accelerate configuration and deployment of your network, automate time consuming manual tasks, and allocate IT resources far more efficiently. Are you ready for the revolution?
Discover how to create a programmable network as we discuss and demonstrate the NX-API and NX-API REST (Object Model) in detail. Understand how Cisco Open NX-OS extensibility exposes greater programmability and automation capabilities that eliminate costly manual errors.
Shane Corban shares Six Key Points: What OPEN means for NX-OS
Changes made across the software stack to address Extensibility, Openness, Programmability.
Auto Deployment (Bootstrap and Provisioning)
Added support for PXE server, operationalize NX-OS software to match an existing server environment
Extensibility – how we package software
We did not use to expose much beyond a bash shell
Now you can install native RPM’s, and third party applications running processes as they would on a Linux server
We are now adding support to leverage Linux like tools for debugging, configuration and troubleshooting…manipulate those front panel ports as native Linux interfaces within our switch software stack.
Application Integration (Adaptable SDK)
Published an SDK, a build environment that you can install on any Linux server, download the build agent, and put your source into that directory structure and build into an RPM for installation and run it natively.
Build your own custom automation apps, monitoring agents, and have them run natively on our platform
Programmability Tool Choice
We have a native Python shell today that has a Native Cisco Library that you can utilize for automation
NX-API – the ability to embed CLI commands and structured data (JSON, XML) for execution on the switch via HTTP/HTTPS Interface to get back structured data back on show commands.
Support for Chef and Puppet
Agents will be publicly available on the enterprise sites
Support for Open Stack, Neutron
NX-OS is now more modular, more open, more capable of third party integration providing a wide variety of programmability choices ideal for Dev-Ops environments.
Five case study examples
Nicolas provides five case study examples.
Checking Software Version
Using Python script with NXAPI and JSON to pull version numbers
Python script to query multiple switches to check compliance against a specific version