Microservices orchestration

Completed

Contoso loves the results of using a microservices architecture so far. The overall web application calls individual microservices to provide and manipulate data.

But as more services are added, the overall system becomes more complex to scale out and manage. Orchestrators can help.

What is an orchestrator?

An orchestrator is a tool that helps you manage, scale, and maintain a containerized application.

Using orchestrators for production-ready applications is essential if your application is based on microservices or is split across multiple containers. As noted earlier, in a microservice-based approach, each microservice owns its model and data. The microservice is autonomous from a development and deployment point of view. These kinds of systems are complex to scale out and manage. Therefore, to have a production-ready and scalable multi-container application, you absolutely need an orchestrator.

A cluster is one type of orchestrator. The following diagram illustrates using a cluster to orchestrate the deployment of an application that's composed of multiple microservices.

Diagram that shows Docker applications in a cluster.

## Knowledge check

1.

What is one use case for an orchestrator?

2.

Which language is a Docker Compose file written in?