шего научного поиска является разработка цию временных характеристик на основе
строгого метода СВИС в многокомплексных предложенного подхода.
МВС и сетях ЦВМ, включающего оптимиза-
Литература
1. Пархоменко П. П., Согомонян Е. С. Основы технической диагностики (Оптимизация алгоритмов диагностирвоания, аппаратурные средства) / Под ред. П. П. Пархоменко. - М.: Энергия, 1981. 320 с.
2. Pease M., Shostak R., Lamport L. Reaching agreement in the presence of faults // Journal of the Association for Computing Machinery, 1980. Vol. 27. No. 2. P. 228-237.
3. Ашарина И. В., Лобанов А. В. Проблема взаимного информационного согласования в отказоустойчивых многокомплексных вычислительных системах // Технические и программные средства систем управления, контроля и измерения (УКИ'08): Материалы российской конференции с международным участием (Москва, 10-12 ноября 2008). - М.: ИПУ РАН, 2008. С. 272-273.
4. Ашарина И. В., Лобанов А. В., Мищенко И. Г. Взаимное информационное согласование в неполносвязных многомашинных вычислительных системах // Автоматика и телемеханика, 2003. № 5. С. 190199.
5. Лобанов А. В. Алгебраический подход к задаче выделения комплексов при организации сбое- и отказоустойчивых параллельных вычислений в сетях ЦВМ // Открытое образование, 2011. № 2 (85). Ч. 2. С. 36-39.
6. Ашарина И. В. Алгебраический метод определения достаточной среды межкомплексной посылки при организации сбое- и отказоустойчивых параллельных вычислений в сетях ЦВМ // Открытое образование, 2011. № 2 (85). Ч. 2. С. 29-32.
7. Топорков В. В. Модели распределенных вычислений. - М.: ФИЗМАТЛИТ, 2004. 320 с.
8. Генинсон Б. А., Панкова Л. А., Трахтенгерц Э. А. Отказоустойчивые методы обеспечения взаимной информационной согласованности в распределенных вычислительных системах // Автоматика и телемеханика, 1989. № 5. С. 3-18.
УДК 681.5.03
ИСПОЛЬЗОВАНИЕ КЛАСТЕРНЫХ ТЕХНОЛОГИЙ ДЛЯ ПОВЫШЕНИЯ НАДЕЖНОСТИ АВТОМАТИЗИРОВАННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ
А. Б. Марков, начальник отделения Тел.: (8495) 651-08-86, доб. 300, e-mail: [email protected] ЗАО «НТЦ ЭЛИНС» http://elins-ic.ru
Cluster approach for computer information system construction is described and high availability cluster with cold reserve realization is shown. The cluster provides capacity for the operation of the whole computer information system, under DBMS refusal beginning. The cluster control program of data base servers for operation system МСВС 3.0 (russian) is developed and certificated.
Описан кластерный подход к построению автоматизированных информационных систем (АИС), а также реализация кластера высокой доступности с холодным резервом, обеспечивающего работоспособность АИС при возникновении отказов в управлении базами данных (БД). Программа управления кластерной конфигурацией серверов БД разработана для операционной системы МСВС 3.0 и сертифицирована.
Ключевые слова: кластерные технологии, отказоустойчивый кластер, кластер высокой доступности, МСВС, СУБД, повышение надежности автоматизированной информационной системы.
Keywords: cluster technology, high availability cluster, DBMS, ^mputer information system reliability improvement.
Данная работа кратко описывает эволюцию кластерных технологий применительно
к вычислительным процессам с последующим переходом к их использованию в высоконадежной распределенной АИС управления наличием и движением материальных средств и описанием кластера высокой доступности.
Кластерный подход к построению АИС
До середины 1990-х годов основное направление развития суперкомпьютерных технологий было связано с построением специализированных многопроцессорных систем. Один из сформировавшихся подходов -SMP (Symmetric Multi Processing) - подразумевал объединение многих процессоров с использованием общей памяти, что сильно облегчало программирование, но предъявляло высокие требования к самой памяти. Сохранить быстродействие таких систем при увеличении числа узлов до десятков было практически невозможно. Кроме того, этот подход оказался самым дорогим в аппаратной реализации. На порядок более дешевым и практически бесконечно масштабируемым оказался способ МРР (Massively Parallel Processing), при котором независимые специализированные вычислительные модули объединялись специализированными каналами связи, причем и те, и другие создавались под конкретный суперкомпьютер и ни в каких других целях не применялись.
Идея создания так называемого кластера рабочих станций фактически явилась развитием метода МРР, ведь логически МРР-система подобна обычной локальной сети. Кластер - группа компьютеров, объединенных высокоскоростными каналами связи и представляющих с точки зрения пользователя единый аппаратный ресурс [1]. Локальная сеть стандартных персональных компьютеров (ПК), при соответствующем программном обеспечении (ПО) использовавшаяся как многопроцессорный суперкомпьютер, и стала прародительницей современной кластерной системы (КС). Эта идея получила более совершенное воплощение в середине 1990-х годов, когда благодаря повсеместному оснащению ПК высокоскоростной шиной передачи данных PCI (по сравнению с шиной
ISA) и появлению дешевой, но быстрой сети Fast Ethernet, КС стали догонять специализированные МРР-системы по коммуникационным возможностям. Это означало, что полноценную МРР-систему стало возможно создать из серийных компьютеров при помощи серийных коммуникационных технологий, причем такая система обходилась дешевле в среднем на два порядка.
КС всегда состоит из узлов, являющихся полноценными компьютерами, которые соединены линиями связи для выполнения обмена данными. При этом компьютеры не обязательно должны быть однотипными, система может быть и гетерогенной, объединяя в себе компьютеры различной архитектуры - от ПК до сверхпроизводительных суперкомпьютеров.
КС может быть как территориально сосредоточена, так и распределена.
При построении КС выделяют два подхода:
1) в систему собираются все доступные компьютеры, которые также могут функционировать и отдельно;
2) в систему целенаправленно соединяются промышленно выпускаемые компьютеры.
При этом создается мощный вычислительный ресурс. Этот подход позволяет удешевить саму КС, т. к. не требуется снабжать каждый отдельный узел монитором, клавиатурой и другими периферийными устройствами.
При использовании второго подхода узлы КС располагаются в специальных стойках, а для управления КС и мониторинга ее состояния выделяются один или несколько полнофункциональных компьютеров, называемых хост-компьютерами [2].
Различают пиковую и реальную производительность суперкомпьютеров. Пиковая производительность многопроцессорной системы (КС, SMP-системы и т. д.) - теоретическое значение, недостижимое на практике. Оно получается умножением пиковой производительности процессора на число процессоров в системе. Пиковая производительность центрального процессора в общем случае получается путем умножения его тактовой частоты на максимальное число операций, выполняемых за один такт. Реальная производительность КС - это производительность, полученная при решении реальной задачи (академической или промышленной). КС позволяют добиться приемлемой производительности при относительно небольших затратах на технические средства
по сравнению с суперкомпьютерами.
Современная классификация включает следующие основные виды кластеров:
- отказоустойчивые кластеры (High-
availability clusters, HA, кластеры высокой доступности);
- кластеры с балансировкой нагрузки (Load balancing clusters);
- вычислительные кластеры (Computing clusters);
- grid-системы.
Надежность систем обработки данных, их способность ежесекундно обеспечивать пользователей оперативной и достоверной информацией - одно из важнейших условий эффективной работы. Существует множество технических решений, обеспечивающих
управление состоянием распределенных технических систем (например, [3]), а также необходимый уровень их надежности и отказоустойчивости, и одно из таких возможных решений - кластеризация серверных систем, за счет которой поддерживается высокий уровень готовности (high availability). Отказоустойчивые КС строят для того, чтобы наилучшим образом обеспечить надежность работы критически важных узлов и приложений. Работа приложения дублируется на разных узлах, в случае ошибки на одном из них, приложение продолжает работать или автоматически перезапускается на другом.
Отказоустойчивые кластеры и системы строятся по трем основным принципам [1]:
1) с холодным резервом, или активный/пассивный. Активный узел выполняет запросы, а пассивный ждет его отказа и включается в работу, когда таковой произойдет;
2) с горячим резервом, или активный/активный. Все узлы выполняют запросы, в случае отказа одного нагрузка перераспределяется между оставшимися;
3) с модульной избыточностью. Применяется только в случае, когда простой системы совершенно недопустим. Все узлы одновременно выполняют один и тот же запрос (либо части его, но так, что результат достижим и при отказе любого узла), из результатов берется любой. Необходимо гарантировать, что результаты разных узлов всегда будут одинаковы (либо различия гарантированно не повлияют на дальнейшую работу). Примеры - RAID и Triple modular redundancy.
Подводя итог, перечислим преимущества и недостатки КС.
Преимущества КС:
- наличие общедоступного ПО;
- возможность использования существующей сетевой инфраструктуры;
- не требуется приобретать специализированное оборудование;
- возможность создания гетерогенных вычислительных систем;
- возможность создания систем с произвольным количеством узлов (от двух до нужного количества);
- возможность использования кластера несколькими пользователями одновременно, причем каждый пользователь резервирует лишь необходимые для его вычислений ресурсы.
Недостаток КС - скорость обмена между узлами зависит от используемого сетевого оборудования. Следовательно, необходимо использовать наиболее современное и дорогостоящее оборудование. Следует отметить, что этот недостаток справедлив только для тех задач, для которых основным фактором быстродействия является производительность интерконнекта [2].
Реализация кластера в автоматизированной системе (АС) «Снабжение»
АС «Снабжение» ТЕЦА.466453.001 (изделие 1В 839) является по своему назначению информационной системой учета наличия и движения материальных средств заданной номенклатуры (ракетно-артиллерийского
вооружения) в автоматизированной системе технического обеспечения Вооруженных Сил РФ.
При создании АС «Снабжение», в целях повышения эффективности ее применения, использовались некоторые нестандартные технические и программные решения, повышающие качественные показатели. Так, для повышения надежности была применена кластерная конфигурация серверов БД, приведенная на рис. 1.
В качестве носителей информации для хранения сведений БД используются внешние дисковые массивы с встроенным дублированным ЛАТО-контроллером. Необходимую производительность обеспечивает двухпроцессорная конфигурация системных плат серверов БД (в узлах 1 и 2), а также дублирование каналов связи с пропускной способностью 1 Гбит/с (линии Ethernet 1000 Мб, связывающие коммутатор Ethernet с узлами 1 и
2). Серверы БД соединены друг с другом линией связи КБ-232 и такими же линиями связи с источниками бесперебойного питания (ИБП). По этим линиям связи передаются команды отключения ИБП в случаях обнаружения отказов. Коммутатор Ethernet соединен с автоматизированными рабочими местами пользователей и администратора линиями связи Ethernet 100 Мб.
Для управления и мониторинга работы кластерной конфигурации разработана специальная программа «Кластер-Н» ТЕ-ЦА.00058-01, которая обеспечивает взаимо-
действие узлов, их мониторинг и контроль, регистрирует события, определяет отказы и восстанавливает работоспособность переключением ресурсов кластерной конфигурации. Контролируется (проверяется) состояние: работы сервисов СУБД (узлов 1, 2), интерфейса ЯБ-232 между серверами, интерфейсов Ethernet. Проверки интерфейсов происходят с интервалом в 3 с.
В случае штатной работы кластерной конфигурации включены оба сервера, при этом сервис СУБД включен на одном сервере и отключен на другом. Сервер, на котором данный сервис включен, считается активным, другой сервер является резервным. В случае обнаружения неисправности в компонентах активного сервера, он передает
матического восстановления сервиса СУБД после отказа зависит от объема данных в БД и не превышает пяти минут.
Программа «Кластер-Н» состоит из модулей «Сервер» и «Клиент». Модуль «Сервер» служит для контроля компонентов АС «Снабжение» и документирования, выявления отказов и восстановления работоспособности кластерной конфигурации серверов. Устанавливается на оба сервера. Модуль «Клиент» служит для отображения на экране состояния контролируемых компонентов и устанавливается на АРМ администратора.
Модуль мониторинга, показанный на рис. 2, отображает текущее состояние компонентов кластера с использованием цвета полей.
Рис. 1. Схема кластерной конфигурации
Зеленый цвет полей на мониторе соответствует активному состоянию контролируемого компонента, красный - неактивному. Для индикации неизвестного состояния компонента предусмотрен серый цвет.
Объем модуля «Сервер» не превышает 985 Кб, модуля «Клиент» - 840 Кб.
Для работы модуля «Сервер» требуется ПК типа 1ВМ РС с процессором Xeon, объемом оперативной памяти не менее 512 МБ, объемом свободного дискового пространства не менее 1 ГБ. Для обеспечения обмена данными ПЭВМ должна содержать две сетевые платы стандарта 1000Ba5e-SX, а также два СОМ-порта. Для хранения данных СУБД требуется внешний дисковый массив. Необходимо установить и настроить операционную систему ОС МСВС 3.0 ФЛИР.80001-01, систему управления реляционными базами данных СУБД «Линтер-ВС» 6.0
ФЛИР.80002-04, модуль «Сервер» программы «Кластер-Н» ТЕЦА.00058-01.
Для работы модуля «Клиент» требуется ПК типа 1ВМ РС с процессором семейства
^ п л гтсо
Рис. 2. Мониторинг состояния узлов кластера серверов БД АС «Снабжение»
Pentium III и выше, тактовой частотой процессора не ниже 1000 МГц, объемом оперативной памяти не менее 256 МБ, объемом свободного дискового пространства не менее 10 ГБ, объемом видеопамяти не менее 16 МБ и глубиной цвета не менее 16 бит, монитором размером не менее 17 дюймов и разрешением не менее 1024^768. Необходимо установить и настроить операционную систему ОС МСВС 3.0, библиотеку Qt из состава программного средства ПС «Конструктор» ФЛИР.00315-01, систему библиотек разработки приложений ФЛИР.80022-01, специальную библиотеку «Снабжение» 1.0 ТЕ-ЦА.00042-01, модуль «Клиент» программы «Кластер-Н» ТЕЦА.00058-01.
Программное обеспечение ТЕЦА.00058-01 (и ТЕЦА.00042-01) сертифицировано по 2-му уровню контроля отсутствия недекла-рированных возможностей.
Автор считает, что в данной работе новыми являются следующие результаты:
использование кластера высокой доступности в управлении базами данных с целью повы-
шения надежности АИС;
структура, состав и программа управления кластером;
реализация кластера высокой доступности в АС «Снабжение» применительно к ОС МСВС и СУБД «Линтер-ВС».
Опытная эксплуатация АС «Снабжение» показала, что предъявленные требования к надежности и другим показателям качества полностью реализованы при оптимальной стоимости ее создания и эксплуатации.
Литература
1. Кластер (группа компьютеров). http://ru.wikipedia.org.
2. Бервено В. С., Резник В. Н., Смагин А. Н. Кластерные технологии: прошлое, настоящее и будущее. - Донецк: ДонНТУ, 2002. http://masters.donntu.edu.ua/publ2002/fvti/berveno.pdf.
3. Зимнович Р. В., Лисов О. И., Марков А. Б. Управление состоянием распределенных технических систем // Оборонный комплекс - научно-техническому прогрессу России, 2006. № 2. С. 66-70.
УДК 681.3.06
ЭКОНОМИЧЕСКАЯ МОДЕЛЬ ПЛАНИРОВАНИЯ И СПРАВЕДЛИВОГО РАЗДЕЛЕНИЯ РЕСУРСОВ В РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЯХ
В. В. Топорков, д. т. н., проф., зав. кафедрой Тел.: (495) 362-71-45, e-mail: [email protected] Д. М. Емельянов, аспирант Тел.: (495) 362-71-45, e-mail:[email protected] Национальный исследовательский университет «МЭИ» http://www.mpei.ru
This paper discloses a model for a job flow scheduling and fair resources sharing in distributed computing that takes into account virtual organization user’s requirements for efficiency and quality of the job execution. The proposed algorithms allow finding effective execution alternatives for each job of the batch by the given criterion. The scheduling scheme for selecting effective combination of the alternatives fulfils virtual organization policies for fair resource sharing.
Предлагается модель планирования потока заданий и справедливого разделения ресурсов в распределенных вычислительных средах, позволяющая учитывать требования пользователей виртуальной организации к эффективности и качеству выполнения своих заданий. В рассматриваемой модели задания группируются в пакеты и направляются в различные домены узлов. Предлагаемые алгоритмы позволяют находить эффективные по заданному критерию альтернативы выполнения для каждого задания, а схема выбора лучшей комбинации альтернатив действует в рамках политик, определенных в виртуальной организации для справедливого разделения ресурсов.
Ключевые слова: планирование, выделение ресурсов, экономические модели, виртуальная организация, слот, ресурсный запрос.
Keywords: scheduling, resource co-allocation, economic models, virtual organization, slot, resource request.
Работа выполнена при частичном содействии Совета по грантам Президента РФ для поддержки ведущих научных школ (грант НШ-316.2012.9), РФФИ (проект № 12-0700042), Министерства образования и науки РФ (ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2013 годы, государственные контракты № 16.740.11.0038 и № 16.740.11.0516).