Features

What is a Container Orchestrator, Anyway?

Container orchestration has become a hot topic following Docker’s ascent. There are lots of orchestrators out there, and people tend to have strong opinions about which one is best. But in this post, I’d like to step back a bit and ask the question, “What is an orchestrator, anyway?” The term is much less clear than you might think.

This is a question worth asking because the word “orchestrator,” when used in reference to containers, has become quite ambiguous. You hear it most often to refer to Docker Swarm, Kubernetes, Marathon or other platforms. But it is sometimes used in other senses.

So let’s take a look at the different meanings of the word “orchestrator.”

Meaning 1: Any Infrastructure Management Tool

The concept and terminology of orchestration predates the arrival of Docker containers. Before Docker came along, orchestration referred to the process of managing any kind of infrastructure, usually with the assistance of automation.

For example, VMware was developing products to help users orchestrate clusters of virtual machines back before anyone was thinking that containers might eventually replace those virtual machines. Orchestration for cloud servers was also a big focus prior to Docker, with tools such as Juju designed for this purpose. You tend not to hear the term “cloud orchestration” frequently today, but that is essentially what tools like AWS CloudFormation do.

If you take a broad approach to defining orchestrators as any type of infrastructure management tool, you could also include provisioning and infrastructure-as-code solutions, such as Chef and Puppet, in the category as well.

Meaning 2: Container Management Tool

When Docker containers became popular, people realized they needed an automated way to manage the hundreds or thousands of containers inside a Docker cluster. With Docker, automated orchestration ceased to be an option.

You might have been able to manage a VMware cluster of a few dozen servers manually. But there is no way you can handle a production-scale container environment without the assistance of automation.

That’s why tools such as Docker Swarm and Kubernetes were developed. Their main job is to automate the provisioning of containerized infrastructure and provide load balancing for the services that containers are used to create.

Meaning 3: All-Around Container Deployment Platform

Orchestration is occasionally used in a broader sense to refer to platforms designed to manage all aspects of setting up and deploying a containerized application. Rancher, Kontena and Amazon ECS are examples.

When people use the word in this context, they are usually thinking of the idea that these platforms have container management built into them, even though the platforms do more than just manage containers.

This use of the term is a little misleading. Offerings such as Rancher and ECS are best labeled containers-as-a-service platforms because they do much more than orchestration. But the terminology can get confusing because in some cases (like Rancher’s) the application management platforms use external orchestrators, whereas in others (like Kontena’s and the ECS case) the orchestrator is unique and built into the core platform.

Conclusion

Nobody knew container orchestration could be so complicated.Well, OK, maybe you did know. The technical dimensions of managing containers at scale are pretty complex.But even the mere terminology and concepts behind container orchestration are more complicated than you may have realized. The next time you use the word “orchestrator” or “orchestration,” stop and think about what you really mean.

Christopher Tozzi

Christopher Tozzi has covered technology and business news for nearly a decade, specializing in open source, containers, big data, networking and security. He is currently Senior Editor and DevOps Analyst with Fixate.io and Sweetcode.io.

Recent Posts

CloudBolt Taps StormForge to Help Rein in Kubernetes Costs

StormForge's machine learning algorithms that optimize Kubernetes clusters will be fed into CloudBolt's Augmented FinOps tools.

2 days ago

NVIDIA Acquires Run:AI to Run AI Workloads on Kubernetes More Efficiently

Run:ai enables IT teams to take advantage of container orchestration to schedule AI workloads across multiple GPUs.

2 days ago

Cosmonic Donates Kubernetes Operator for wasmCloud to CNCF

Cosmonic has contributed an Operator developed for the wasmCloud platform to the CNCF, enabling WebAssembly applications to run on Kubernetes…

7 days ago

Ensuring Efficient Cloud-Native Backup and Recovery

Cloud-native backup and recovery solutions can improve an organization’s cloud data resilience against accidents and online cyberthreats.

1 week ago

Latest Kubernetes Update Increases Enterprise Appeal

In total, 22 capabilities previously available in beta have graduated to stable. Many of those Kubernetes features appeal primarily to…

1 week ago

Red Hat Adds Developer Tools to Extend DevSecOps Reach

Red Hat added three new developer tools, expanding its DevSecOps portfolio for building secure cloud-native applications.

1 week ago