Я работаю над системой, в которой около 50 процессов распределены примерно на 4 разных машинах. Архитектура позволяет любому процессу работать на любом компьютере, но позволяет запускать каждый процесс только на одном компьютере. Если один и тот же процесс выполняется дважды на одной и той же машине или дважды на разных машинах, возникают большие проблемы.
Есть ли готовое программное обеспечение, которое будет отслеживать процессы на машинах и перезапускать их, если они умирают? А если машина умрет, то перезапустить процессы на одной из доступных машин? И гарантировать, что один и тот же процесс никогда не будет выполняться более одного раза во всей системе?
Рекомендации по продукту не по теме, но вы ищете термин менеджер кластера и кластеризация высокой доступности.