There is really no such thing as a specific DevOps "tool" -- and don't buy into the "DevOps" labeling many vendors are attaching to their solutions. Successful DevOps depends upon a multitude of tools and methodologies that can help organizations better align their software development and release cycles.
Those are some of the takeaways from a newly released ebook, titled Kickstarting DevOps, which explores the key ingredients that can help make DevOps a success. One piece of interesting advice: when launching an effort, "it's better if you don't even mention DevOps, because they may not know what it is or may have preconceived notions about what DevOps is."
For our purposes here, we view DevOps as speeding up the software delivery cycle by playing on everyone's strengths. It's a way to achieve more rapid iterations and delivery of software, whether its inside the enterprise or packaged for sale to someone else. The challenge is that developers tend to be inherently creative types, who work all kinds of hours. Operations people tend to be focused on schedules and keeping things running at an orderly pace. DevOps is intended to bring these two groups to common ground, to keep software operations chugging along at a predictable pace. Today's economy demands it.
Ultimately, the goal of DevOps is not just helping IT to run smoother, even though it helps. The New Relic book's authors suggest keeping business requirements front and center of DevOps engagements. Conversations should focus on measuring success, establishing goals and objectives. The book even suggests a compelling question that should be asked of every IT and business employee: "What is holding you back from blowing the doors off?"
With this overriding business focus in mind, the book makes two sets of recommendations for getting started, in terms of key performance indicators (KPIs) and tools. KPIs play a vital role since "DevOps fundamentally changes the way that IT does its job." KPIs act as a "canary in the coalmine," providing an early warning when the system begins to degrade. KPIs to consider include deployment frequency, change lead time, mean time to recover, and change fail rate.
There is no single DevOps tool, but rather a constellation of tools that can help automate the movement of software through the development to operations lifecycle. While New Relic itself has a horse in this race (they provide software analytics), the book's authors picked the brains of members of the vendor's engineering teams to identify the favorites. These include configuration management tools to help track and control changes to the software code base; test-and-build systems to automate developer tasks such as compiling source code into binary executables, running texts, and creating documentation; and application performance monitoring tools for code-level visibility that enables quick identification of performance issues as well as rapid remediation.
The book's authors also observe that there a range of open source tools that can be applied to DevOps challenges. "It was open source that gave us DevOps," the book states.