The following considerations should be taken into account while implementing this pattern:
- High availability: It is critical to ensure high availability of the cluster orchestrator as it can act like a single point of failure for your Microservices deployment. A three to five instance cluster is usually recommended for the orchestration software to handle availability.
- Heterogeneity: The ability of the orchestration tool to handle virtual machines of different configurations and operating environments is the key to support heterogeneity.
- Resource allocation: The orchestration tool should have an efficient resource allocation algorithm to manage high density deployments while optimizing the resource utilization.
- Security: The orchestration tool should be responsible to ensure isolation of services when performing high density deployments.
- Configurable: Thresholds for rollbacks, update domains, failover, and so on should be configurable to suit specific requirements of the ecosystem.