alphaspirit - Fotolia
What are the benefits of application containerization, and what kinds of software or systems are required?
The Linux Containers function has been a part of the Linux kernel since version 2.6.24 and is already an integral part of the Linux operating system -- no additional software is needed to allow containers. However, application containerization products like Docker can be added to provide expanded features that enhance container creation and maintenance. In practice, a platform such as the Docker Engine could take the place of a hypervisor, sitting atop the Linux OS and supporting an array of Docker-built application containers.
Containerization can provide a series of benefits to the business. From the data center perspective, containerization allows for lightweight instances that demand less storage and memory. The lightweight nature of containers boosts scalability to anywhere from 10 to 100 times that of conventional hypervisor-based VMs, and allows far more containers in the environment without adding more servers.
From a business standpoint, containerization tools like Docker provide a means of speeding application development, testing, deployment, migration and maintenance -- they're a boon for DevOps. For example, a business running a service on thousands of servers might ordinarily require a long and disruptive update cycle each time the underlying software is upgraded. With containerization and application containerization tools, the entire fleet of servers can be updated quickly to the latest version by simply moving changes to each system, ensuring that every server is running the same software and service level.
Basic Linux Container, or LXC, capability is already supported in the 2.6.24 and later versions of the kernel, but other application containerization tools, such as Docker, may impose additional platform requirements. For example, Docker will run on most versions of Linux, including Ubuntu 12.04, Fedora 19, Red Hat Enterprise Linux 6.5, CentOS 6, and openSUSE 12.3 and later. It also supports cloud deployments on Amazon EC2, Google Compute Engine and Rackspace. However, it does not run directly on Windows systems. The only workaround is to use a tool like VirtualBox to support Docker on a VM -- then run containers atop it running in the VM.
Dig Deeper on IT Ops Implications of Continuous Delivery
Related Q&A from Stephen J. Bigelow
Navigating data center malfunctions when hardware is off premises can be tricky. Organizations must have strong SLAs with their colo provider to ... Continue Reading
Regression tests and UAT ensure software quality and both require a sizeable investment. Learn when and how to perform each one, and some tips to get... Continue Reading
Learn the meaning of functional vs. nonfunctional requirements in software engineering, with helpful examples. Then, see how to write both and build ... Continue Reading