Я делаю сборку на своем сервере сборки, который может использовать преимущества многоядерных процессоров, хотя у меня их всего два - так что это займет от 4 до 5 часов. Есть несколько машин, которые мы, разработчики, используем для этих сборок в лаборатории, но большую часть времени они простаивают. Я хотел бы найти способ запустить свою сборку, возможно, используя мощность серверов в лаборатории. Я провел небольшое исследование, и кажется, что одним из вариантов было бы использовать для этого какое-нибудь дорогостоящее программное обеспечение VMware, но для этого потребовалось бы убедить руководство заплатить.
У кого-нибудь есть какая-то общая стратегия для запуска такого процесса на сетевых машинах (кстати, все они RHEL)? Есть ли хорошие места для начала моего исследования? Спасибо.
Вы заглянули в distcc? В зависимости от того, какой тип «строения» вы делаете (вы не указали), это может быть хорошее совпадение.
Любой менеджер распределенных ресурсов (slurm
,SGE
,PBS
и т. д.) может делать такие вещи. Как бы то ни было, они могут потребовать некоторых усилий для правильной настройки, и вам нужно будет научить вашего пользователя отправлять такие задания на сборку.
В distcc
подход подходит только в том случае, если вам не нужно заботиться о состоянии загрузки удаленных машин.
Посмотри на Hudson; По сути, это общий планировщик заданий, который позволяет очень легко распределять задания по нескольким машинам и объединять результаты обратно в центральную точку. Вам придется разделить процесс сборки на части, которые можно будет запустить на нескольких машинах, но, надеюсь, это будет несложно.