Кластерные системы
Сегодня наиболее актуальным способом создания мощных многопроцессорных комплексов является кластеризация массово выпускаемых компьютеров, в том числе ПК, с помощью серийного телекоммуникационного оборудования локальных сетей (или более высокопроизводительных соединений типа Myrinet).
Кластер – слабо интегрированная архитектура, как на уровне аппаратуры, так и на уровне операционной системы (ОС). В частности, из-за отсутствия общей памяти на каждый процессорный узел должна быть установлена своя копия ОС, поэтому для работы с кластерными комплексами нужно решить проблемы обслуживания и управления, которые при числе процессоров 64-128, становятся критическими. Перечисленные программные средства позволяют справиться с проблемой “большой системы”, нивелируя разницу между кластером и системами с общей памятью (SMP):
- Средства для установки программного обеспечения (ПО) на кластер.
- Средства регулярного администрирования кластеров.
- Кластерные Системы Управления Пакетной Обработкой (СПО).
- Интегрированные программные средства для кластеров.
Средства для установки программного обеспечения (ПО) на кластер
Решаемые задачи:
- создание репозитария (набора ПО для кластера), обновление его версий;
- распределение ПО по узлам кластера;
- автоматическая установка ПО на кластерных узлах и их конфигурирование.
- SystemImager – свободно распространяемый инструмент для автоматизации установки ОС Linux на машины кластера. Позволяет распределять между машинами ПО и файлы данных, менять конфигурацию и обновлять ОС.
- Мониторинг аппаратуры (температура процессора, работа вентилятора, состояние блока питания, и т.п.)
- SNMP-агенты от производителей:
www.cert.org/advisories/CA-2002-03.html#solution
www.kb.cert.org/vuls/id/IAFY-569J8F
www2.lm-sensors.nu/~lm78/
www.lmsensors.com
www.wlug.org.nz/MotherboardMonitoring
- Big Brother - инструмент для мониторинга в реальном времени на базе Web технологий.
bb4.com - Mon - система для мониторинга программных служб и генерации сигнала тревоги при их неработоспособности.
Mon легко расширяется и дополняется любыми средствами мониторинга через общий интерфейс.
www.kernel.org/software/mon/
- Ganglia - свободно распространяемая система, предназначенная для мониторинга вычислительных комплексов, распределенных как в локальной, так и в глобальной сетях. Использует оригинальный сетевой протокол и компактный способ хранения данных мониторинга, что делает ее эффективной, масштабируемой и надежной.
ganglia.sourceforge.net/
people.ee.ethz.ch/~oetiker/webtools/mrtg/links.html
- C3 (Cluster Command Control) – свободно распространяемый продукт, представляющий собой набор инструментов для администрирования и поддержки приложений в кластерах с ОС Linux (разработка Oak Ridge National Laboratory). В его состав входят средства для параллельного запуска команд на все или группу кластерных узлов, сбор и распределение файлов, завершение процессов, удаленное отключение или перезапуск машин.
www.csm.ornl.gov/torc/C3/
Кластерные Системы Управления Пакетной Обработкой (СПО)
Первый шаг к использованию вычислительных ресурсов узлов в глобальной среде грид – это их локальная интеграция в многопроцессорный комплекс, который используется в режиме пакетной обработки заданий. Для этой цели разработаны программные продукты, называемые Менеджерами Ресурсов (Resource Manager), кластерными системами управления (Cluster Management System) или Системами управления пакетной обработкой (СПО).
СПО возникли независимо от грид и широко применяются во многих вычислительных центрах коллективной обработки. Известны более двадцати СПО, из которых наиболее популярны свободно распространяемые PBS, SGE и Condor, а также коммерческие LoadLeveler и LSF.
Использование СПО в кластере позволяет перейти от работы с индивидуальными компьютерами, распределенными в локальной сети, к работе с единым многопроцессорным вычислительным комплексом в режиме пакетной обработки заданий. Пользователь может помещать задания в общую для комплекса очередь, используя единый интерфейс для запуска, модификации, снятия и получения информация о заданиях. СПО автоматически распределяет задания по узлам с учетом их загрузки, выполняет и доставляет результаты пользователю. Все СПО имеют богатый настраиваемый набор средств для управления процессом обработки заданий.
Все СПО имеют примерно одинаковые наборы функций, но отличаются по отдельным характеристикам. Системы PBS и SGE примерно равны по своим возможностям и предполагают полное выделение машин под пакетную обработку. Ими поддерживаются сетевые кластеры с однопроцессорными машинами, а также мультипроцессоры SMP и MPP. Отдельные процессоры могут использоваться в монопольном режиме (только одна задача на процессор) или в режиме разделения времени (несколько заданий могут разделять процессор). В последнем варианте при распределении заданий контролируется уровень процессорной загрузки. PBS и SGE имеют аппарат запуска многопроцессорных заданий. В отличие от PBS в последних версиях системы SGE реализован механизм поддержки контрольных точек.
Обобщенная информация о СПО содержится на сайте:
www.clusterresources.com
- PBS - Portable Batch System. обеспечивает управление заданиями в пакетном режиме в среде компьютеров с ОС Unix. Сегодня предлагается
OpenPBS – свободно распространяемая версия и
PBSPro – расширенная коммерческая версия.
Torque (Terascale Open-source Resource and QUEue Manager) – новая версия PBS, разработанная компанией Cluster Resources, Inc. на основе OpenPBS. Система обладает рядом дополнительных усовершенствований:- улучшена масштабируемость (работа в среде до 2500 узлов);
- повышена устойчивость к сбоям (внесены дополнительные проверки);
- усовершенствован интерфейс Планировщика с целью его обеспечения дополнительной и более точной информацией;
- усовершенствована система записей в log файлах.
- Sun Grid Engine (SGE). Семейство из нескольких различных вариантов СПО.
Sun Grid Engine - свободно распространяемая версия, предназначенная для управления ресурсами одного проекта или подразделения. Основана на полной централизации обслуживания ресурсов и пользователей. Sun Grid Engine реализуется открытым сообществом разработчиков и спонсируется Sun Microsystems.
Sun Grid Engine, Enterprise Edition (SGEEE) - коммерческая версия, предназначенная для управления ресурсами предприятий (campus grid) и способная обслуживать несколько независимых проектов и групп пользователей. SGEEE включает модуль для определения политики разделения ресурсов между независимо работающими пользователями. Для каждого пользователя определяется квота от общего количества ресурсов, в соответствии с которой происходит их распределение между запущенными заданиями.
- Condor. Свободно распространяемый продукт, позволяющий использовать в кластере машин с “хозяином”, который отдает свою машину на время, пока она простаивает. В связи с этим Condor имеет нескольких важных механизмов поддержки контрольных точек, рестарта и миграции заданий. В Condor развит весьма мощный язык описания ресурсов, позволяющий формально описать как требования к типам и объемам ресурсов со стороны задания, так и ограничения на доступ к ресурсам со стороны владельцев.
- LoadLeveler - коммерческий программный продукт компании IBM, предназначенный для пакетной обработки последовательных и параллельных (многопроцессорных) заданий на кластерах из вычислительных серверов. Система обеспечивает средства для подготовки, запуска и слежения за заданиями в режиме пакетной обработки в гетерогенной сети компьютеров.
Информация о системе:
publib.boulder.ibm.com/clresctr/windows/public/llbooks.html
www.redbooks.ibm.com/pubs/pdfs/redbooks/sg245522.pdf
Текущая версия LoadLeveler Version 3.1 дополнена рядом новых характеристик, таких как новые планировщики; механизм поддержки контрольных точек; интеграция с AIX WorkLoad Manager; включает примеры сценариев.
- LSF (Load Sharing Facility) - коммерческая кластерная система компании Platform Computing Corporation для управления пакетной обработкой. Представляет собой полномасштабную систему, обеспечивающую все существенные требования к СПО: поддержку очередей заданий, сбор информации о наличии и занятости ресурсов в кластере, нахождение компьютеров с подходящими ресурсами для выполнения заданий, поддержку режима контрольных точек (checkpointing), миграцию заданий и др.
- MAUI - внешний планировщик, который может использоваться взамен штатных планировщиков для нескольких СПО: PBS, SGE, Loadleveler, LSF, Wiki. MAUI - открытый продукт, который отличается большим набором режимов (политик) планирования и наличием механизма предварительного резервирования. MAUI представляет большой интерес в связи с тем, что это единственная из свободно распространяемых СПО, способная обеспечивать автоматический запуск многопроцессорных заданий, избегая при этом неоправданного простоя ресурсов. Реализация основана на мощном алгоритме планирования Backfill.
Интегрированные программные средства для кластеров
- Scyld Beowulf – специальная операционная система для кластеров, реализующая модель Single System Image (SSI) – общей
ОС для всего кластера. Scyld – свободно распространяется и имеет хорошую программу установки. Реализация Scyld, хотя и основана на ОС Linux, существенно его модифицирует. Модификации затрагивают ядро Linux, библиотеку GNU C, что ограничивает степень гетерогенности кластеров и затрудняет переход на новые версии базовой ОС.
- OSCAR (Open Source Cluster Application Resource) - свободно распространяемый пакет инструментов для кластерных систем с ОС Linux.
oscar.sourceforge.net/
www.openclustergroup.org/software.html
oscar.openclustergroup.org/tiki-index.php
OSCAR включает в свой состав пакеты:- SIS (System Installation Suite) – инструмент для автоматизации установки и конфигурирования ОС Linux на узлы сетевых кластеров (
- C3 (Cluster Command Control) – средства для удаленного запуска команд на все или группу кластерных узлов
- HDF5 (Hierarchical Data Format) – продукт, включающий спецификацию форматов данных и поддержку библиотек (hdf.ncsa.uiuc.edu/HDF5)
- LAM (Local Area Multicomputer) / MPI – инструментальная среда для разработки и испольнения параллельных программ в гетерогенных кластерах (www.lam-mpi.org/)
- OPIUM (OSCAR Password Installer and User Management) – средства для синхронизации учетных записей пользователей и конфигурирования ssh
- PBS (Portable Batch System) – система управления пакетной обработкой кластера
- Pfilter – пакет для настройки параметров, влияющих на коммуникации между кластерными машинами и внешней сетью
- PVM (Parallel Virtual Machine) – программный пакет для поддержки параллельных вычислений в гетерогенных кластерах (www.csm.ornl.gov/pvm/)
- Switcher – пакет, позволяющий при запуске заданий устанавливать переменные среды исполнения. (modules.sourceforge.net/)
- ROCKS – свободно распространяемый пакет программ аналогичный OSCAR. Основная задача
ROCKS – максимально упростить управление большими кластерными системами в среде Red Hat Linux. Эта задача решается путем:
- полной автоматизации процесса установки и конфигурирования гетерогенных узлов кластера;
- использования только пакетов RPM;
- использования масштабируемых сервисов (HTTP, DNS, NIS-подобных, и т.д.);
- механизма мониторинга производительности с использованием системы
- Сlubmask (Cluster Booting, Management, and Scheduling) - свободно распространяемый, предназначенный для управления кластерами Beowulf. Clubmask
предоставляет пользователям набор инструментов для решения таких задач, как установка кластера, кластерное управление, возможность
доступа из программ пользователей (через API) к мониторингу ресурсов и событийным переключениям в кластере (event trigger system),
интеграция с планировщиком MAUI.
- Platform Clusterware – коммерческая система для интегрированного кластерного управления, построенная в рамках общей
для всех включеннных в нее инструментов архитектуры. Она объединяет систему управления пакетной обработкой Platform LSF со
средствами мониторинга и администрирования в среде Unix. Clusterware
использует Web–интерфейс, позволяющий следить за состоянием кластера и его производительностью и упрощающий решение задач по расширению
комплекта новыми инструментами. Последние версии системы - Platform MultiCluster и Platform Globus имеют возможности по
управлению ресурсами в глобальной сетевой среде.








