Сижу прикидываю как можно сделать кластер из следующего зоопарка.
- Есть пачка серверов с пачкой виртуалок, в основном docker, но вообще может быть тот же lxc или kvm, не суть.
- Сервера могут менять белые адреса и вообще расположены черт знает где, так что скорее всего имеет место разделение адресного пространства на server addr (SA) и app addr (AA).
- Сервисы различны и могут быть довольно тяжелыми, так что не все сервера могут тянуть любой сервис
- Общий накопитель не катит т.к. сервера географически могут быть в разных странах (задержка заведомо больше 2мс), потому скорее всего асинхронная репликация и далеко не на все ноды (накопители тоже разные по размеру)
Ну и традиционно нужно собрать добро из палок и его самого. Сам работал с corosync/heartbeat + pcmk, сейчас сижу читаю про zookeeper, consul и docker swarm. Как я понял первые два выполняют роль директории для связки SA-AA и могут следить за их работой. Но corosync тоже умеет доступность нод, а pcmk - работать с сервисами, так что похоже их можно заюзать только как директорию связок для маршрутизации. Последний вообще что-то довольно мутное - оно вроде умеет поднимать кластер, но «с некоторыми ограничениями» (и пачка звездочек со сносками), так и не въехал.
Кто-нибудь может разъяснить что есть что и чем оно может помочь? А то чую я упускаю что-то крайне важное