Containers + DevOps: Power Couple - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IT Leadership // IT Strategy
09:06 AM
Langdon White
Langdon White

Containers + DevOps: Power Couple

Containers provide a lightweight alternative to virtual machines. The benefits to your DevOps strategy go beyond easier deployment.

There can be friction between developers and operations when the latter tries to check the "crazy things" that developers want to deploy. As an old, probably bad, truism of mine goes, "Ops would be happy to never change anything, QA likes a few new features to test, developers want bleeding-edge toys every week, and the business wants new stuff now."

DevOps eases this tension by providing another abstraction layer. If developers are responsible for their applications in production (where "application" means the source code and its dependencies above the OS), then operations people are free to focus on making sure that there is appropriate computing power, fail-over, geographic presence, and everything else that symbolize a robust, modern, operational environment. When the people who create an application are the ones supporting it, things tend to run more smoothly: When a developer gets a bug call at two in the morning for a couple of days running, that bug gets fixed pretty quickly. Operations people are happier because they can now focus on automating their environment, not responding to application outages that they often don't have the knowledge or skills to fix.

As part of a DevOps strategy, containers provide a more subtle benefit than just easier deployment. They enable development and operations leadership to "bless" certain application stacks for development use. These template-type stacks include agreed-upon components and provide a guide for junior developers or contractors to follow. Using containers to implement the "blessed" stacks ensures that development teams have a structure to follow but will still be able to easily modify applications, whether to add a critical new feature or to add a module that was missed in the original definition.

Read the rest of this article on Dr. Dobb's.

Langdon White is a platform architect for Developer Experience at Red Hat.  View Full Bio

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
User Rank: Ninja
9/8/2014 | 11:15:01 AM
Re: Containers + DevOps
It is true that DevOps is changing the way we look at pretty much everything. In a way, it's like a lot of new methodologies: "agile", BYOD, etc. It's not about adding something new, it's about taking down barriers and letting people do their jobs the way they've always wanted. Seems simple enough, but it took as a while to get there in terms of security policies and business, and as you point out, it comes with some headaches of it's own. There is a reason many businesses are apprehensive about these policies, but I think the benefits are starting to far outweigh any downsides.

Containers seem like a great solution for developers wanting things just how they like them, and it's not something I'm too read up on. Thanks for the primer! It's good to see some disclosure too - the full version of the article on Dr. Dobb's (a good read!) notes that it's not 'all sunshine and rainbows' with containers. That's kind of a rarity in the IT-hype blogosphere. To be honest, this sounds a little heady for my software dev needs, but I'll be sure to pass it on!
User Rank: Ninja
9/4/2014 | 9:10:38 AM
Re: Why not update an existing container without creating a new one?
From a security perspective, you would need to get security blessing during the app creation stage, which in many cases might work provided you have a security rep on the DevOps team.  For other organizations, I wonder if using containers, and having to create new containers (in a sense) if you are updating/patching the application might mean more frustration from the security team if they have to go ahead and test again that the security policies are in place.  Is there a way to embed security controls in the container as a default as part of the container certification process so that any new containers would carry the same policies?
Charlie Babcock
Charlie Babcock,
User Rank: Author
9/3/2014 | 3:56:06 PM
Why not update an existing container without creating a new one?
Isn't possible, Langdon, for a developer to update an application tier inside Docker, without disturbing the layers around it? That is, a silver bullet update, affecting one layer in a production system and leaving others unchanged? Granted such a change must be tested in staging before going back into production. You appear to recommend generating a new point release of the application in development, then swapping in the new container. Isn't there a way to work with the existing one? 
Enterprise Guide to Edge Computing
Cathleen Gagne, Managing Editor, InformationWeek,  10/15/2019
Rethinking IT: Tech Investments that Drive Business Growth
Jessica Davis, Senior Editor, Enterprise Apps,  10/3/2019
IT Careers: 12 Job Skills in Demand for 2020
Cynthia Harvey, Freelance Journalist, InformationWeek,  10/1/2019
White Papers
Register for InformationWeek Newsletters
Current Issue
Getting Started With Emerging Technologies
Looking to help your enterprise IT team ease the stress of putting new/emerging technologies such as AI, machine learning and IoT to work for their organizations? There are a few ways to get off on the right foot. In this report we share some expert advice on how to approach some of these seemingly daunting tech challenges.
Flash Poll