автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Разработка системного программного обеспечения для развертывания предметно-ориентированных WEB-лабораторий
Автореферат диссертации по теме "Разработка системного программного обеспечения для развертывания предметно-ориентированных WEB-лабораторий"
На правах рукописи
Самоваров Олег Ильгисович
РАЗРАБОТКА СИСТЕМНОГО ПРОГАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ РАЗВЕРТЫВАНИЯ ПРЕДМЕТНО-ОРИЕНТИРОВАННЫХ \УЕВ-ЛАБОРАТОРИЙ
Специальность 05.13.11 -Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата технических наук
г~т /015
Москва — 2015
005561661
005561661
Работа выполнена в федеральном государственном бюджетном учреждении науки
Институт системного программирования Российской академии наук (ИСП РАН).
Научный руководитель: Аветисян Арутюн Ишханович, доктор физико-
математических наук, доцент
Официальные оппоненты: Гергель Виктор Павлович, доктор технических
наук, профессор, декан факультета вычислительной математики и кибернетики Нижегородского государственного университета имени Н. И. Лобачевского, директор Научно-исследовательского института прикладной математики и кибернетики, руководитель Приволжского научно-образовательного Центра суперкомпьютерных технологий
Шабанов Борис Михайлович, кандидат технических наук, директор Межведомственного суперкомпьютерного центра Российской академии наук - филиала Федерального государственного учреждения «Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук»
Ведущая организация: Федеральное государственное бюджетное
учреждение науки Институт прикладной математики им. М.В. Келдыша Российской академии наук.
Защита диссертации состоится 17 сентября 2015 года в 15 часов на заседани диссертационного совета Д 002.087.01 при Федеральном государственно бюджетном учреждении науки Институт системного программирования Российско" академии наук по адресу: 109004, г. Москва, ул. А. Солженицына, дом 25 конференц-зал (комната 110).
С диссертацией можно ознакомиться в библиотеке Федерального государственног бюджетного учреждения науки Институт системного программирования Российско" академии наук.
Автореферат разослан 14 августа 2015 г.
Ученый секретарь диссертационного совета, кандидат физико-математических наук $ /Зеленое C.B./
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность работы. В настоящее время в естественных науках и их приложениях к технике при проведении исследований или решении практических инженерных задач широко используются компьютерные модели, что позволяет не только значительно снизить общую стоимость работ, но и существенно повысить их эффективность. При таком подходе большая часть натурных экспериментов заменяется численными. Однако постановка численного эксперимента связана со многими техническими и организационными трудностями, так как численный эксперимент, как правило, не сводится к выполнению одной или нескольких программ соответствующего прикладного пакета, а состоит из нескольких фаз (например, фаза предобработки, фазы расчета, фаза постобработки, фазы визуализации результатов), выполнение которых связано с использованием различного аппаратного оборудования и программного обеспечения (ПО).
Одной из основных причин этого является то, что численные эксперименты все чаще выполняются в рамках комплексных научных исследований, выполнение которых осуществляется "междисциплинарными" коллективами, в которые входят специалисты в различных областях, что связано с требованием учета как можно большего числа параметров исследуемого явления.
В ходе выполнения таких исследований могут быть получены новые фундаментальные научные результаты, разработаны новые методы проектирования, новые технологии. Возникает сотрудничество исследователей с коллективами проектировщиков, технологов, работающих в промышленности. Не вызывает сомнения, что новые результаты должны внедряться не только в промышленность, но и в образование в самых различных формах: от университетского образования в виде общих и специальных курсов лекций, сопровождаемых практическими занятиями и лабораторными работами, выполнения курсовых и дипломных работ различных уровней, до различных форм повышения квалификации специалистов, работающих в индустрии.
Таким образом, успешное функционирование "междисциплинарных" коллективов, которые зачастую географически и административно распределены, напрямую связано с проблемой эффективной организации их работы и обеспечения взаимодействия с образованием и индустрией.
Одним из перспективных подходов к решению этой проблемы является концепция \\'еЬ-лаборатории1. Под термином иеЬ-лаборатория понимается программно-аппаратная структура, которая поддерживает в рамках единой \veb-среды: индивидуальные и коллективные научные исследования сотрудников лаборатории, в том числе — проведение численных экспериментов с использованием численных моделей предметных областей, исследуемых сотрудниками лаборатории, составление отчетов, подготовка статей, обсуждение результатов на семинарах и совещаниях, планирование деятельности лаборатории, поддержка учебного процесса (проведение учебных курсов, практических занятий, лабораторных работ, практикумов и т.п.) студентов и аспирантов. Доступ к перечисленным возможностям \¥еЬ-лаборатории предоставляется пользователям через \veb-6pay3ep.
Однако существующие реализации \уеЬ-лабораторий не обеспечивают поддержку численных экспериментов, выполняемых с использованием высокопроизводительной вычислительной техники (суперкомпьютеров, кластеров, ускорителей параллельных вычислений).
Целью работы является разработка архитектуры луеЬ-лаборатории и реализация соответствующего системного программного обеспечения, позволяющего разворачивать проблемно-ориентированные \уеЬ-лаборатории, удовлетворяющие выявляемым требованиям, в том числе, использующие высокопроизводительные вычислительные системы.
На основе анализа задач, которые стоят перед пользователями \уеЬ-лаборатории и существующих проектов по реализации подобных платформ, в данной работе был предложен необходимый функционал ууеЬ-лабораторий и сформулированы
1 G. Klimeck. M. McLennan, S.P. Brophy, G.B. Adams III, M.S. Lundstrom. "nanoHUB org: Advancing Education and Research in Nanotechnology," Computing in Science and Engineering, 2008, 10(5), pp. 17-23
требования к таким лабораториям. Полнофункциональная web-лаборатория должна обеспечивать:
1) разработку и проведение численных экспериментов с использованием численных моделей предметных областей;
2) интеграцию в состав web-лаборатории и использование пакетов прикладных программ, реализующих численные модели, для выполнения комплексных расчетов (например, расчета, включающего создание геометрической модели, генерацию сетки, выполнение вычислений и визуализацию результатов).
3) интеграцию в состав web-лаборатории аппаратных средств (серверов, высокопроизводительных кластеров, в том числе с ускорителями вычислений, систем хранения и обработки больших данных), поддерживающих выполнение прикладных пакетов;
4) подготовку отчетов и статей;
5) хранение и доступ к данным сотрудников web-лаборатории;
6) совместную работу с численными экспериментами, прикладными пакетами, аппаратными средствами, отчетами, статьями, данными;
7) создание ресурсов в формате Web 2.0: каталогов, цитат, библиотек (монографий, учебных пособий, статей, справочных материалов отчетов и других публикаций по тематике web-лаборатории, а также архивных материалов) и календарей;
8) интеллектуальный поиск материалов web-лаборатории;
9) организацию "он-лайн" и "офф-лайн" обсуждений: web-конференций, форумов;
10) организацию процесса обучения студентов и аспирантов, специализирующихся по тематике лаборатории.
Для обеспечения информационной безопасности должны быть реализованы:
1) разделение прав доступа к разделам и функциям web-лаборатории;
2) защита от несанкционированного доступа.
Основные результаты диссертации, обладающие научной новизной:
1. Разработана архитектура web-лаборатории, ориентированной на поддержку совместной образовательной, научно-исследовательской и производственной деятельности распределенных научных коллективов.
2. Предложены методы автоматизированной интеграции распределенных вычислительных ресурсов в единую вычислительную инфраструктуру.
На основе разработанной архитектуры и методов интеграции ресурсов создано системное ПО, позволяющее разворачивать на конкретной аппаратуре проблемно-ориентированные web-лаборатории, в том числе использующие высокопроизводительные вычисления.
Разработана и реализована технологическая платформа программы "Университетский кластер", в том числе испытательный стенд международного проекта "OpenCirrus" и web-лаборатория, ориентированная на решение задач механики сплошной среды (МСС) на основе промышленных свободно-распространяемых прикладных пакетов Salome, OpenFoam, ParaView.
Практическая значимость диссертации подтверждается эффективностью применения разработанного системного программного обеспечения, с использованием которого созданы: вычислительная инфраструктура программы "Университетский кластер"; испытательный стенд международного проекта OpenCirrus; проблемно ориентированная web-лаборатория решения задач механики сплошной среды UniCFD; web-лаборатория рационального природопользования GeoLab; лаборатория решения задач хранения и анализа больших данных BigDataOpenLab. В web-лаборатории UniCFD были выполнены научно-исследовательские и практические работы междисциплинарным коллективом специалистов из следующих организаций: МГТУ им. Н.Э.Баумана, НИЦ «Курчатовский институт», НИИ механики МГУ, СПбГМТУ, ИСП РАН. Можно отметить следующие работы: "Исследование вихревых нестационарных течений вязкого газа при дозвуковом обтекании летательных аппаратов", "Исследование нестационарных турбулентных течений в задаче обтекания грузов-контейнеров на
внешней подвеске вертолета" и др. Подробное описание результатов выполненных проектов можно найти на сайте web-лаборатории UniCFD (http://unicfd.ru).
На базе web-лаборатории UniCFD разработаны и проводятся учебные курсы по темам специализации лаборатории. Учебные курсы включают лекционные материалы, а также практические и лабораторные работы. Описание и материалы учебных курсов находятся в свободном доступе в Интернет по адресу: http://unicfd.ru. Этой web-лабораторией поддерживается образовательный процесс обучения студентов МГТУ им. Н.Э.Баумана. По данным курсам в 2011-2013 годах прошло обучение слушателей из 70 образовательных и научно-исследовательских учреждений и промышленных предприятий.
На базе web-лаборатории UniCFD были реализованы проекты в рамках ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2007-2013 годы» и ФЦП «Научные и научно-педагогические кадры инновационной России».
В настоящее время на базе web-лаборатории BigDataOpenLab в рамках целевой программы «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2014-2020 годы» выполняется проект по теме: «Разработка комплекса научно-технических решений предназначенных для хранения и обработки сверхбольших объемов данных в задачах механики сплошной среды». Совместно с компанией NVIDIA проводятся на постоянной основе учебные курсы по технологиям программирования для графических ускорителей. Технологическая платформа находится в открытом доступе для выполнения некоммерческих, научно-исследовательских или образовательных проектов (http://unihub.ru).
Апробация работы. Основные результаты диссертации докладывались на всероссийских и международных конференциях и семинарах:
1. Международные конференции «Облачные вычисления. Образование. Исследования. Разработка», Москва, 2010, 2011, 2012, 2013
2. Международная конференция «The 2012 HP Catalyst Summit», Пекин 11-14 апреля 2012
3. Международная конференция «Open Cirrus Summit», Саннивейл, Калифорния, США, 28-29 января 2010 г
4. Международная суперкомпьютерная конференция «Научный сервис в сети Интернет: масштабируемость, параллельность, эффективность» (Новороссийск 2009),
5. Международная суперкомпьютерная конференция «Научный сервис в сети Интернет: суперкомпьютерные центры и задачи», (Новороссийск 2010),
6. Международная суперкомпьютерная конференция «Научный сервис в сети Интернет: экзафлопсное будущее (Новороссийск 2011)
7. Всероссийская конференция «Свободное программное обеспечение-2010» (г. Санкт-Петербург, 2010);
8. Научная школа "Компьютерное моделирование новых материалов", Москва, 26 сентября 2012
9. Научно-технический семинар «Платформа UniHUB. Интеграция образования, науки и индустрии», Саранск, 17 -19 апреля 2012 г.
10. Семинар «Облачные сервисы», Москва 15 марта 2011 год
11.Летняя Суперкомпьютерная Академия МГУ имени М. В. Ломоносова, Москва, 25 июня по 7 июля 2012
12.Всероссийская конференция «XXXVII Академические чтения по космонавтике», Москва, 2013
Структура и объем диссертации. Диссертация состоит из введения, 4 глав, заключения и библиографии. Общий объем диссертации 109 страниц, из них 99 страниц текста, включая 28 рисунков. Библиография включает 53 наименования на б страницах.
КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ
Во введении обоснована актуальность диссертации, сформулирована цель и аргументирована научная новизна исследований, показана практическая значимость полученных результатов, представлены выносимые на защиту научные положения.
В главе 1 рассмотрена задача построения предметно-ориентированных web-лабораторий. Исследованы основные проблемы, с которыми сталкиваются исследователи при решении данной задачи, описаны базовые подходы и методы. Представлены и проанализированы наиболее близкие работы по данной тематике.
В главе 2 рассматривается архитектура web-лаборатории, базирующаяся на модели облачных вычислений, когда ресурсы (серверы, сети, системы хранения данных, приложения и пр.) предоставляются удаленно в виде набора сервисов разного уровня с обслуживанием по запросу. Выделяют три основных уровня сервисов: инфраструктура как сервис {IaaS), платформа как сервис (PaaS) и приложение как сервис (SaaS). На уровне IaaS вычислительные ресурсы представляются в виде виртуальных серверов, виртуальных сетей, виртуальных систем хранения данных. Запрос включает в себя параметры виртуальных серверов: систему команд CPU, число CPU, объем оперативной памяти, размер постоянной памяти, тип и версия операционной системы, и пр. Определяются число виртуальных серверов, их сетевая конфигурация, объем подключаемых систем хранения данных. Это позволяет на одной и той же аппаратуре получать виртуальную вычислительную инфраструктуру, сконфигурированную в соответствии с требованиями разных программ. Объем вычислительных ресурсов такой инфраструктуры может гибко регулироваться в зависимости от текущих потребностей. На уровне PaaS, используя виртуальную инфраструктуру, создается набор доступных для использования платформ. Пользователь может в своем запросе выбрать из этого набора нужную ему платформу, параметризировать в соответствии со своими требованиями и запустить ее экземпляр. На уровне SaaS пользователю предоставляется удаленный доступ к прикладным программам. Программно-аппаратный комплекс, поддерживающий возможности по созданию таких сервисов, управлению ими и предоставлению доступа к ним, будем называть облачной средой.
Программное обеспечение web-лаборатории имеет трехуровневую структуру. Интерфейсы каждого уровня представлены на рис. 1.
Интерфейсы базового уровня обеспечивают доступ к возможностям \veb-лаборатории: проведение численных экспериментов; составление отчетов; разработка учебных курсов; организация \\'еЬ-конференций.
Численный эксперимент с использованием расчетных программ, реализующих математические модели, как правило, состоит из нескольких фаз (например, подготовка данных, основной расчет, обработка результатов расчета), каждая из которых может использовать свою численную модель, реализованную в виде соответствующих библиотек расчетных программ. Функции интерфейса проведения численных экспериментов можно разделить на следующие группы:
Развертывание численных моделей: Подготовка библиотек расчетных программ, реализующих одну или несколько фаз численного эксперимента, для выполнения в облачной среде \\'еЬ-лаборатории. Загрузочный образ расчетной программы содержит предустановленные и готовые к запуску: операционную систему, вспомогательные программы, расчетную программу. Подготовка библиотек расчетных программ заключается в создании их загрузочных образов и состоит из выполнения следующих этапов:
- Инициация процесса создания загрузочного образа расчетной программы.;
- Установка и настройка операционной системы и дополнительных программ в соответствии с требованиями расчетной программы;
- Установка средств поддержки выполнения расчетной программы;
- Установка и настройка расчетной программы;
- Тестирование работоспособности загрузочного образа;
- Регистрация загрузочного образа в каталоге \уеЬ-лаборатории. Модификация численных моделей: найти, загрузить и модифицировать
загрузочный образ расчетной программы. Измененные загрузочные образы регистрируются системой контроля версий.
Подготовка численных экспериментов. Управление выполнением многофазного численного эксперимента осуществляется управляющим скриптом, который определяет последовательность вызовов функций соответствующих
расчетных программ и задает место размещения начальных и промежуточных данных, возникающих в процессе выполнения фаз, а также результатов численного эксперимента.
Загрузочный образ численного эксперимента представляет собой файл, аналогичный по формату и свойствам файлу образа расчетных программ и содержит в себе предустановленные и готовые к запуску операционную систему, скрипт управления выполнением многофазного численного эксперимента, среду поддерживающую выполнение скрипта.
Подготовка численного эксперимента заключается в создании загрузочного образа численного эксперимента. Начальные шаги подготовки аналогичны процессу создания загрузочного образа расчетной программы. После инициации, установки операционной системы и дополнительных программ необходимо создать управляющий скрипт. После проверки корректности работы загрузочный образ регистрируется в соответствующем каталоге ууеЬ-лаборатории.
Также, как и образы вычислительных программ, образы численных экспериментов могут быть модифицированы и зарегистрированы в каталоге под разными версиями.
Проведение численных экспериментов. Для проведения заданного численного эксперимента пользователь находит в каталоге по описанию соответствующий ему загрузочный образ. Размещает начальные данные в разделах, указанных в описании загрузочного образа эксперимента. И запускает загрузочный образ на выполнение в облачной среде.
Совместную работу пользователей \уеЬ-лаборатории поддерживают следующие базовые интерфейсы:
Группа интерфейсов обработки материалов предоставляет доступ к возможностям, связанным с созданием информационного содержания \veb-лаборатории. В данную группу входят следующие интерфейсы.
¡ Интерфейсы • web-конференций □□ Интерфейсы учебных курсов □ □ Интерфейсы обработки метериалов □□ Интерфейсы численных экспериментов □□□□□□
II. Унифицированная аппаратура
Интерфейсы унифицированной аппаратуры
Устройства хранения файлов данных Устройства хранения объектов Сетевые соединения Загрузочные Вычислительная образы ОС инфраструктура
III. Реальная аппаратура
Интерфейсы управления аппаратурой
Управление Развертывание Управление Управление Управление сетью
кластером кластера сервером СХД
(планировщик) (bire-metaf] (llbvirt, XenAPI,...) (1SCSI, RBDr.)
Рис. 1 - Структура ПО Web-лаборатории Разработка отчетов и статей. Функции данной группы позволяют совместно создавать отчетные материалы по результатам проведения численных экспериментов, включая: управление документами (права доступа, отслеживание изменений), совместное редактирование в реальном режиме времени, управление проектами.
Создание ресурсов web 2.0. Функции данного интерфейса позволяют формировать индивидуальную и коллективную рабочую среду web-лаборатории в формате Web 2.0. К данным возможностям относятся:
Закладки — сервис web-лаборатории, который позволяет создавать, искать и делится с другими пользователями URL-адресами, формируя тем самым тематический каталог web-pecypcoB лаборатории. Также данный сервис позволяет по адресу в каталоге сохранять локальную копию страницы соответствующего сайта в виде документа в формате PDF.
Библиотека — сервис «еЬ-лаборатории, который позволяет создавать личные коллекции пользователей и общую библиотеку лаборатории, содержащую в виде файлов разных форматов: монографии, учебные пособия, статьи, справочные материалы, отчеты, презентации, видеоматериалы, изображения. Пользователи могут предоставлять доступ к материалам своих коллекций. Для материалов личных коллекций поддерживается система рейтингов. Общая библиотека \уеЬ-лаборатории формируется на основе механизма рекомендаций со стороны пользователей и ободрения со стороны администратора. Каждому материалу индивидуальной или общей коллекции может быть присвоен набор классифицирующих меток (тэгов).
Группа интерфейсов учебных курсов обеспечивает доступ к функциям проведения специальных учебных курсов? в которые входят видео-лекции, методические пособия, лабораторные работы.
Группа интерфейсов п'еЬ-конфереиции обеспечивает доступ к функциям организации общения сотрудников лаборатории в реальном режиме времени по сети Интернет. Поддерживаются следующие возможности: чат, \\еЬ-форум.
Группа интерфейсов администрирования обеспечивает возможности по управлению учетными записями пользователей, управлению проектами, управлению ресурсами \уеЬ-лаборатории, сбору статистики использования ресурсов \уеЬ-лаборатории.
Доступ пользователей к \уеЬ-лаборатории осуществляется удаленно через виртуальные рабочие столы. Настройки рабочих столов устанавливаются в соответствии с ролями пользователей и имеют соответствующую проекцию доступных функций интерфейсов базового уровня. Поддерживаются следующие роли: Администратор \уеЬ-лаборатории задает политики организации, функционирования и развития \уеЬ-лаборатории в целом. Администратор получает доступ к интерфейсу базового уровня через функции которого обеспечивается управление учетными записями пользователей, управление проектами, управление ролями, управление ресурсами \уеЬ-лаборатории и сбором статистики их использования. Исследователи \уеЬ-лаборатории — это сотрудники разной квалификации (научные сотрудники, аспиранты, студенты), которые занимаются
исследовательской или образовательной деятельностью с использованием ее возможностей.
Для разделения уровня доступа к ресурсам и материалам в рамках одной web-лаборатории вводится понятие проект.
Исследователи могут работать как индивидуально, так и объединяться по проектам с разным уровнем доступа к ресурсам web-лаборатории. Каждому проекту администратор web-лаборатории должен назначить управляющего, который определяет политики его дальнейшей организации, функционирования и развития.
Поддержку выполнения функций базового уровня web-лаборатории обеспечивает уровень унифицированной аппаратуры. Рассмотрим его более подробно.
В рамках рассматриваемой облачной модели вычислительная инфраструктура web-лаборатории представляет собой облачную среду с уровнем обслуживания IaaS и унифицированным механизмом доступа.
Унификация вычислительной аппаратуры выполняется с использованием виртуализации, а в случаях, когда виртуализация ведет к резкому росту накладных расходов, унификация реализуется с использованием метода прямой перезагрузки системного окружения (метод "Bare-Metal Deployment"). На данном уровне обеспечивается управление жизненным циклом виртуальных и bare-metal машин, их планирование на конечную аппаратуру, администрирование.
Вычислительная инфраструктура среды облачных вычислений представляется в виде загрузочных образов операционных систем и наборов требований к унифицированной аппаратуре, на которой операционная система будет выполняться. Облачная среда поддерживает создание, хранение и регистрацию новых загрузочных образов операционных систем, а также создание, хранение и регистрацию мгновенных снимков операционных систем выполняющихся виртуальных машин. Также обеспечивается возможность организации сетевых связей между виртуальными машинами и создание подключаемых к виртуальным машинам устройств постоянного хранения данных.
В работе рассмотрены следующие основные типы вычислительных инфраструктур: сервер (S), группа серверов (SN), объединенных сетью, и высокопроизводительная кластерная система (С), устройство постоянного хранения данных (HDD).
Сервер представляет собой выделенный компьютер, обладающий одним или несколькими многоядерными процессорами, оперативной и постоянной памятью, сетевыми интерфейсами. В состав сервера может быть включен один или несколько специализированных ускорителей вычислений одного типа. Сервер работает под управлением операционной системы. Сервер описывается следующей парой объектов : набор требований к аппаратуре (H1V), загрузочный образ операционной системы (OS).
Требования к аппаратуре сервера описываются следующим образом: HW = < Nçorf., RAM, Тасс> Ллссч HDD, Dhdiг*, где Ncorf. — число вычислительных ядер в сервере, RAM - объем оперативной памяти (ГБ), 7'« ■< • - тип ускорителя вычислений (NVIDIA® Kepler, Intel® Xeon Phi), Nacc ~ число ускорителей вычислений на сервере, HDD — размер дисковой памяти виртуальной машины, Dhdd — описатель постоянной дисковой памяти (объем, скорость доступа), которая представляется как внешнее блочное устройство хранения данных, подключаемое к серверу. К серверам могут подключаться разного типа устройства хранения, отличающиеся по скорости доступа к данным. Одно устройство хранения данных не может быть одновременно подключено сразу к нескольким серверам. К каждому серверу можно подключить не более одного устройства хранения данных. В этом случае постоянная память может быть описана следующим образом:
Загрузочный образ операционной системы описывается следующими объектами: OS = <ISA, Таs. Vos, TKN]> , где ISA - поддерживаемая система команд процессора (х86, х86-64, PowerPC, ARM), 7}«-тип базовой операционной системы: Linux, Windows, Vas - версия ядра операционной системы, 7/:ЛГ - тип пользовательского окружения (Red Hat Enterprise Linux, Windows Server, Windows 7, SUSE Linux Enterprise, Ubuntu Linux, Fedora Linux, Gentoo Linux, Debian, CentOS)
Серверы, объединенные сетью, описываются следующим образом: SN = <I.ns, Т\/с>, где Ада— список дескриптор серверов, 7ду<■ - тип соединения между серверами (GigE, Ethernet 10G)
Высокопроизводительная кластерная система (для краткости — вычислительный кластер) представляет собой вычислительную систему, состоящую состоит из объединенных специализированной вычислительной сетью, однородных с точки зрения аппаратуры и системного программного обеспечения вычислительных узлов, которые используются, как единый ресурс, доступ к которому осуществляется через единую точку - управляющий узел. Каждый вычислительный узел кластера обладает одним или несколькими многоядерными процессорами и оперативной памятью. На каждый вычислительный узел кластера может быть установлен специализированный процессор — ускоритель вычислений. В этом случае используются ускорители одного типа. В состав вычислительного кластера включена распределенная параллельная система ввода-вывода и хранения данных.
Вычислительный кластер работает под управлением распределенной операционной системы, в состав которой входят: операционная система управляющего узла, копии операционных систем вычислительных узлов, программного обеспечения среднего уровня, которое обеспечивает доступ и распределение вычислительных ресурсов, централизованное администрирование и управление, поддержка обмена сообщениями распределенных программ.
Инфраструктура управляющего и вычислительных узлов кластера может быть представлена объектами S:""'r"1 = <DS', Тш>,, TVHS > и S™'p = < Д/, ТМР1, TPBS >, где Д-', Д/ - дескрипторы серверов управляющего и вычислительных улов кластера, Т^пч — тип системы поддержки обмена сообщениями (OpenMPI, MVAPICH, MPICH), TrBS-тип системы централизованного распределения и планирования ресурсов (TORQUE, SLURM, LSF, МОАВ). Тогда вычислительный кластер можно представить в виде:
Dc = < D Ds''""'', Nmaxu""'' > где, DSL0"""' - дескриптор инфраструктуры управляющего узла кластера, Ds'""p- дескриптор инфраструктуры вычислительного
узла кластера, К„ш"'тр — максимально доступное число вычислительных узлов кластера.
Уровень управления реальной аппаратурой поддерживает функционирование уровня унифицированной аппаратуры. Имеет следующие группы нтерфейсов: управление серверами - обеспечивает возможность создания и управления виртуальными машинами - абстракциями реальных вычислительных машин, выполняемыми под управлением монитора виртуальных машин, или гипервизора; управление кластерными системами — обеспечивает доступ к вычислительным узлам через систему пакетной обработки заданий и планирования ресурсов кластера; управление системами хранения данных — обеспечивает функционирование прослойки, предоставляющей доступ к низкоуровневым блочным устройствам, и позволяет реализовать на их основе сервис хранения данных; управление сетями - обеспечивает управление сетевыми устройствами и их конфигурацией (коммутаторами, сетевыми интерфейсами) и позволяет реализовать сервис виртуальных сетей; управление аппаратными средствами географически распределенных 1/ентров обработки данных — позволяет обеспечить возможность доступа к ресурсам географически и административно удаленных ЦОД, поддерживает метапланирование, то есть централизованное эффективное распределение заданий между удаленными ЦОД.
В главе 3 описана реализованная на основе разработанной архитектуры и предложенного метода интеграции вычислительных ресурсов в единую вычислительную инфраструктуру программно-аппаратная платформа ишНиВ, обеспечивающая развертывание проблемно-ориентированных \уеЬ-лабораторий, и рассмотрены предложенные автором методы автоматизированной интеграции распределенных вычислительных ресурсов в единую вычислительную инфраструктуру.
При реализации были использованы, как заново разработанные, так и готовые компоненты свободного ПО. Использованные компоненты свободного ПО развиваются в рамках международных сообществ и являются проверенными технологическими решениями большого числа индустриальных проектов по
разработке комплексных программных систем. Такой подход позволил при высоком качестве результата значительно сократить общие затраты на разработку платформы. За основу реализации интерфейсов уровней унифицированной и реальной аппаратуры был взят открытый пакет Орег^аск.
Платформа состоит из следующих компонент: ядро; программы базовых функций \уеЬ-лаборатории (реализуют возможности совместной подготовки отчетов, проведения \уеЬ-конференций, проведения учебных курсов); расчетные программы; виртуальные рабочие столы пользователей; программные модули, реализующие функции уровня унифицированной аппаратуры; программные модули, реализующие функции уровня управления реальной аппаратурой.
Ядро \\еЬ-лаборатории обеспечивает поддержку выполнения функции управления запуском рабочих столов пользователей, модулей базовых функций \уеЬ-лаборатории и расчетных программ. Ядро \уеЬ-лаборатории состоит из следующих компонент: \уеЬ-сервер; УЫС-ргоху сервер; сервер авторизации; очередь сообщений, СУБД. Образы расчетных программ, образы численных экспериментов, образы программ базовых функций, образы виртуальных рабочих столов пользователей размещаются в хранилище облачной среды, а их дескрипторы в соответствующих каталогах \\'еЬ-лаборатории. В каждый загрузочный образ включен УЫС-сервер, обеспечивающий отображение экрана на виртуальный рабочий стол пользователя. На рис. 2 представлен случай использования \veb-лаборатории при выполнении трехфазного вычислительного эксперимента. В рассматриваемом примере расчет состоит из фаз А, Б и В. Вычисления на каждой фазе выполняются в соответствии с расчетной программой, для которой подготовлен загрузочный образ, обеспечивающий ее выполнение на унифицированной аппаратуре.
После подготовки расчетных фаз пользователь составляет управляющий скрипт расчета, в котором указывает дескрипторы загрузочных образов расчетных фаз, порядок их запуска и место размещения входных, промежуточных на каждой расчетной фазе данных и результатов расчета.
я
Рабочая станция пользователя
УУеЬ браузер
Рабочий стол
Ядро \уеЬ-лаборатории
Виртуальный рабочий стол пользователя
АР1 Управления зафузочными образами
Вычислительный эксперимент
Загрузочный образ расчета фазы А
Загрузочный образ расчета фазы Б
¡вса, ков.
ЧР
АР1управления унифицированной выч. инфраструктурой
Планировщик виртуальных серверов
пе1соп*
НЬ\лП, ХепАР1, Ьаге-ше1а1
т
Загрузочный образ расчета фазы В
Рис. 2 - Организация многофазного численного эксперимента на базе \veb-
лаборатории
Уровень управления реальной аппаратурой реализуется с использованием следующих мониторов виртуальных машин: XenServer/XCP, KVM/QEMU, LXC,
ESX, драйвер bary-metal; планировщик ресурсов кластера Slurm; средства управления grid-средой GlobusToolki; мета-планировщик grid-среды GridWay
В качестве метода интеграции распределенных вычислительных ресурсов в единую вычислительную инфраструктуру предлагается использовать модель распределенных Grid-вычислений. В рамках данной модели описываются подходы для решения следующих задач:
1) Идентификация, авторизация и сертификация вычислительных ресурсов географически удаленных ЦОД, образующих узлы Grid среды, а также заданий, передаваемых на выполнение в этой Grid среде;
2) Управление жизненным циклом заданий, передаваемых для выполнения в Grid среде;
3) Метапланирование, то есть централизованное эффективное распределение заданий между узлами Grid среды;
4) Эффективная передача данных между узлами Grid среды;
5) Мониторинг состояния ресурсов Grid среды.
В главе 4 описываются созданные на базе разработанной и реализованной платформы: вычислительная инфраструктура программы "Университетский кластер", в том числе испытательный стенд международного проекта "OpenCirrus" и web-лаборатория решения задач механики сплошной среды UniCFD.
Данные вычислительные инфраструктуры развернуты на ресурсах ИСП РАН, МСЦ РАН, ВЦ РАН и обеспечивают функционирование сервисов в режиме 24/7.
Наиболее полно функции платформы востребованы исследователями лаборатории UniCFD решения задач механики сплошной среды, основными направлениями исследований которой являются задачи аэро-гидродинамики и акустики обтекания тел сложной геометрии. При развертывании web-лаборатории UniCFD возникла необходимость интеграции следующих прикладных пакетов, реализующих необходимые исследователям численные модели:
a) SALOME -подготовка геометрических моделей и генерация расчетных сеток;
б) OpenFOAM -моделирование физических процессов с использованием наборов библиотек решения уравнений математической физики методом конечных объемов. Пакет предназначен для решения задач, формулируемых в виде законов сохранения в переменных Эйлера, а также для моделирования задач, связанных с движением частиц (метод Лагранжа), молекулярной динамики (метод Монте-Карло), упругой деформации (метод конечных элементов), кинетики химических реакций;
в) ParaView —обработка и визуализация результатов моделирования;
г) DAKOTA - решение задач оптимизации.
На рис. 3 представлен снимок экрана рабочего стола web-лаборатории с запущенными пакетами. В том числе с запущенным пакетом ParaView, выполняющемся на специально выделенном виртуальном сервере, обладающим достаточным объемом памяти и ускорителями, необходимыми для обеспечения работы подсистемы симуляции.
Virtual Desktop
Рис. 3 - Снимок экрана виртуального рабочего стола web-лаборатории.
Графический интерфейс программы выводится через виртуальный рабочий стол в окно браузера, запущенного на рабочей станции пользователя. Пользователь, взаимодействуя с интерфейсом пакета, создает геометрическую модель исследуемого объекта и строит по этой модели расчетную сетку. При этом поддерживается интерактивный ЗЭ графический вывод.
Кроме возможности доступа к выполняемым на вычислительной инфраструктуре приложениям платформа поддерживает возможности, связанные с организацией и поддержкой совместной работы исследователей.
\УеЬ-лаборатории, созданные на основе платформы иЫНиВ, обеспечивают также способы взаимодействия с коллегами. В частности, поддерживаются сессии виртуальных машин: сессию с выполняющимся приложением можно разделить с любым количеством пользователей.
В заключении подводятся итоги проведенного исследования и формулируются основные результаты работы.
ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ
1. Разработана архитектура \уеЬ-лаборатории, ориентированной на поддержку совместной образовательной, научно-исследовательской и производственной деятельности распределенных научных коллективов.
2. Предложены методы автоматизированной интеграции распределенных вычислительных ресурсов в единую вычислительную инфраструктуру.
3. На основе разработанной архитектуры и методов интеграции ресурсов создано системное ПО, позволяющее разворачивать на конкретной аппаратуре проблемно-ориентированные \уеЬ-лаборатории, в том числе использующие высокопроизводительные вычисления.
4. Разработана и реализована технологическая платформа программы "Университетский кластер", в том числе, испытательный стенд международного проекта "ОрепО'ггиБ" и \уеЬ-лаборатория, ориентированная на решение задач
механики сплошной среды на основе промышленных свободно-распространяемых прикладных пакетов Salome, OpenFoam, ParaView.
РАБОТЫ АВТОРА ПО ТЕМЕ ДИССЕРТАЦИИ.
Публикации автора в изданиях из списка ВАК и изданиях, находящихся в международных индексах цитирования:
1. Арутюн Аветисян, Виктор Иванников, Олег Самоваров, Сергей Гайсарян, «Университетский кластер»: интеграция образования, науки и индустрии», «Открытые системы» №05, 2010, стр.46-49.
2. Самоваров О.И., Гайсарян С.С., "Архитектура и особенности реализации платформы UniHUB в модели облачных вычислений на базе открытого пакета OpenStack", Труды Института системного программирования РАН, том 26, 2014 г. Выпуск 1. ISSN 2220-6426 (Online), ISSN 2079-8156 (Print)
3. Арутюн Аветисян, Олег Самоваров, Сергей Гайсарян, Эшсоу Хашба «OpenCirrus, российский сегмент», «Открытые системы» , № 05, 2011, стр. 39-43
4. М.Д. Калугин, О.И. Самоваров, C.B. Стрижак, A.B. Пушников, E.H. Каштанова "Решение оптимизационных задач газовой динамики с использованием облачных и параллельных вычислений", ЕСТЕСТВЕННЫЕ И ТЕХНИЧЕСКИЕ НАУКИ, Выпуск 6, стр. 518-520 Издательство: ООО "Издательство "Спутник+", Москва, 2012
Публикации автора в других изданиях:
5. А.И. Аветисян, С.С. Гайсарян, О.И. Самоваров, «Университетский кластер» - инфраструктура исследований, разработок и образования в области параллельных и распределенных вычислений», Труды Всероссийской суперкомпьютерной конференции - М.: Изд-во МГУ, 2009, ISBN 978-5-211-05697-8, стр. 431-433
6. А.И. Аветисян, С.С. Гайсарян, О.И. Самоваров, Э.В. Хашба, Организация предметно-ориентированных исследовательских центров в рамках программы «Университетский кластер», Труды Международной суперкомпьютерной конференции, - М.: Изд-во МГУ, 2010, ISBN 978-5-211-05916-0, стр. 213-215
7. М.Крапошин, О.Самоваров, С.Стрижак. Особенности реализации Web-лаборатории механики сплошной среды на базе технологической платформы программы «Университетский Кластер». Труды международной суперкомпьютерной конференции - М.: Изд-во МГУ, 2011
8. М. Крапошин (НИЦ КИ, Москва, Россия), О. Самоваров (ИСП РАН Москва, Россия), С. Стрижак (HP, МГТУ им. Н.Э. Баумана, Москва, Россия), «Web лаборатория UniHUB в рамках программы 'Университетский кластер», Workshop "Multiphysical Modelling in OpenFOAM", http://ww\v.modlab.lv/en/openfoam.php, Латвийский Университет. Рига. 20.10.2011-21.10.2011
9. О.И. Самоваров, H.H. Кузюрин, Д.А. Грушин, А.И. Аветисян, Г.М. Михайлов, Ю.П. Рогов "Проблемы моделирования GRID-систем и их реализации", Труды международной суперкомпьютерной конференции, стр.83-88, - М.: Изд-во МГУ, 2008
10. Крапошин М.В., Самоваров О.И., Стрижак C.B. Опыт использования СПО для проведения расчетов пространственной гидродинамики промышленного масштаба//Тр. конф. "Свободное программное обеспечение". СПб: Изд-во СПБГПУ, 2010.44-46.
Патенты:
11. Самоваров О.И., Грушин Д.А., Федосин М.Е., Калугин М.Д., Рыжов А.Г. "Аппаратно-вычислительный комплекс для предоставления доступа к программному обеспечению в концепции облачных вычислений", Патент на полезную модель RUS 122505 25.07.2012А.Г., 2012
-
Похожие работы
- Комплекс программных средств разработки и поддержки информационного портала корпоративной системы
- Методы построения инвариантных серверов web-приложений
- Разработка инструментов поддержки аспектно-ориентированного Web-программирования в системе Aspect.NET
- Интеграция программных систем информационной среды организации на основе Intranet-технологии
- Логическая интеграция гетерогенных источников данных с помощью WEB-сервисов при создании информационного обеспечения автоматизированных систем управления
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность