Containers are all the rage among developers, who use the open source software to build, test and run applications. But the technology, offered by companies such as Docker and CoreOS, isn't on the radar of most Fortune 500 CIOs, suggesting that it has a ways to go before it gains traction in large enterprises. That will change as CIOs swap legacy environments for cloud infrastructure and refashion their IT departments under agile and DevOps principles, experts say.
Virtualization made computing more efficient by enabling companies to run multiple operating systems on a single server. But VMs only support one application per OS. Containers take server resource utilization much further by allowing developers to run an app in its own container, and run multiple containers on the same OS. Developers can also move containers between Linux servers or virtual machines (VMs) and make changes to apps or portions of apps, called microservices, without breaking the software and risking downtime. Proponents say containers facilitates greater agility in the age of constantly updated mobile and Web apps.
A hit with developers, Docker isn't yet embraced by CIOs.
"Docker and containers are a great catalyst" for creating and testing apps for cloud systems, said Docker CEO Ben Golub, who detailed containers and Docker's business model to more than 80 CIOs at a Wall Street Journal event earlier this month. The startup has garnered a $1 billion valuation from investors confident that containers are a rising force among businesses that are increasingly adopting the computing practices of Internet companies.
Golub kept his comments about containers at a high level, but it quickly became clear that many CIOs were largely unfamiliar with the abstract technology. A live audience poll conducted during the event revealed that only 44 percent of the CIOs were using container software. Golub joked that the remaining 56 percent are running containers but just didn't know it.
The comments indicated that some CIOs believe that the VMs running in their private or hybrid clouds are sufficient. And that may well be the case, depending on their application development processes. But experts say that containers offer a more robust alternative than VMs for supporting the continuous delivery and continuous integration attributes of DevOps practices. In DevOps, code updates and bug fixes are tested and deployed within minutes or hours rather than days or weeks.
One of the constraints of VMs is that they are wedded to a guest operating system. When developers introduce any change to a VM, such as a configuration or a patch, they must make several other updates to sustain the VM environment. A key advantage containers hold over VMs is that the former virtualizes the operating system; containers don't have a guest OS so when a developer makes a change to one container every other container inherits the change. This application abstraction also means developers don't have to commit to a particular platform. "Other technologies require you to standardize on one OS, choose one cloud vendor, and that runs counter to what people want to do with containers," Golub explained at the Wall Street Journal event.
Ralph Loura, who used containers in his former role as CIO of HP's Enterprise Group, says that CIOs who don't see value in containers are likely still deploying their VMs simple as corollaries to physical machines, satisfied with running several OS' on a single box. Chances are, they haven't crossed the chasm to continuous integration and continuous delivery, two of the hallmarks of DevOps practices.
"The benefits of the container are going to be lost on them because they haven't changed their model," Loura says. "It's when you start getting into microservices and DevOps, instant-scale-based environments that containers not only make sense but are compelling," because it allows organizations to reduce VM management, Loura says.
Why aren't CIOs there yet? Loura says that many CIOs are juggling the technical debt associated with legacy systems, and projects employing big data analytics, open source, PAAS and myriad other emerging technologies. Many are also still struggling to adopt agile methodologies, the coding processes requiring close collaboration between the business and IT. For such CIOs, DevOps remains elusive and distant, at least until they hammer out their cloud strategies.
"Every CIO in that room I bet has seen an explosion in the demands on the Web and digital side, and the way that they run their business is not set up to do that," said CoreOS CEO Alex Polvi. He says CIOs are struggling with "painful" transitions to cloud infrastructure from legacy environments. CoreOS aims to assist companies with this transition, using containers, security tools and other integral components of cloud migrations. Polvi calls this strategy "Google infrastructure for everyone else," or GIFEE for short.
That's no accident. To get their Web-scale infrastructure running optimally, Google and Facebook have heavily deployed millions of containers on low-cost commodity hardware over the last several years. Startups such as Docker and CoreOS took the open source code underlying container technology and democratized it for the masses. Now banks such as Goldman Sachs, technology giants such as HP and retailers such as Gilt Groupe are deploying Docker containers en masse. Verizon and CA use containers from CoreOS.
As a result, many CIOs are still looking at Docker and containers as primarily a test and development environment. Over time production workloads will migrate to containers, Ryan says.
Loura agrees. "Eventually, they'll be comfortable with managing containers at scale that they will become de rigueur in production," he says. However, he expects containers are at least five years away from broader enterprise adoption.
This story, "CIOs aren't ready for Docker and container technology" was originally published by CIO.