If you are thinking that this is a new piece of software, yes, you are partially right, but DevOps is more of a concept, rather than one specific piece of software or company. DevOps focuses on both the IT Operations and Development teams (in most cases) in a collaborative fashion. DevOps simplifies the process of development, approval, and then scrutiny of functionality all in one step. Most DevOps teams face the same persistent challenge – the requirement to handle multiple deployments in a very short period of time. Some organizations are able to perform many deployments per week, other companies struggle with every single one.
Ben Rockwood, director of systems engineering for Joynet, was quoted as saying
If you want to start DevOps … take your developers, your management, and your ops teams and buy them a bunch of beers and chips. You need to open a channel, sit together, ask questions and implement the no [expletive deleted] rule.
So DevOps isn’t something you can just start doing after a weekend seminar of trust falling, team building exercises, and yoga, it’s a belief that your people have to follow.
If you are experienced in the area of business management, you will notice that this concept is seemingly opposite from the ALM (Application Lifestyle Management) concept, which identifies the potential problems that any one process may have. Within ALM, one seemingly simple step can be broken down into dozens of steps. Why do this? The purpose is to identify and eliminate any variances in the development process.Seemingly, they are two opposites, but in fact, they are two different processes altogether.
The concept of Cloud DevOps isn’t basically more than online collaboration – for which there are many collaboration tools out there. There isn’t, however, much of a platform for this specifically. Therefore, dotcloud has come up with one.
The concept is basic- you keep your stack online, and easily experiment with new services in a sandbox, and roll them into production when you are ready. This allows for many possibilities:
Scenario Roleplaying – what will happen if we target this audience
If this then that – Dependencies and variables that you will most likely have to account for
Application infrastructure – will this stack handle the load that will be placed on it?
So what does this mean? It means that if you want to get an application built, you configure your apps by combining the services you need, and combine them to form a stack. The configuration file will tell you how to set it up for ease.
Register your application, push your code, and add your own custom domain (if necessary), and scale it, all right there. Dotcloud will take care of load balancing and fail-over automatically, there is no external configuration required.
While that whole process may seem oversimplified, it really is. dotcloud is a simple website that allows you to collaborate, utilize your management processes to your advantage (including DevOps) and roll out an application with relative ease.
Those in the development side of things want to create, and make wonderful magic happen, with little regard for consequence. Those in the operations side of things want stability, smooth operation, and functionality. Smooth and stable is boring, and wonderful magic rarely works as it should. These are basic concepts that we all know and can appreciate, but it’s the ability to balance these two that makes for a good DevOps application. Given that the volatile nature of these two areas of application development is always going to be at odds, it only makes sense that one takes a cloud approach to DevOps.
Article Contribution: The article is written by Michael Clark. He is very much in writing about various web development and cloud apps. Because of his interest he joined the site http://www.datadial.net/.