Mathias Rosenthal - Fotolia
Joyent Inc. has run OS containers in production for nearly a decade and when Docker exploded on the scene it was one of the early vendors to hitch itself to the technology.
Late last year the cloud provider reframed itself around "container-native infrastructure" and has since released products including Triton, a container infrastructure for managing Docker containers; and Containerbuddy, which containerizes traditional applications to allow them to run anywhere.
The company is also among the charter members of the Cloud Native Computing Foundation, which was formed in July to create reference architecture for cloud-native applications and containers. Joyent CTO Bryan Cantrill is on the technical steering committee of the foundation. He recently spoke with SearchCloudComputing about the state of containers, what to expect over the next year and what still needs to change.
Application containers continue to get plenty of buzz, but questions remain. What are you seeing out there?
Bryan Cantrill: Everyone sees containers as the path forward, and there's a lot of consternation about what exactly that means. With the virtual machine revolution a decade and a half ago, they didn't have to change the way they thought about problems -- just take physical [machines] and virtualize. With containers there's more opportunity and arguably more peril because they allow you to change the way you think about the problems.
Some people will argue that containers have so much traction because they resemble VMs.
Cantrill: That's true, but what people discover is containers are only as good as their surroundings. Just giving the vessel to have something in production doesn't give you the service discovery. As we transition from pets to cattle, containers are deeper than simply changing the substrate. They are really about building systems at scale more readily and easily, but it means you have to solve problems of how do I effectively turn this into micro-services?
Where are we in the maturation of the market and people's understanding of container technology?
Cantrill: One of the questions that came up at KubeCon [the recent Google Kubernetes community conference] was, "Are we near peak confusion in the container space?" It's interesting that from everyone I talked to, be they in development or ops or a vendor, everyone said we're not at peak confusion. We can expect it to still grow and some said it's accelerating, which is a disturbing thought.
Bryan CantrillCTO, Joyent Inc.
I don't know the degree we can expect them to settle in the immediate-term because all of this stuff is open source. There are different frameworks and different philosophies. There's a lot of confusion and the ethos has not been toward simplicity. It's been more toward a land grab, to put it bluntly, which makes it more difficult to understand the lines of delineation when they are deliberately trying to expand into as many areas as they can.
Containers as a service is the latest trend we're seeing from providers. Is there a concern that there's too much proprietary abstraction from some of these services and containers lose portability across platforms?
Cantrill: People do turn a bit of a jaundiced eye toward the all-seeing, all-dancing container as a service. People want to be able to use containers to build things themselves. Our belief is we need to have container-native infrastructure -- not provisioning inside VMs but actually provisioning purely containers. When you do that there are certain things that become a lot easier when a container has an IP address and you don't have to do all these stupid mapping stunts.
I do think these container services, especially when running inside VMs, are just a way for existing cloud folks to plant their flag on containers. They don't realize the underlying economics of the container revolution.
What needs to happen next in the container market?
Cantrill: The abstraction expansion needs to slow a bit or we need to sediment some of these things and get them running meaningful stuff in production. We're not there yet with anything. ...
You can truly deploy [Triton] in production. Use Docker Compose to stand up services that are resilient and so on, but outside of Triton some of this stuff feels so nascent and early that there's a bit of a stigma associated with it. We need to get some of these frameworks much more resilient. People need to stop gloating about the number of commits they have and the number of contributors and downloads. To me, there's a degree to which that denotes a level of churn. You look at some 10,000 or 20,000 issues and how can you keep track of anything with a project that's expanding so rapidly?
At some time in the next year we're going to start at least mentally consolidating some of these abstractions, which is not to say there is going to be a single winner that's going to emerge, but rather that we'll start to have a better idea where some of the abstractions fit and where they don't. Further mutations are also likely, but I think we can nonetheless expect more of an emphasis on robustness and less on relentless expansion.
Trevor Jones is a news writer with TechTarget's data center and virtualization media group. Contact him at firstname.lastname@example.org.
Tools and tips for scaling Docker containers
Docker launches trio of new container orchestration tools
An up-close look at AWS' EC2 Container Service