Red Hat has announced a service that tests whether Enterprise Linux applications are correctly formatted to run in a containerized form.
Linux containers are a popular new mechanism for developers to package and move applications and their middleware. The self-contained units can be run without reconfiguration, as long as the host environment is container aware and container ready. Developers anticipate that they will allow workloads to move easily between different cloud services.
Containers provide some of the attributes of virtualization, but without the hypervisor. The application runs in a defined and isolated space on the server and can run alongside several other containerized applications. In addition to lacking a hypervisor, multiple containerized applications share one operating system on the host. With virtual machines, in comparison, each workload provides its own operating system and needs a hypervisor to pass the application's service calls through to the hardware.
Containers offer a more lightweight way to move workloads around. Linux container systems such as the open source Docker allow a developer to build up a layered set of software files that represent the application and all its dependencies. The container can be moved around as a single combined file, but Docker enforces the activation of the files in the proper order when the workload is launched. Thus the administrator's scripts that launch the base image of the application, the application server, the web server, and the interface to the database system will fire in the correct sequence in order to yield a running application.
[Want to learn more about Docker containers? Read Docker Container System Works With All Linuxes.]
Red Hat and Docker worked together to ensure that the upcoming release of Red Hat Enterprise Linux 7 and Red Hat's OpenShift PaaS platform are certified to run Linux containers. No date has been announced for RHEL 7; the beta version launched Dec. 11.
In addition, Red Hat's well-established application certification program, which certifies that an application will run smoothly under RHEL, can now inspect and certify an application slated to run under RHEL in a container.
For independent software vendors, enterprise cloud service builders, and cloud service providers that want to be sure containerized applications run in the manner intended, the certification process will tell them whether the container packaging has been done properly. RHEL 7 is available in its beta form on Amazon Web Services as an Amazon Machine Image, indicating Amazon's EC2 will be able to host certified applications. An AMI is Amazon's version of a Xen virtual machine.
In addition, Docker will be part of the next release of the OpenStack project's cloud software, so OpenStack clouds are another potential destination for certified, containerized workloads. HP Cloud and Rackspace Cloud are current OpenStack implementations.
Application owners who wish to deploy an application with a NoSQL system such as MongoDB will probably turn to MongoDB for those tools, Marty Wesley, senior principal product marketing manager for Red Hat container strategy, told us in an interview. Likewise, Red Hat certification tools are best for deploying RHEL containerized applications.
Wesley said that containerized applications also ease maintenance tasks. As a container system assembles the required parts, it can go to the original source, such as MongoDB, to determine whether an updated version is available.
Containerized applications resemble software appliances in which a bundle of parts has been configured to work together. But customers end up maintaining the appliances, adding patches as they're available or updating parts of the underlying system. Containers, in comparison, perform such maintenance automatically.
For applications that must remain secure, the container system will run Security Enhanced Linux, which prevents it from opening network ports or accessing files that haven't been explicitly authorized.
Containers can't perform all the functions of virtualization, but they do provide a more lightweight, lower-overhead isolation for applications. There's also a performance advantage in running an application's processes directly in the Linux kernel without the intercession of a hypervisor, Wesley said.
Containerized applications can also be pushed to geographically separate destinations much faster than virtual machines. Another plus: A container system adds tens of megabytes to the workload compared to a virtual machine, which includes 500 MB or more for the operating system.
It's too soon to announce which clouds will be geared up to run Red Hat-certified RHEL containers, but Wesley said some of the largest cloud providers will be announced soon. Given containers' potential to ease the maintenance burden and their ability to move workloads internally or to external service providers, "we see containers as having the potential to shift how IT is done."
Engage with Oracle president Mark Hurd, NFL CIO Michelle McKenna-Doyle, General Motors CIO Randy Mott, Box founder Aaron Levie, UPMC CIO Dan Drawbaugh, GE Power CIO Jim Fowler, and other leaders of the Digital Business movement at the InformationWeek Conference and Elite 100 Awards Ceremony, to be held in conjunction with Interop in Las Vegas, March 31 to April 1, 2014. See the full agenda here.