DevOps Zone is brought to you in partnership with:

Mitch Pronschinske is the Lead Research Analyst at DZone. Researching and compiling content for DZone's research guides is his primary job. He likes to make his own ringtones, watches cartoons/anime, enjoys card and board games, and plays the accordion. Mitch is a DZone Zone Leader and has posted 2578 posts at DZone. You can read more from them at their website. View Full User Profile

Deployment: A Bottleneck No More

11.06.2012
| 10339 views |
  • submit to reddit

Deploying an application out into the wild and into your users' hands is a scary thing for a lot of businesses.  While that last-step fear will never completely go away for some companies, the strategies of DevOps and Continuous Delivery are helping.  The #1 thing you can do to un-bottleneck transitions from development to ops will always be to make sure the human element is in order: DevOps is about people and organizational strategies.  

There's no magic tool that will completely solve organizational woes, but it would be crazy to deny that some tools make things a lot easier.

I was talking with Wesley Pullen, the VP of Global ARA Technologies at UC4, about this topic last week and he had a lot of interesting insights into the problems of today's enterprise developer.  These points were reiterated in a blog post on UC4's site:

With JARs, WARs and EARs (not to mention dynamic scaling, liquid VM and more…) it seems like all you need to do is drop a file in the right location and “boom”, your app is ready to role and scale.  Well guess what?  That’s just not the way things are when you build enterprise applications. There are always a million “other” details that need careful attention and precise execution in order to make an enterprise application roll.  Why else would there be such a big force behind “DevOps”?  -- Michael Schmidt 


That's why UC4 has built automated release utilities that can handle the scale and number of application deployments that enterprises deal with day in and day out.  

Tool builders realize that developers want to be able to use their unique tool stacks and open source utilities, but sometimes you need help in the enterprise environment fitting all of these tools together when they're maintained by different communities with differing purposes.  

Pullen said that UC4 addresses this with 450+ templates for multiple job environments and operating systems.  So whether you're using 1 server or 1800 servers, the deployments and configurations will work.  Tools like Puppet and Chef are great for provisioning, Pullen said, but you can't let them handle scalability like that all alone.  UC4 keeps track of not only dependencies, but network settings and specific component details for hundreds of open source tools that might be used, like Maven, Jenkins, or Subversion.

Another issue he sees causing bottlenecks in deployment is the operational governance and traceability that is mandated in larger enterprises.  Pullen was excited to talk about news that his developers at UC4 had been integrating their technology deeply into the CollabNet TeamForge workflow and interface.  Put simply, these tools are allowing developers do a lot of deployment tasks without getting any help from operations, and still maintaining governance standards.

Here were some other features that Pullent talked about from a March release that have now been integrated with TeamForge.

   •   New Web-based user interface supports drag-and-drop deployment process definition and enables users to manage release processes from a simple, integrated interface

   •   Application and component modeling minimizes failures by identifying unmet dependencies

   •   Test environment scheduling ensures required test and staging environments are available at the right time, preventing unnecessary project delays

   •   Built-in application server support for deploying applications on IBM WebSphere, Oracle WebLogic, JBoss, and Microsoft IIS application servers accelerates implementations

   •   Built-in integration support for source code management tools -- such as Concurrent Versions System (CVS), Apache Subversion (SVN), and Microsoft Team Foundation Server (TFS) -- makes it easy to fully automate deployment in testing, staging, and production

   •   New unified roles and access control management capabilities enhance security and help ensure compliance with industry regulations

   •   Support for deploying incremental application updates expedites deployment

   •   New application management database (AMDB) with API accessibility for integration with CMDB and other repositories


For more info you can check out the announcement that I talked to Wesley Pullen about.