Cluster Orchestrator
Problem
Deploying a highly scalable and available set of Microservices on commodity hardware introduces the requirement having an efficient management system. Managing communication between services, monitoring health, maintaining a service catalog, managing application lifecycle, load balancing, scaling instances, data replication, handling failover, managing rolling updates, and so on are few challenges associated with operating enterprise scale Microservices.
It is nearly impossible to efficiently perform these tasks manually. The following diagram illustrates how complex manually managing such a system can become:
Cluster orchestrator (Problem)