How do you do metering and billing in such a world? How can IT management or a Line-of-Business organization have more visibility into what the DevOps groups are delivering in containers? How do you know the sources used to create the container are trusted sources? How can you protect against security vulnerabilities hidden within the container?
How does identity management and access control work within the scope of a large container deployment? Are there expectations for providing auditing and compliance to meet standard security deliverables like we see with workloads deployed in VMs and on bare metal? How far can containers be scaled for large workloads?
Google’s Kubernetes has been a popular choice for deploying containers in clusters. In 2015 Docker released its own Swarm clustering software which provides native clustering capabilities. Docker says that Swarm has been tested for up to one thousand (1,000) nodes and fifty thousand (50,000) containers. In 2016 container clustering will continue to make significant progress and we will begin to see whether containers can scale as an enterprise customer would expect.
High availability will also be a significant challenge for containers. Container HA is fairly rudimentary today – mostly basic failover. There are other HA features that enterprises need. For instance, rolling patches are a key to maintaining uptime in the cloud. A single kernel patch can take a container farm with 100’s of containers offline for considerable time to update.
When it comes to cloud computing, containers will be part of that story. More enterprise features will be needed to deliver a large and diverse portfolio of commercial enterprise software in containers, including management tools for automating scale on-demand, auditing content, verifying compliance, enforcing compliance, high availability, providing reporting and administrative visibility across form factors (physical servers, VM’s, containers). These are all elements that enterprise customers will need and are not widely addressed by software providers today.
Ultimately, containers are a part of an IT solution, not separate islands of resources. And the world is not going to switch to containers overnight. An enterprise might have a multi-tier application consisting of a few Docker front ends or LXC front ends, a few middle tier VMs and a few backend physical database servers, along with a mix of physical and virtual appliances. Enterprises need to be able to run applications with networks, storage, and management and monitoring tools that span across bare metal, VMs, and LXC and Docker containers.
And of course, containers may not be the only answer to cloud application deployment. New technologies such as hypervisor unikernels are being discussed as a potential deployment tool for microservices-based applications. This model has a much smaller footprint by eliminating the traditional operating system and very rapid boot times. These attributes can be valuable in highly distributed application environments.
No doubt, containers are here to stay. Addressing enterprise needs will be key to rapid growth. 2016 looks to be a very interesting year indeed.
Sign up for Computerworld eNewsletters.