Распределенные и параллельные вычисления/Развертывание и обслуживание кластерных систем

Для использования любой кластерной системы необходимо решить следующие проблемы:

  1. установка и обновление программного обеспечения
  2. мониторинг состояния вычислительных узлов и вычислительных процессов
  3. предоставления пользователю удобного интерфейса для запуска задач и проверки их состояния
  4. динамическое распределение нагрузки на вычислительных узлах кластера[1]

Установка и обновление программного обеспечения править

Большинство кластерных систем работают под управлением операционных систем из семейства Linux. И хотя удаленный доступ, установка и обновление в данных ОС программно реализованы, эти задачи остаются трудоемкими. Частично эту проблему решают специализированные программные продукты, такие как:

  • IBM CSM (Cluster System Management)[1]
  • xCAT (Extreme Cloud Administration Tool)[1]

Мониторинг править

Для мониторинга состояния вычислительных узлов наиболее часто применяют связку из систем Ganglia и Nagios.[1] Основным недостатком этих систем является отсутствие механизмов наблюдения за параллельными процессами. А ведь для динамического распределения нагрузки очень важно не просто знать насколько загружен процессор на каждом из вычислительных узлов, но и иметь возможность определить долю полезной загрузки параллельными процессами, особенно если этих процессов несколько.

Динамическое распределение нагрузки править

Рассмотрим частный случай когда при решении некоторой параметрической задачи для разных значений параметров время поиска решения может значительно различаться.[2] Тогда мы получим значительный перекос загрузки узлов кластера. В действительности практически любая вычислительная задача выполняется в кластере не равномерно. Использование кластерных систем всегда более эффективно для обслуживания вычислительных потребностей большого количества пользователей, чем использование эквивалентного количества однопроцессорных рабочих станций, так как в этом случае с помощью системы управления заданиями легче обеспечить равномерную и более эффективную загрузку вычислительных ресурсов.[2]

Для динамического распределения нагрузки чаще всего используют менеджер ресурсов Torque в связке с локальным планировщиком задач Maui.[1]

Примечания править

  1. а б в г д Материалы Девятой международной конференции-семинара ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ НА КЛАСТЕРНЫХ СИСТЕМАХ / С.М. Аракелян (ответственный редактор). — Владимир: Издательство Владимирского государственного университета, 2009. — 437 с. — 150 экз. экз. — ISBN 978-5-89368-958-7
  2. а б А. А. Букатов, В. Н. Дацюк, А. И. Жегуло Программирование многопроцессорных вычислительных систем. — Ростов-на-Дону: ООО «ЦВВР», 2003. — 208 с. — ISBN 5-94153-062-5