As introduced previously, in a microservice-based approach, each microservice owns its model and data so it will be autonomous from a development and deployment point of view. These kinds of systems are complex to scale out and manage. Therefore, you absolutely need an orchestrator if you want to have a production-ready and scalable multi-container application.

- The orchestrator helps with composing applications consisting of many microservices into one deployable unit. That unit is then moved — or deployed — to a host.
- Once deployed, the orchestrator helps with managing the host.
- It can automatically start the containers,
- scale them out with multiple instances for each image,
- suspend them,
- or shut them down when needed.
- The orchestrator can also control how containers access resources like the network and data storage.
- Orchestrators can perform tasks such as
- load-balancing and routing in scenarios when multiple containers exist on multiple hosts in a complex distributed system
- They can also monitor the containers' and hosts' health
- Some examples of orchestrators:
- Docker Compose
- Kubernetes
Comments
Post a Comment