I'm looking to deploy multi-tier apps on a small cluster, where each node / cluster of nodes are separated geographically for fail-safe requirements. There are quite a few tools built on docker, what is a good tool that provides:
- auto recovery of instances
- monitoring tools (able to launch scripts to check instance status)
- internal network to link app instances together across different host networks (like weave)
- network isolation between different apps
- dns and load-balancing between app instances
- synchronized persistent storage between distributed instances
I've seen docker-swarm, docker DAB, kubernetes, but not an expert in them yet.
Look forward to your inputs :)