It is no secret that cloud computing has changed the IT infrastructure model forever. It has transformed the landscape of the data center including the way data centers are used, how they are designed, and how they are managed. The cloud has altered the buying behavior of the Enterprise, with every new project now going through a “buy vs. lease” evaluation to decide whether to build the infrastructure in-whether to build the infrastructure in-house or to deploy in the cloud. A side-effect of this new model is
that a subtle shift of the expectations of data center admins has quietly taken hold. Whether we are talking about public clouds, private clouds, or a hybrid of the two, those managing the infrastructure have grown to expect a plug and play experience from their data center. Time was, when you added a peripheral to your PC you needed to manually configure a slew of settings. That was then and this is now. Today we expect things to just work ‘automagically’. This auto-provisioning mentality is moving to the datacenter where there is now an expectation that when you add an application, virtual machine, container, or deploy a Hadoop cluster, you get the same plug-and-play experience with the entire data center as experienced with a laptop. As new workloads are deployed, the servers are automatically provisioned, so too, the storage, firewall rules, load balancers, and the physical network infrastructure needs to be automatically provisioned.
The automated provisioning and monitoring practices first developed for Web Scale IT have permeated even the smallest data center footprints. Whether your data center footprint covers two football fields or two rack units with a hyperconverged solution, people desire the force-multiplying benefits of automation. Think about it ̶when you have hundreds or thousands of servers (virtual or physical) and you need to change some security setting, or change where the SYSLOG alerts are sent, you use a tool like Puppet or Ansible to update all the server endpoints with a single command. Folks are now accustomed to making mass configuration changes in an automated, scriptable manner, for all of the data center infrastructure, not just servers. This shift becomes a significant OPEX differentiator for Cloud providers and larger enterprises that measure manually entered CLI key-strokes in terms of headcount.
At Mellanox, we are continually adding new automation features to our home-grown Network Operating System, MLNX-OS, with support for OpenStack, Puppet, NEO, REST, Neutron, and more every year. We have not stopped investing in MLNX, which offers an industry-standard interface, familiar to most networking professionals. However, there is a growing class of customers who are not satisfied with this approach, a flourishing rank of digerati who have embraced the DevOps approach and now treat their infrastructure as code. These technology boat-rockers started by adding network functions to their Linux servers and now want their Ethernet switches to offer the same programmable Linux interface as their servers. They have figured out, because it is Linux, they can load their own applications on their switches just like they do on servers. If they ever need some network visibility feature that didn’t come with the switch, they create a simple script to monitor the particular counter they are interested in and then have the switch automatically send an alert when appropriate.
The Mellanox leadership team thoughtfully considered whom to partner with in order to create the best solution for this new market and we found there was one clear choice: Cumulus Networks. Cumulus Networks is *the* leader for automating the network. Besides offering a native Linux interface that enables a switch to behave exactly like a Linux server, they have already integrated into every major Cloud Orchestration solution, including VMware EVO-SDDC, Nutanix, OpenStack, as well as Network Overlays like NSX, Nuage, PLUMgrid, and Midokura. They offer native support for server automation tools like Ansible, SaltStack, Chef, Puppet, and CF Engines. Beyond that, Cumulus has enhanced the Networking in Linux with the purpose of streamlining the provisioning of switches by reducing the number of unique network configuration parameters needed per switch. In many cases, all the Cumulus Linux switches in a data center POD will have nearly identical configurations, with the only difference being the loopback address:
A key benefit of offering a third party Operating System is that it allows Mellanox to compete with Broadcom-based switches in, “apples to apples” comparison tests in a way that highlights the hardware performance differences. Testing two switches with the same OS like the old Pepsi challenge in that it removes testing bias and shows how much better one hardware platform is than the other. We relish the opportunity to compete, especially when performance is the yard-stick. When it comes to 100GbE capable switches, our Spectrum switch is the clear performance leader, as documented by The Tolly Group here, and recorded in webinar here: https://www.mellanox.com/webinars/2016/tolly-performance-report/
At Mellanox, we have been investing in Open Ethernet for many years. We contributed multiple Ethernet Switch designs to the Open Compute Project (OCP). We open-sourced our Multi-chassis link aggregation (MLAG) solution and contributed the code to the community. We spearheaded the Switch Abstraction Interface (SAI) which aims to make it easy to port Networking Operating Systems to many different switch ASICs from any vendor. We are founding member of the OpenSwitch Linux Foundation project and we are leading the Open Optics initiative, which is aimed at unlocking 100G, 400G, and higher speed technologies. This partnership with Cumulus is the logical culmination of this effort.
Albert Einstein, famously, would conduct, “thought experiments” to consider new theories and ideas. I would challenge you to a different kind of thought experiment: think about what you could do if your switches were as easy to automate as your servers. But you can do more than just thought experiments. If you are a hands-on kind of person with a penchant for Linux, do yourself a favor and download Cumulus VX, which is a fully featured SW-only version of Cumulus that is free and runs as a Virtual Machine. Build a virtual network of five or six routers inside your laptop and see how well it works with your favorite server configuration management tool. Then you will experience, first-hand, why Mellanox decided to partner with Cumulus Networks.