Condor, OGE и Torque могут помочь вам, но только Condor имеет встроенное управление зависимостями с помощью инструмента DAGMan . DAGMan позволяет вам настроить направленный, ациклический график, который описывает ваш рабочий процесс, а менеджер позаботится о том, чтобы выполнять задания в вашем рабочем процессе и оценивать результаты « годен / негоден» на каждом этапе процесса. Кондор относительно независим от платформы, что означает, что DAGMan тоже, и вы, безусловно, можете запустить один дочерний шаг в AIX, когда родительский запущен в Linux или Windows. DAGMan не заботится о том, где выполняются задания, просто о том, что коды выхода проходят или не проходят
Любые советы по выбору программного обеспечения или лучше ли пойти с открытым исходным кодом или коммерческим?
С некоторыми оговорками, я думаю, что бесплатные сообщества в этом пространстве стоит посмотреть.
НГЕ сейчас в странном пространстве. Он больше не может запускать вариант GE, созданный Oracle, и Oracle больше не предоставляет код, который он записывает обратно в GE SCC, но существует несколько форков кода, которые существуют в качестве бесплатных проектов с открытым исходным кодом. В частности, Univa взяла на себя ответственность , нанимая бывших разработчиков Sun GE для продолжения работы над свободно доступным вариантом GE. У Grid Engine есть две вещи: проста в настройке, он может обрабатывать краткосрочные (<2 минуты) задания, не тратя много времени на планирование работ, что замедляет пропускную способность. Это большой недостаток в том, что не очень хорошая поддержка Windows. Некоторые из нас приложили некоторые усилия, чтобы перенести его на Cygwin много лет назад, но это точно не так хорошо, как в native.
Теперь Кондор - мой любимый из трех упомянутых вами технологий. Вокруг Кондора существует сильное сообщество, и программное обеспечение очень развито (> 20 лет). Встроенная поддержка ОС Windows и POSIX означает, что она отлично работает везде. Вышеупомянутый DAGMan - это лишь одна из многих замечательных вещей, которые поставляются с Condor. Это может быть сложное в настройке прикосновение, но как только оно будет запущено и запущено, оно станет надежным. Он обладает невероятно гибким языком для выполнения работы <-> машинного соответствия и построения правил использования для ваших ресурсов. Он также поддерживает динамическое выделение ресурсов на компьютерах, позволяя заданиям выбирать, сколько ресурсов компьютеров им нужно, а затем повторно объявлять разницу как доступную. Он поддерживает глобальные счетчики ресурсов, поэтому вы можете ограничиться такими вещами, как лицензии на программное обеспечение. И, конечно же, у него есть DAGMan, который является невероятно мощным инструментом для управления рабочим процессом. Недостатком Condor является то, что планирование непродолжительных работ может быть обременительным. В идеале вы хотите, чтобы задания выполнялись дольше 2 минут, в противном случае планирование начинает занимать большую часть времени работы в системе.
Крутящий момент немного больше ниши. Я знаю об этом меньше, я боюсь. Это больше похоже на Grid Engine, чем на Condor. @Warren упоминает о платных дополнениях, которые могут расширить возможности базового бесплатного Torque.
Если вы хотите опробовать эти три технологии и посмотреть, как они работают с вашими конкретными рабочими нагрузками, CycleCloud может ускорить создание защищенных виртуализированных пулов, которые предварительно сконфигурированы с помощью Condor, GridEngine или Torque, - поэтому не нужно тратить время на выяснение этих вещей. с вашей стороны. Было бы несколько долларов, чтобы раскрутить небольшие пулы каждой технологии и попробовать их с репрезентативной рабочей нагрузкой. (Отказ от ответственности: я работаю на Cycle Computing, мы делаем CycleCloud)