REIMAGINING THE ENTERPRISE | A ZDNet Multiplexer Blog What's this?

Containers in the cloud

How do containers work in the cloud?

Containers remain a hot topic, especially in the cloud. According to IDC analyst Deepak Mohan, containers are - like serverless computing - components of the next generation of cloud computing because they move beyond what has become traditional cloud infrastructure, namely VMs and servers. Mohan says he expects 2017 to be the year when container management platforms start to gain significant market traction, especially from enterprises[1].

Why containers

Put simply, a container allows you to package an application with all of its dependencies into a standardised unit for software development. It consists of an application wrapped with only the operating system services that it requires. The key advantage of containerisation is portability: new versions of the OS do not result in a need for the application to change.

The business benefit here is that developers can focus on delivering the product and new features rather than compatibility, leading to faster development cycles and greater agility.

Containers are also transportable, so applications can scale and are flexible enough to be hosted on the most appropriate platform, whether each one is an individual application or a component of a larger application. Such platforms might be located in the same datacentre or cloud provider's facilities, or not, depending on the needs of the application and enterprise policies and compliance requirements. Effectively this, combined with low overheads - containers also consume less storage and RAM than OS-level virtualisation - means that workloads can move around on a global scale.

Container challenges

The challenges associated with moving applications into containers include application monitoring, and networking and storage configuration. Security is probably the biggest challenge, however, where observers contend that a container is less secure than a VM because it does not include a VMs hardened boundaries - and that any vulnerability in the underlying OS will be reflected in the container's security.

The same may apply when the enterprise creates a container: if the organisation's security standards are not as robust as they might be, neither will those of the container be.

And veteran industry observer and participant Dave Linthicum notes that containers: "require a deep level of authorization (usually root access in Linux environments) in order to run in the first place. Thus, attacks have a much greater potential to carry down into an underlying OS and over into other containers."[2]

The cloud advantages

So for the IT admin, containers offer portability from development to test, staging and production, and ease of backup and replication. Containers can of course be run on individual servers but that does not play to the strengths of the technology. Rather, the cloud is an ideal locus for containers.

This discussion takes cloud deployment for granted, for the simple reason that most of the benefits of containers cannot be reaped outside a cloud-based infrastructure. The advantages of greater application mobility, platform independence and low overheads all enhance the value of the cloud business model, with its distributed resources and pay-as-you-go elasticity.

Service provider role

Cloud provider support will be essential. This should ideally consist of a service that simplifies the process of creating, configuring and managing a cluster of VMs preconfigured to run containerised applications, and include support for container orchestration platforms such as Marathon and DC/OS, Docker Swarm, or Kubernetes.

Given that containers are still in the early stages, and that both skillsets and trained admins are thin on the ground, the provider should also help to build a community of like-minded folk who can draw upon each other's skills and knowledge.

Containers are another tool to enable and accelerate the more flexible and agile enterprise. Together with cloud services, they look set to become an essential element of the enterprise infrastructure.

[1] Network World: 10 must-watch IaaS cloud trends for 2017.

[2] TechBeacon: You've heard the benefits of containers, now understand the challenges.