У меня есть несколько Java-серверов (хотя Java на самом деле здесь не имеет значения, это может быть любой исполняемый файл), которые я хочу запустить на нескольких машинах. Есть ли какое-нибудь программное обеспечение для управления кластером, которое позволило бы мне сказать, например, «запустить 3 экземпляра службы A и 5 экземпляров службы B». В случае выхода из строя одного узла запустите службы на другом сервере.
Также было бы неплохо иметь какую-нибудь консоль администратора, где я мог бы видеть, какие серверы работают, какие сервисы работают и т. д. (Конечно, с красивой панелью инструментов с большим количеством зеленого ;) ). Или, по крайней мере, интерфейс REST, чтобы легко получить эту информацию.
Если пойти еще дальше, такой менеджер кластера может позаботиться о сборе журналов из служб и предупреждении администраторов в случае возникновения ошибок в какой-либо из них. А может это отдельная услуга?
Существует ли такая вещь? (желательно, конечно, в версии с открытым исходным кодом)