DevOps brings together software developers and IT operations through mutual and organic cooperation and collaboration. In legacy IT shops, the roles of developers and IT operations are logically segregated, which stifles progress and prohibits progressive integration efforts. Products that leverage DevOps provide developers self-service capabilities they’ve never had before — eliminating provisioning bottlenecks and adapting to changes quickly. The platform becomes highly scalable and flexible, removing much of the “red tape” in getting things done.
This is all well and good, and is often sufficient for most, but networking is often neglected as a part of the DevOps model. Common questions that arise include the following:
- Is your current networking strategy holding you back from scaling new projects quickly?
- Is your network topology designed to quickly add and remove compute infrastructure?
- How can your network integrate in a DevOps orchestrated world?
What is Devops for Networking?
This is where including DevOps for networking comes in, or “NetDevOps.” Traditional networking infrastructure can be difficult to manage when requiring agility with updated tools. If your organization is already implementing DevOps principles or has an organization that is flat or non-siloed, integrating networking into your framework may be right for you.
NetDevOps extends what you’re already doing in the DevOps world, but with networking. You’re already using automation to manage your compute infrastructure, so why not extend it to your switches?
The following are strategies for implementing Network DevOps in your organization:
- Make repetitive operations more reliable and predictable
Ever had a bad copy/paste via console, or typos that were propagated to all your systems and brought your network down? Reuse of known-good automation scripts increases admin confidence as well as task completion accuracy. Use of Cumulus-specific automation modules is available today. Trust the computers
- Leverage developer best practices to manage and automate your infrastructure
Use tools like git, Puppet, Ansible, and Chef to handle the provisioning and configuration management of your servers as well as your Cumulus Networks switches. These tools can manage version control, test in pre-production stage environments, and manage reusability for complex tasks. This is often referred to as Infrastructure as Code.
- Use what you have today, break down the human silos, and be creative!
Unless you’re starting from scratch, it can be difficult to incorporate NetDevOps into your infrastructure. Utilize what you have today and create transparency to get the collaboration between teams going. Break down the “ticket walls” and logical firewalls between teams. Enable new levels of collaboration between operations teams through pull requests to the code base. Eliminate lengthy deployment conference calls and long weekends. Build a more cohesive and integrated solution by combining network automation into the change management requests.
NetDevOps (like DevOps) is a harmonization of process and people. Leveraging each team’s strengths, appreciating each team’s goals, and empathizing with each team’s weaknesses.
To hear the full story on NetDevOps at PuppetConf, Leslie Carr will be presenting at 1:30pm PT in room A105/A106. Attend the talk and be entered to win a Star Wars Sphero BB-8! Watch out for this space to get the Slides and YouTube video.