The above image depicts the DevOps vicious cycle (Define / Plan –> Construct / Build –> Execute / Run), with the landscape of capabilities and jungle of tools around it.
In any enterprise (big or small), to execute any project (big or small), the steps that are followed are:
- Step 1 : Defining an Application or Designing a Plan for the Application by the Acount Owners
- Step 2 : Construction and Building of the Application by the Developer Team
- Step 3 : Deploying and Executing the Build/Release by the Operations Team
As the buzzword “devops” has been out in the market for quite some time now, there are a “jungle of tools” built and tagged under the DevOps category. But these tools can be differentiated from the way they function and at what point in time they can be leveraged in a software execution cycle.
Some of the common capability tunnels under which these tools fall are :
- Release Engineering Process and Continuous Delivery
- Jenkins, Canistrano, Glu, Hudson
- Environment Provisioning
- Chef, Puppet, CF Engine
- Hawk Eye on the System
- AppDynamics, BMC Software
- Vagrant, VMWare
…..and many more!!
There is an interesting Slideshare PPT, that talks about the different tools that are used for Devops and the confusion they create to pick, choose and implement in a project. This presentation gives a highlight of the Tools, the technology behind it, when to use and most importantly for what purpose.