Разработка методов оптимального проектирования ГРИД-систем

Сущность концепции ГРИД-системы как типа суперкомпьютера, ее проектирование и эксплуатация, обзор существующих разработок. Подход к моделированию, описание образов состояний в пространстве признаков. Оценка отказоустойчивости, надежности и эффективности.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 16.05.2017
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Введение

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

Актуальность исследования. Рост потребностей в компьютерных ресурсах для решения крупномасштабных вычислительных задач явился причиной создания концепции GRID. Глобальные вычислительные сети GRID объединяют разнородные вычислительные ресурсы: персональные компьютеры, вычислительные кластеры, суперкомпьютеры. Вследствие этого имеет место разнородный характер выполняемых приложений, начиная от распределенных супервычислений до высокопоточных вычислений, позволяющих организовать эффективное использование ресурсов для небольших задач, занимая временно простаивающие компьютерные ресурсы.

Сложность современных научно-технических проблем, связанных с интенсивным освоением новых областей применения вычислительной техники, диктует необходимость совершенствования средств их проектирования.

Получение обоснованных и устойчивых проектных решений немыслимо без использования методов автоматизации проектирования.

Перспективным подходом к обработке сложных задач, повышению качества результатов и уменьшению времени счета является применение систем параллельной распределенной обработки.

Преимущества параллельной распределенной обработки включают возможность решения задач большей размерности и достижения высококачественных результатов, а также доступность недорогих многопроцессорных вычислительных систем.

Следует отметить, что создание параллельных алгоритмов является более сложной задачей по сравнению с разработкой традиционных последовательных методов и требует учета множества факторов, влияющих на производительность параллельной вычислительной системы в целом.

Одним из основных вопросов построения распределенной САПР является выбор и адаптация инфраструктуры, позволяющей получить значительное повышение производительности при моделировании, обеспечить возможность коллективной разработки сложных объектов для географически распределенных групп инженеров, обеспечить семантическую поддержку процесса проектирования при помощи распределенных баз знаний, поддерживать хранение и обработку больших объемов данных, поддерживать мобильность вычислительных задач.

Одним из наиболее перспективных направлений, на наш взгляд, является использование Грид-технологий, которые стремительно развиваются и становятся все более популярными не только в чисто научном окружении, но и находят свое применение в коммерческих проектах и в бизнес процессах.

Главной задачей разработчиков GRID является превращение вычислительной сети, состоящей из тысяч разнообразных элементов, в единое целое, работающее и управляемое как многопроцессорный компьютер. Чтобы поддерживать такую распределенную среду, необходимо решить широкий круг проблем, который можно разделить на две основные группы в соответствии с теорией распределенных вычислений: разработка программного обеспечения глобальной распределенной сетевой операционной системы и разработка эффективных методов планирования и распределения поступающих заданий по имеющимся вычислительным ресурсам. Предлагаемый способ балансировки нагрузки в Grid-системах относится именно ко второй группе.

На сегодняшний день ГРИД-технологии широко применяются при решении задач в различных направлениях развития фундаментальной и прикладной науки, например, таких как физика высоких энергий и космофизика, генетика, микробиология и медицина, метеорология и океанография, робототехника и авиастроение и пр. Специалисты [] прогнозируют развитие ГРИД-технологии для создания принципиально новый интегрированных информационно-вычислительных и телекоммуникационных систем, как инструмента развития самых разнообразных сфер человеческой деятельности.

В тоже время уже сегодня многие современные проекты требуют от современных вычислительных систем производительности от 25 млрд. до 1000 трлн. операций / секунду [Суперкомпьютерные технологии в науке, образовании и промышленности / Под редакцией: академика В.А. Садовничего, академика Г.И. Савина, чл.-корр. РАН Вл. В. Воеводина.-М.: Издательство Московского университета, 2009. - 232 с.]. Иными словами, в современном информационном пространстве возникла проблема информационного барьера [Цветков В.Я Маркелов В.М., Романов И.А. Преодоление информационных барьеров // Дистанционное и виртуальное обучение. 2012. №11. С. 4-7.].

Поэтому актуальной задачей на сегодняшний момент является разработка методов оптимального проектирования ГРИД-систем, удовлетворяющих заданным критериям отказоустойчивости, надежности и эффективности функционирования.

Предметом исследования в работе являются методы повышения отказоустойчивости, надежности и эффективности ГРИД-систем.

Объектом исследования магистерской диссертации являются методы оптимального проектирования ГРИД-систем, обеспечивающих оптимальное сочетание показателей отказоустойчивости, надежности и эффективности функционирования.

Целью магистерской работы является разработка методов оптимального проектирования ГРИД-систем, удовлетворяющих критериям отказоустойчивости, надежности и эффективности.

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

- проанализировать современные концепции достижения надежности, отказоустойчивости и эффективности ГРИД-систем и возникающие при их реализации проблемы;

- уточнить сущность концепции ГРИД-системы;

- определить основные проблемы проектирования и эксплуатации ГРИД-систем;

- выполнить обзор существующих научных разработок по ОООНЭ ГРИД-систем при их эксплуатации;

- провести анализ существующих научных разработок по ОООНЭ ГРИД-систем при их проектировании;

- выполнить постановку задачи исследования;

- привести общую классификацию ГРИД-систем и их состояний;

- выполнить описание параметров и признаков наблюдения за состояниями ГРИД-системы;

- привести описание образов состояний в пространстве признаков;

- выполнить выбор математической модели динамики показателей отказоустойчивости, надежности и эффективности ГРИД-системы;

- выполнить анализ динамики показателей ГРИД-системы и выбор метода обеспечения отказоустойчивости, надежности и эффективности;

- провести анализ методов оценки параметров отказоустойчивости, надежности и эффективности ГРИД-системы;

- сформировать критерии оценки параметров отказоустойчивости, надежности и эффективности ГРИД-системы;

- привести алгоритм оценки динамики критериев;

- уточнить модель и алгоритм принятия решения по управлению отказоустойчивостью, надежностью и эффективностью ГРИД-системы;

- уточнить общий алгоритм функционирования предметной области;

- выполнить испытание модели динамики показателей отказоустойчивости, надежности и эффективности ГРИД-системы;

- провести испытание алгоритма оценки динамики критериев;

- выполнить испытание модели и алгоритма принятия решения по управлению отказоустойчивостью, надежностью и эффективностью ГРИД-системы;

- провести испытание общего алгоритма функционирования предметной области.

Научная новизна состоит в том, что предложен подход к построению модель Грид-системы, в которой каждому свойству Грид-системы приводится в соответствие определённая услуга или группа услуг с учётом уровня интероперабельности.

Построена модель, которая служит основой выбора и разработки стандартов и построение профилей, направленных на обеспечение интероперабельности Грид-системы.

1. Обзор существующих решений и постановка задачи

1.1 Сущность концепции ГРИД-системы

Концепция ГРИД-технологий появилась в 1960-х годах. В связи с потребностями в больших объемах вычислений в фундаментальных научных исследованиях. Постоянный прогресс в этой области, а также настойчивый поиск решений все новых классов задач привели к расширению этого понятия.

Одно из ранних определений понятия GRID дано в 1998 г. К. Кессельманом и Я. Фостером (считающимися отцами GRID-технологии). Согласно их определению, «вычислительный GRID является программно-аппаратной инфраструктурой, которая обеспечивает надежный, совместимый, повсеместный и недорогой доступ к вычислительным ресурсам большой мощности» []. В 2000 г. к этому определению добавилсz следующий принцип ГРИД-систем: «координированное распределение ресурсов и решение проблем в динамических виртуальных организациях».

В настоящее время концепция ГРИД состоит прежде всего в глобальной интеграции распределенных вычислительных и информационных ресурсов.

Например, такими ресурсами в ГРИД-средах являются:

1) вычислительные ресурсы;

2) системы хранения данных (БД, БЗ, нейронные сети и т.п.);

3) электронные каталоги информационных ресурсов.

Важную роль для предоставления пользователям таких распределенных ГРИД-ресурсов играют телекоммуникационные системы (ТКС) нового поколения.

Все ресурсы ГРИД-систем и ТКС разделяют на физические и логические [].

К физическим распределенным ресурсам ГРИД-систем относятся:

1) оперативная память;

2) память на долговременных носителях;

3) процессорные мощности;

4) коммуникаторы и маршрутизаторы сети.

К логическим ресурсам ГРИД-систем относятся:

1) распределенная файловая система;

2) компьютерные кластеры;

3) распределенные пулы (временная интеграция по договору) компьютеров;

4) локальные компьютерные сети.

На рис. 1 представлена одна из возможных структур Grid Computing.

[Алпатов А.Л. Развитие распределенных технологий и систем // Перспективы Науки и Образования, 2015. - №2 (14)]

Рис. 1.1. Пример аппаратной структуры ГРИД-системы

В ГРИД-среде пользователи и приложения работают не с множеством компьютеров, а с единой интегрированной ГРИД-системой, не с набором дисков, на которых хранятся файлы и базы данных, а с единой виртуальной областью хранения информации, образованной отдельными носителей распределенных программ и массивов данных [14].

Разработка и эксплуатация ГРИД-систем совместно с обслуживающими их ТКС позволяют реализовать распределенные вычисления и параллельную обработку данных.

ГРИД-технология должна обеспечивать достижение принципиально новых результатов, позволяя:

1) оптимизировать (минимизировать) нагрузку на серверы;

2) создавать отказоустойчивую информационно-вычислительную и телекоммуникационную среду;

3) обеспечивать высокую степень доступности предлагаемых сервисов;

4) реализовывать принцип предоставления ресурсов «по требованию» или по «интересам».

Таким образом, основными характерными особенностями ГРИД-систем, которые должны быть реализованы при их проектировании и эксплуатации, являются следующие признаки и свойства:

1) значительные масштабы вычислительных или информационных ресурсов. Обычно объем памяти и количество процессоров в ГРИД-системах многократно превосходят ресурсы отдельного компьютера, кластера или локального вычислительного комплекса;

2) гетерогенность компьютерной среды. В состав ГРИД-среды могут входить компьютеры, рабочие станции (РС) и серверы различной мощности, работающие под управлением различных операционных систем и собранные на различной элементной базе;

3) географически пространственное распределение информационных вычислительных ресурсов;

4) объединение информационных и вычислительных ресурсов, которые не могут управляться централизованно;

5) использование стандартных, открытых, общедоступных протоколов и интерфейсов;

6) обеспечение информационной безопасности.

В дальнейшем под термином «ГРИД-система» будем подразумевать распределенную компьютерную систему, обладающую перечисленными выше свойствами и представляющую внешним агентам-пользователям распределенные в ней информационные и вычислительные ресурсы через телекоммуникационную сеть.

1.2 Основные проблемы проектирования и эксплуатации ГРИД-систем

Решение задач и выполнение требований, стоящих перед ГРИД-системами, сталкивается с рядом проблем в сравнении с традиционными системами, возникающих в ходе проектирования эксплуатации этих систем.

Основными проблемами ГРИД-систем являются проблемы, связанные с:

- администрированием системы:

- ограниченностью масштабируемости системы;

- балансированием нагрузки на узлы системы;

- восстановлением данных в случае возникновения ошибок.

Нами составлено дерево основных проблем проектирования и эксплуатации ГРИД-систем, приведенное на рис. 2.

Рассмотрим более подробно их содержание.

Администрирование системы. Фрагментация ресурсов в ГРИД-системах требует создания гибких настраиваемых средств администрирования. Поскольку в глобально распределенных системах администрирование должно происходить в автоматическом режиме, то возникают следующие основные проблемы администрирования ГРИД-систем:

- балансировка нагрузки на узлы системы;

- восстановление данных в случае возникновения ошибки;

- сбор статистики с узлов системы;

- обновление ПО на узлах системы в автоматическом режиме [Цветков В.Я., Алпатов А.Н. Проблемы распределенных систем // Перспективы Науки и Образования, 2014. - №6 (12)].

Рассмотрим проблему балансирования нагрузки в узлах ГРИД-системы.

Рис. 1.2. Дерево проблем проектирования и эксплуатации ГРИД-систем

Правильно выбранная стратегия балансировки нагрузки оказывает значительное влияние на общую эффективность и скорость работы ГРИД-системы. В настоящее время существует множество подходов [Babich A.V., Bersenev G.B. Algorithms for dynamic load balancing in a distributed system of active monitoring. Izvestiia TulGU. Tekhnicheskie nauki - Bulletin of the Tula State University University. Technical science, 2011, no. 3, pp. 251-261 (in Russian).] разрешения этой проблемы, которые можно классифицировать следующим образом.

По характеру распределения нагрузки на вычислительные узлы используется статическая и динамическая балансировка (перераспределение).

Статическая балансировка, как правило, выполняется по результатам априорного анализа. При распределении ресурсов по вычислительным узлам анализируется модель распределенной системы для выбора наилучшей стратегии балансировки. При этом учитывается структура ГРИД-системы и конфигурация вычислительных узлов. Основным недостатком этого метода балансировки нагрузки является необходимость сопоставления узлов с различной конфигурацией оборудования с вычислительными потребностями задачи, а это не всегда возможно.

Динамическая балансировка ГРИД-системы представляет собой адаптацию нагрузок на узлы системы в процессе работы, что позволяет более эффективно использовать ресурсы сети. Необходимость динамической балансировки возникает в ситуациях, в которых не представляется возможности изначально спланировать общую загрузку сети. Например, такое возникает при решении задач математического моделирования, использующих итерации, вследствие чего сложность вычислений повышается и, увеличивается потребность в вычислительных мощностях. Также динамическая балансировка позволяет использовать ПО, инвариантное к архитектуре ГРИД-системы.

Проблемы восстановления данных в случае возникновения ошибок.

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

Для решения этой проблемы на данное время выработано большое количество методов. Например, для восстановления данных в информационных распределенных системах (распределенных СУБД) используют журнал транзакций, сохраняющий всю информацию об изменениях, произошедших в базе данных. Сложность в этом подходе состоит в правильной классификации ошибок и правильном применении методов автоматического восстановления данных.

Проблемы ограниченности масштабируемости.

Масштабируемость ГРИД-систем является одной из первоочередных задач при проектировании таких систем. ГРИД-системы позволяют избежать основного недостатка централизованных систем, а именно, ограниченности наращивания вычислительных мощностей системы.

Основными показателями масштабируемости ГРИД-системы являются:

- масштабируемость по отношению к размеру системы. Система масштабируема по отношению к размеру, если способна обеспечивать простоту подключения к системе новых узлов.

- географическая масштабируемость. Система географически масштабируема, если к ней возможно подключение новых узлов, без ограничения по географическому признаку (страна, город, дата-центр и т.п.), т.е. система обеспечивает подключение глобально распределенных узлов [Распределенные системы. Принципы и парадигмы Э. Таненбаум, М. Bан Стеен. СПб.: Питер, 2003.].

Масштабируемость управления. Система масштабируема в аспекте управления ресурсами, если при росте общего количества узлов в системе, ее администрирование не усложняется. Для решения задачи масштабируемости ГРИД-системы необходимо решить большое количество проблем.

Основными проблемами масштабируемости ГРИД-систем являются следующие проблемы.

Проблема наращивания количество узлов системы, что не всегда возможно вследствие ограниченности служб, алгоритмов, поскольку зачастую многие службы настроены на работу с конкретным количеством оборудования (конкретного сервера, конкретной архитектуры). Таким образом имеется проблема централизации, как ресурсов, так и служб.

Проблема ограниченности возможностей сервера, который выполняет агрегирование данных, собранных с узлов ГРИД-системы в общее глобальное представление.

Проблема ограниченности сетей передачи данных. Поскольку при географической масштабируемости узлы ГРИД-системы могут находиться в географически отдаленных точках, то при проектировании и эксплуатации таких систем возникает проблема надежности сетей передачи данных. При низких скоростях передачи данных возможно снижение общей надежности и производительности систем.

Проблема ограниченности алгоритмов обработки данных. Для функционирования ГРИД-системы необходимо использовать методы и алгоритмы сбора данных с узлов системы, которые бы минимально перегружали коммуникационную сеть.

Проблема переносимости программного обеспечения. Проблема переносимости ПО является одним из ключевых сдерживающих факторов развития и дальнейшего масштабирования распределенных систем и состоит в невозможности запуска созданного приложения на различных архитектурах. Вопрос переносимости ПО особенно остро стоит в глобально распределенных системах, где в качестве узлов может использоваться гетерогенное оборудование, работающее под различными ОС. Например, для объединения вычислительных машин в одну глобальную вычислительную ГРИД-систему потребуется отдельное клиентское приложение для каждого вычислительного узла, учитывающее специфику его архитектуры и ОС.

1.3 Обзор существующих научных разработок по ОООНЭ ГРИД-систем при их эксплуатации

Рассмотренные проблемы является обобщенным, в тоже время для каждой конкретной ГРИД-системы присущи свои проблемы, мы же рассмотрели наиболее общие проблемы, которые наиболее часто встречаются при эксплуатации и проектировании ГРИД-систем.

Учитывая специфику ГРИД-систем и гетерогенность оборудования и архитектуры систем, не существует единого метода проектирования, который обеспечивал бы решение вышеперечисленных проблем.

В настоящее время на рынке ПО представлено достаточно программных средств как для сбора статистики, так и для обновления ПО. Для разработчиков представляют методы балансирования нагрузки на узлы системы и методы восстановления данных в случае возникновения ошибок.

В настоящее время существует достаточное количество решений по организации ГРИД-систем. Поскольку большинство транзакций в таких системах происходит через открытые коммутационные среды, возникает ряд проблем эксплуатации, связанных с безопасностью ГРИД-систем.

Традиционные меры обеспечения безопасности основаны на изоляции систем и защите ресурсов за счет выполнения правил, которые ограничивают действия пользователей. Но такой подход противоречит основному требованию к ГРИД-системе - совместному использованию ресурсов независимо от географических рубежей и корпоративных границ.

Современные подходы к организации механизма защиты информации в компьютерных системах основаны на централизации средств защиты (сертификационные агентства, службы регистрации и авторизации, единые для всей системы). Однако это накладывает определенные ограничения при динамическом масштабировании ГРИД-систем. Основные требования безопасности, которые предлагается использовать при разработке Грид-систем, входят в стандарт Security Architecture for Open Grid Services, который был разработан Open Grid Forum, и на текущее время Globus Toolkit (GT) представляет собой широко распространенную версию этого стандарта.

Анализ функционирования ГРИД-систем, проведенный [], показал, что важнейшей проблемой обеспечения безопасности систем является определение показателей доверия к узлам системы. Уровни доверия можно определить непосредственно по опыту работы Грид-системы и по информации, полученной от оцениваемых узлов, входящих в систему. В качестве решения этой проблемы Мухиным В.Е. в работе [Мухин В.Е. Средства защиты GRID-систем на основе дифференцирования уровня доверия к узлам системы // Искусственный интеллект, Донецк. - 2003. - №3. - С. 187-196.] предложено ввести понятия сервера-хранилища метрик доверия и вектора репутации узлов, с помощью которых формируются следующие показатели доверия:

a) усредненный показатель доверия к i-му узлу

б) общий показатель доверия

,

где Tji - показатель доверия j-го узла к i-му;

nj - количество транзакций с j-м узлом;

Wi - i-e значение вектора репутации узла.

Показатель доверия определяется в интервале (0,1), при этом значение 0 соответствует полному отсутствию доверия, а значение 1 - полному доверию узлу со стороны Грид-системы.

Эффективность. Для многих Грид-систем эффективность является одной из основных целей их создания. Поскольку ГРИД-системы состоят из разнородных ресурсов, включающих иерархии вычислительных узлов с различной производительностью, каналы связи с различной пропускной способностью и различные системы памяти, то они могут затруднять достижение высокой эффективности использования ресурсов и высокой производительности (быстродействия). Соотношение между объемами информационных обменов и объемами выполняемых вычислений, которое может поддержать типичная ГРИД-система, может затруднить разработку ПО для тесно-связанных систем. Но для многих приложений не менее важным является достижение не просто высокой производительности, а надежной производительности.

Динамически-разнородная среда может давать большой разброс в оценках производительности системы, и иногда такой разброс недопустимым. Поэтому в условиях общедоступной ГРИД-среды качество обслуживания процессов в системе является необходимым условием достижения надежной производительности для системы программирования на данной архитектуре ресурсов. Для некоторых проектов потребители могут выдвигать требования фактически детерминированной модели производительности, поэтому более приемлемым может стать вариант получения надежной производительности в пределах некоторых статистических границ.

Отказоустойчивость. Динамизм вычислений в Грид-системе требует обеспечения некоторого допустимого уровня отказоустойчивости. Это особенно актуально для высоко распределенных программ (например, метод Монте-Карло), в которых могут инициализироваться тысячи подобных независимых заданий на тысячах компьютеров. Разумеется, что увеличение количества ресурсных единиц повышается вероятность отказа в системе. Приложения ГРИД-систем должны иметь способность проверить исправности коммуникаций и вычислительных ресурсов в процессе выполнения программ и обеспечивать на программном уровне реакции на ошибки или действия по восстановлению вычислений. При этом в условиях неисправностей инструментальные средства могут обеспечивать минимальный уровень достоверных вычислений, которые реализуются, в основном, механизмами времени выполнения.

Надежность. Грид-системы при выполнении обычно пересекают границы многих административных областей, используя общедоступные ресурсы, такие как компьютерные сети. Если важным является обеспечение строгой аутентификации между двумя узлами, то в Грид-системе не редки случаи, когда приложение включает большое количество программно-управляемых узлов. Фактически имеется необходимость отслеживать деревья запросов произвольной глубины, в которых отбор ресурсов решается динамически. Поэтому механизмы защиты, которые обеспечивают удостоверение подлинности и секретность, должны быть неотъемлемой частью модели Грид-систем.

1.4 Обзор существующих научных разработок по ОООНЭ ГРИД-систем при их проектировании

Независимо от того, как в конечном счете развертываются Грид-системы, они состоят из компонентов и сервисов, которые являются или постоянными (persistent), или могут быть установлены (instantiated). Некоторые из этих компонентов и сервисов уже широко используются. Поэтому многие приложения строят с помощью композиции компонентов и сервисов.

На компиляторы и инструментальные средства композиции возлагают ответственность за генерирование метамоделей и их использование для идентификации композиций и их приведение к допустимому виду. В контексте Грид-системы термин «допустимый» может означать выполнение характеристик эффективности, безопасности и отказоустойчивости. На основе высокоуровневого описания программы (например, как в сценарном языке порталов), компилятор может отображать семантику высшего уровня на компоненты низшего уровня и сервисы.

Примером работы в области создания ГРИД-приложений является разработка инструментальных программных средств для приложений Грид (GrADS) [].

Подход GrADS основан на:

1) системе подготовки программ;

2) системе выполнения программ.

Система подготовки программ воспринимает на вход программу пользователя вместе с повторно используемыми компонентами и библиотеками и создает конфигурируемую объектную программу. Объекты этой программы аннотируются требованиями ресурсов и прогнозируемой производительностью. Среда выполнения использует данную информацию для выбора соответствующих ресурсов для выполнения, и также для контроля производительности приложения согласно с «контрактом».

Приложения Грид-систем должны уметь проводить удостоверение подлинности (аутентификацию), проверку полномочий (авторизацию), проверку целостности и секретность. Базисная двухточечная защита может быть выполнена путем интеграции механизма защиты с конструкциями программирования.

Примером может служить интеграция SOAP с GSI. В широком контексте, вызовы RMI или RPC могут существовать в дереве вызовов, а поддержка безопасности вдоль дерева вызовов требует использования оценки и делегирования доверия.

Принятие и проверка сертификатов на RPC также представляет собой накладные расходы, которые должны быть сбалансированы с количеством работ, представленных RPC. Накладные расходы по защите могут управляться путем установления безопасного доверительного домена.

1.5 Постановка задачи исследования

Вопросы надежности, отказоустойчивости и эффективности в моделях и инструментальных средствах проектирования ГРИД-систем в значительной степени в настоящее время еще не исследованы, кроме простых механизмов контрольных точек и рестарта. Проблема состоит в том, как сделать модели и инструментальные средства проектирования ГРИД-систем более достоверными, отказоустойчивыми и эффективными.

Имеющиеся различия между надежностью и отказоустойчивостью приложения, модели или инструмента проектирования ГРИД-системы выдвигают требование обеспечения надежности и отказоустойчивость как на верхнем уровне, так и на всех нижних уровнях системы.

Модель должна обеспечивать обнаружение неисправностей, извещение о неисправности и устранение неисправности.

В распределенной ГРИД-системе актуальна способность как обнаружения неисправностей, так и распространения извещения о неисправности на соответствующие узлы системы. Кроме того, узлы ГРИД-системы должны обладать способностью самовосстановления или самоограничения последствий неисправностей.

Выдвинутые требования могут быть реализованы в модели проектирования ГРИД-системы путем интегрирования модели событий.

В задачи исследования входит:

Описание параметров и признаков состояний ГРИД-системы

Описание образов состояний ГРИД-системы в пространстве признаков

Выбор математической модели динамики показателей отказоустойчивости, надежности и эффективности ГРИД

Анализ динамики показателей ГРИД и выбор метода обеспечения отказоустойчивости, надежности и эффективности.

Анализ методов оценки параметров отказоустойчивости, надежности и эффективности ГРИД-системы

Формирование критериев оценки параметров отказоустойчивости, надежности и эффективности ГРИД-системы и алгоритмов оценки их динамики.

Разработка модели и алгоритма принятия решения по управлению отказоустойчивостью, надежностью и эффективностью ГРИД-системы.

Разработка общего алгоритма функционирования модели.

Проведение испытаний модели динамики показателей отказоустойчивости, надежности и эффективности ГРИД и алгоритма оценки динамики критериев.

Проведение испытаний модели и алгоритма принятия решения по управлению отказоустойчивостью, надежностью и эффективностью ГРИД-системы и общего алгоритма функционирования модели.

2. Общий подход к моделированию предметной области

2.1 Общая классификация ГРИД-систем и их состояний

Основными на данный момент технологиями реализации РВС являются Grid и облачные системы [1]. Grid-система является программно-аппаратной инфраструктурой, которая обеспечивает надежный и прозрачный доступ к вычислительным ресурсам. Выделение вычислительных ресурсов, наряду с обеспечением взаимодействия гетерогенных платформ и операционных систем вычислительных узлов, являются центральными проблемами при построении Grid - систем [2].

Идея Grid-технологий возникла в 1990-е годы как второе поколение распределенных вычислительных систем. Первоначально они существовали в виде Volunteer Computing - это форма реализации Grid-вычислений, особенность которой заключается в использовании «свободных» ресурсов компьютеров обычных пользователей по всему миру. Однако сегодня системы, построенные на принципах Grid Computing, создаются чаще всего внутри предприятий - в основном по соображениям безопасности [3]. Такая форма организации Grid-системы получила название корпоративные Grid-системы (Enterprise Grid Computing) и используется для запуска коммерческих приложений. Главными минусами такой системы являются сложность развертывания вычислительного кластера, а также довольно высокая стоимость закупки оборудования и обслуживания уже готовой системы. Поэтому в качестве альтернативы данной форме построения Grid-вычислений в рамках предприятия используется технология Enterprise Desktop Grid.

Термин ГРИД стал использоваться с середины 90-х годов для обозначения некоторой инфраструктуры распределенного компьютинга, предлагаемой для обслуживания передовых научных и инженерных проектов. Одни понимают под ГРИД-системой географически распределенную инфраструктуру, объединенную в единую вычислительную сеть или «мегакластер», другие - колаборационную среду, состоящую из совокупности виртуальных организаций (ВО) и им принадлежащих ресурсов (сетевых, вычислительных и т.д.) [1]. На наш взгляд, наиболее точно определить ГРИД можно как систему, связанную с функциями интеграции, виртуализации и управления службами и ресурсами в распределенной гетерогенной среде, которая поддерживает совокупность пользователей и ресурсов (виртуальные организации) на совокупности традиционных административных и организационных доменов (фактических организаций) [2] (перевод [1] см. на сайте http://gridclub.ru).

Рис. 2.1. Эволюция сетевых технологий

За время эволюции информационных технологий сама ГРИД не обособилась в отдельную сетевую вычислительную структуру, а напротив, за счет существующих прогрессивных технологий (протоколов) расширила области практического применения далеко за рамки чисто научных расчетов (см. Рис. 2.1) и из сферы e-Science перешла в e-Business.

Именно благодаря своей компонентной архитектуре и требованиям к существующим протоколам не составляет особого труда «развернуть» ГРИД-кластер в рамках отдельных организаций и осуществлять его дальнейшее расширение за счет присоединения дополнительных ресурсов.

Современный этап развития в области высокопроизводительных суперкомпьютерных систем и вычислений в настоящее время представлен не только классическими специализированными электронно-вычислительными машинами, значительно превосходящими по своим техническим характеристикам большинство существующих в мире компьютеров. Но и довольно специфичной технологией высокопроизводительных вычислений, основанной на базе независимых персональных компьютеров объединённых с помощью сети в один кластер.

Технология GRID - это набор независимых, разнородных компьютеров, объединенных с помощью сети в одну вычислительную систему, предназначенную для решения трудоемких вычислений и обработки данных. С одновременным привлечением к работе огромного числа вычислительных ресурсов в виде персональных компьютеров, работающих одновременно над разными частями задачи.

Важную роль в Грид-технологии играет концепция виртуализации, которая поддерживает согласованный доступ к ресурсам на множестве гетерогенных платформ, позволяет определять отображение множества логических экземпляров ресурсов на один и тот же физический и помогает управлению ресурсами в VO (Virtual Organization), обеспечивая композицию из ресурсов более низкого уровня, объединяет базовые сервисы и позволяет формировать более сложные сервисы.

Виртуализация Грид-сервисов позволяет легко отображать общее семантическое поведение сервисов на оригинальные механизмы платформы.

В свою очередь VO представляtт собой форму обьединение ресурсов и пользователей, ориентированных на выполнение определенных задач и предоставление определенных сервисов.

К основным областям применения Грид-систем относят научные исследования, аэрокосмическая и автомобильная промышленность, архитектура, электроника, энергетика, финансово-банковская инфраструктура, медицина и биотехнологии, производство, медиа-развлечения.

На основании анализа указанных областей применения Грид-систем можно утверждать, что основными ресурсами, которые будут запрашиваться для решения поставленных задач будут вычислительные ресурсы, ресурсы для хранения данных, специальные аппаратные ресурсы и уникальное оборудование.

Существует несколько типов Грид-систем. Все эти системы обладают общим свойством с все они предоставляют ресурсы посредством сервисов. Но каждая из этих Грид-систем оптимизирована для предоставления различной функциональности.

При этом различают [1, 2, 7]:

1) Вычислительные Грид (Computational Grid) с для объединения вычислительной мощности тысяч персональных компьютеров и серверов и создания, таким образом, среды предоставляющей суперкомпьютерный уровень производительности.

2) Грид Данных (Data Grid) с предоставляют ресурсы для распределенной обработки данных, что позволяет выполнять глубокий анализ распределенных, больших по объему и часто разнотипных баз данных без их физического перемещения.

3) Семантические Грид (Semantic Grid) с предоставляют инфраструктуру для выполнения вычислительных задач на основе распределенного мета-информационного окружения, позволяющего оперировать данными из разнотипных баз данных, различных форматов, представляя результат в формате, определяемом приложением.

Используя данные мониторинга GRID-систем, к примеру, по состоянию на 15 мая 2016 года в проекте распределённых вычислений Folding@Home активны около 220 000 CPU, 23 000 GPU. Чья суммарная производительность составляет 7 петафлопс. В 2007 году книга рекордов Гиннесса признала проект Folding@Home самой мощной сетью распределённых вычислений. По состоянию на декабрь 2014 года проект Folding@Home занимал вторую строчку мирового рейтинга самых мощных систем распределённых вычислений, уступая лишь Bitcoin, мощность которого составляет 161 петафлопс.

Для сравнения, первую строчку в мировом рейтинге суперкомпьютеров TOP500 2015 года занимает китайская система <<Tianhe-2>> с мощностью около 54 петафлопс, второе место у <<Titan>> с мощностью 27 петафлопс.

Главнейший козырь данной системы в том, что её можно развернуть на любом персональном компьютере, подключённому к сети в любой части света. Также можно превратить любую, уже существующую локальную сеть в отдельный кластер и принять участие в общих расчётах, либо превратить отдельный кластер в супер компьютер и ставить перед ним собственные задачи.

Принципиальной новизной данной технологии является надёжность, гибкость, скоординированность и безопасность объединения разрозненных ресурсов путем создания специального стандартизированного программного обеспечения, а также набора стандартизованных сервисов и служб, обеспечивающих надежный доступ к географически распределенным вычислительным ресурсам отдельных персональных компьютеров и уже объединённых в сеть локальных кластеров.

Под разрозненными ресурсами понимаются не только процессорные ресурсы или ресурсы хранения информации, но и сетевые ресурсы, а также системное или прикладное программное обеспечение.

В русском языке иногда называются системами метакомпьютинга (метавычислений).

В настоящее время выделяют три основных направления GRID-систем:

Добровольные GRID-системы - GRID-системы на основе использования добровольно предоставляемого свободного ресурса персональных компьютеров;

Научные GRID-системы - Похожи на добровольные GRID-системы, главным критерием в которых выступает научная польза от совместных расчётов.

Коммерческие GRID-системы - на основе коммерческих приложений, выделение вычислительных ресурсов происходит по требованию заказчика.

В настоящее время существует несколько проектов по разработке систем распределённых вычислений GRID. Среди них наиболее известны: Bricks, MicroGrid, OptorSim, SimGrid и GridSim. Данные системы обладают как достоинствами, так и недостатками.

Одним из наиболее распространенных в настоящее время программных средств для реализации GRID является пакет Globus Toolkit. Пакет Globus Toolkit разрабатывается, поддерживается и продвигается международным альянсом разработчиков из университетов США и Великобритании, а также научных лабораторий и вычислительных центров. Globus Toolkit является свободно распространяемым продуктом с открытым исходным кодом программного пакета и предлагает базовые средства для создания Grid инфраструктуры: средства обеспечения безопасности в распределенной среде, средства надежной передачи больших объемов данных, средства запуска и получения результатов выполнения задач на удаленных вычислительных ресурсах. На базе пакета Globus Toolkit создаются промышленные версии реализаций GRID-инфраструктуры, например, такие как Univa и Platform Globus Toolkit.

Folding@Home (F@H, FAH) - проект распределённых вычислений для проведения компьютерного моделирования свёртывания молекул белка. Проект запущен 1 октября 2000 года учёными из Стэнфордского университета. По состоянию на июль 2008 года - это крупнейший проект распределённых вычислений, как по мощности, так и по числу участников.

Цель проекта с помощью моделирования процессов свёртывания/ развёртывания молекул белка получить лучшее понимание причин возникновения болезней, вызываемых дефектными белками, таких как Альцгеймера, Паркинсона, диабет 2 типа, болезнь Крейтцфельдта - Якоба (коровье бешенство), склероз и различных форм онкологических заболеваний. К настоящему времени проект Folding@home успешно смоделировал процесс свёртывания белковых молекул на протяжении 5-10 мкс - что в тысячи раз больше предыдущих попыток моделирования.

По результатам эксперимента вышло чуть менее 200 научных работ.

Клиентская программа Folding@Home запускается в фоновом режиме и выполняет вычисления лишь в то время, когда ресурсы процессора не полностью используются другими приложениями.

Программа-клиент Folding@home периодически подключается к серверу для получения очередной порции данных для вычислений. После завершения расчётов их результаты отсылаются обратно.

Участники проекта могут видеть статистику своего вклада. Каждый участник может запустить программу-клиент на одном или более компьютерах, может вступить в одну из команд.

SETI@home - научный, добровольческий, некоммерческий проект на платформе BOINC, использующий свободные вычислительные ресурсы на компьютерах добровольцев для поиска радиосигналов внеземных цивилизаций.

Один из подходов поиска внеземных цивилизаций SETI Radio Searches, использует радиотелескопы для поиска узкополосных радиосигналов из космоса. Предположительно, внеземная цивилизация будет использовать и если в радиосигнале будут периодически повторяющиеся элементы, их будет несложно обнаружить. Эти повторяющиеся сигналы предположительно должны иметь искусственную природу и, соответственно, их обнаружение косвенно подтвердит присутствие внеземной технологии. Сигналы, получаемые радиотелескопом, преимущественно состоят из шума, производимого небесными объектами, радиоэлектроникой, спутниками, телевизионными вышками и радарами.

Современные проект SETI в радиодиапазоне используют цифровые технологии для анализа данных. Для Radio SETI требуется невероятная вычислительная мощность, потому что расчёт преобразования Фурье - крайне ресурсоёмкая задача, а в данном случае она помножена на огромное количество поступающей информации.

В предыдущих проектах SETI Radio Searches использовались специализированные суперкомпьютеры, установленные на радиотелескопах и анализировавшие огромный объём поступающей информации.

В 1994 году Дэвид Геди, работающий в программе SERENDIP Калифорнийского Университета в Беркли, предложил использовать виртуальный суперкомпьютер, состоящий из большого числа имеющих доступ к интернету, персональных компьютеров и организовал проект SETI@home для проверки этой идеи. Научный план, который разработали Дэвид Геди и Крейг Каснофф из Сиэтла, был представлен на пятой международной конференции по биоастрономии в июле 1996 года

SETI@home стартовал 17 мая 1999 года. Эта версия, именуемая в дальнейшем SETI@Home Classic, просуществовала до 15 декабря 2005 года.

Далее проект продолжается только с использованием платформы BOINC.

С 3 мая 2006 года используется клиентское программное обеспечение SETI@home Enhanced.

Клиентское программное обеспечение с открытым исходным кодом (GNU General Public License) и каждый желающий участник проекта может внести свой вклад не только в расчёты, но и в разработку и тестирование программного обеспечения. Поэтому клиентское обеспечение доступно для большинства из популярных операционных систем и типов центральных процессоров.

Climate Prediction - проект, который пытается предсказать погоду на 50 лет вперёд. Основываются предсказания на старых теориях и схемах. Проект ставит перед собой 2 цели:

- Установить какова точность и эффективность используемых сейчас методик.

- Предсказать погоду на наибольший период, если методики расчётов эффективны.

Участникам, придётся скачать программу, моделирующую различные погодные условия на Земле. Среди полученных результатов сначала отберут те, которые наиболее соответствуют результатам в прошлом, до 2000 года, и уже на их основе выстроят модель изменения климата в будущем.

RainbowCrack - проект создаёт базу по всем возможным видам паролей и соответствующим им хэшам по всем распространённым в мире алгоритмам хэширования. Что в будущем позволит получить систему, которая сможет с помощью быстрого бинарного поиска по таблице соответствий хешей получать обратное преобразование хэша в пароль для любого существующего алгоритма хэширования за считанные секунды.

Сейчас в проекте создано сотни гигабайт всех возможных паролей, которые позволяют с вероятностью порядка 99% найти за несколько минут обратное преобразование из хэша в любой пароль длиной до 7 символов (не только из букв, но также цифр и многих спец-символов), зашифрованных по алгоритмам LanMan, MD2, MD4, MD5, SHA1, RIPEMD-160, Cisco PIX, MySQL 3.23, MySQL SHA1.

Обычно на расчёт таблицы уходит от нескольких дней до недели процессорного времени (2 ГГц) - за каждую расшифрованную таблицу паролей, предоставляется доступ к базе паролей.

Distributed Internet MEasurements & Simulations - проект занимается построением подробной карты интернета. Клиент DIMES выполняет измерения состояния сети, такие как traceroute или ping. Результат можно наблюдать в реальном времени, как клиент выполняет визуальную трассировку пути.

Great Internet Mersenne Prime Search - цель проекта, поиск новых простых чисел Мерсенна. GIMPS намеревается выиграть награду в $100000, обещанную Electronic Frontier Foundationза нахождение простого числа из более, чем 107 десятичных цифр.

Из суммы приза планируется сделать выплаты всем «открывателям» предыдущих простых чисел Мерсенна, авторам программного обеспечения и авторам эффективных алгоритмов простых чисел Мерсенна.

Пользователю, чей персональный компьютер, <<найдёт>> то самое простое число, полагается остаток, который будет гарантированно не меньше $25000.

Majestic-12 - целью проекта стала тотальная индексация страниц для создания всемирной индексной базы интернета. Один компьютер в день может проиндексировать более миллиона страниц в день, что позволит при успешном развитии проекта пользоваться для поиска необходимой информации, базой данных вдвое больше чем у всех поисковых систем вместе взятых.

Представленные результаты использования GRID-систем говорит о многом. Уже на стадии прототипа сети распределенных вычислений нашли свое применение в науке. Моделирование сложных процессов, обработка большого объема данных и тому подобные задач требуют вычислительных мощностей, которые зачастую не способны предоставить суперкомпьютеры. Возможности данной технологии, при правильной стратегии управления потоками задач, развитии и поиске новых алгоритмов, безграничны в сфере моделирования, вычислений и решений задач. И требуют пристального внимания и развития.

В настоящее время возросла потребность в масштабных расчетах уже не только в научных целях, но и на производстве. Это требует большой вычислительной мощности, и такие расчеты можно осуществить с помощью распределенных вычислительных систем (РВС).

Enterprise Desktop Grid также представляет вычислительную систему, построенную с помощью коммуникационной сети организации, но в основе неё лежит набор географически распределенных ПК. Данная технология позволяет организациям использовать незадействованные вычислительные ресурсы, принадлежащих им настольных компьютеров для создания виртуальных суперкомпьютеров без дополнительных инвестиций в оборудование. При этом общая производительность подобных систем может достигать нескольких петафлопс.

Современное состояние Grid-систем

В конце 90-х появилась идея создания стандарта архитектуры Grid-систем. В качестве такого стандарта в 2001 году была предложена архитектура веб-сервисов. Созданный стандарт получил название Open Grid Services Architecture (OGSA). Концепция OGSA состоит в том, что каждый вычислительный узел системы является службой: то есть сущностью, доступной через сеть и имеющей некоторую функциональность, реализуемую путём обмена сообщениями [3]. В настоящее время, существуют две системы, предоставляющие все инструменты для разработки Grid-систем в соответствии со стандартом OGSA: Globus Toolkit и UNICORE.

На основе OGSA и Globus Toolkit построено большинство современных Grid-систем, которые нашли свое применение как в сфере научных исследований, так и в бизнес-среде. Подобные корпоративные решения позволяют применяющим их предприятиям получать важное стратегическое преимущество при ведении своей деятельности. Рассмотрим актуальные на данный момент проекты Grid-систем.

SETI@Home Grid System - научный проект, использующий свободные вычислительные ресурсы, добровольно предоставляемые простыми пользователями со всего мира. Система построена на базе программной платформы Berkeley Open Infrastructure для сетевых вычислений (BOINC). Клиентская часть проекта имеет открытый исходный код, и каждый член проекта может внести свой вклад в разработку ПО [4].

Aneka - сервис-ориентированная платформа на основе.NET для построения корпоративных Grid и Cloud Computing систем от разработчиков популярной системы Alchemi. Aneka был задуман с целью предоставления набора инструментов и услуг, которые значительно упрощают развертывание распределенных приложений без ущерба для их работы, масштабируемости и надежности [5].

Oracle Enterprise Manager (OEM) - комплексное решение для централизованного управления системами, созданными на основе продуктов Oracle, включая базы данных, серверы приложений, HTTP серверы, Интернет-приложения и т.д. Этот пакет позволяет администратору выполнять основные операции по управлению БД и сервера приложений Oracle [6].

NVIDIA GRID - это самая современная технология совместного использования аппаратного ускорения на GPU несколькими пользователями без ущерба для графических возможностей с гарантией полной совместимости приложений. IT-менеджеры могут распределять необходимые объемы памяти и предоставлять индивидуально настроенные профили, соответствующие требованиям каждого пользователя [7].

SAS Grid Manager - система распределенных вычислений, которая позволяет создать общую, централизованно управляемую вычислительную среду, которая обеспечивает доступность данных и высокую скорость их обработки. Среда SAS Grid обеспечивает гибкость, возможность с течением времени постепенно наращивать вычислительную инфраструктуру (т.е. количество пользователей) и размер обрабатываемых данных [8].

Techila - коммерческий проект Grid-вычислений. Система решает проблемы, связанные с развертыванием и работой приложений для параллельных вычислений. Решение построено вокруг запатентованной технологии автономных вычислений, которая создает самоуправляемую и масштабируемую вычислительную среду для доступа и управления ИТ-ресурсами для различных высокопроизводительных вычислений [9].


Подобные документы

  • Сущность и задачи системы грид их практическое применение. Основные идеи, заложенные в концепции грид-вычислений. Уровни архитектуры грид, их характеристика. Технология облачных вычислений. Промежуточное программное обеспечение в распределенных системах.

    контрольная работа [736,9 K], добавлен 06.01.2013

  • Цели и задачи проектирования информационной системы, основные требования к ней, внутренняя структура и взаимосвязь отдельных компонентов. Обзор и анализ существующих программных разработок. Обоснование стратегии автоматизации и технологии проектирования.

    курсовая работа [3,3 M], добавлен 12.01.2015

  • Внедрение информационных систем взаимодействия с клиентами. Назначение автоматизированного варианта решения задачи. Анализ существующих разработок и обоснование выбора технологии проектирования. Расчет и обоснование экономической эффективности проекта.

    дипломная работа [7,5 M], добавлен 11.12.2020

  • Системный подход как метод анализа объектов в процессе проектирования, задачи: принятия оптимального решения, разбиение задачи на части. Анализ требований, предъявляемых к проектам технических систем: эргономические, патентно-правовые, экономические.

    лекция [149,3 K], добавлен 13.08.2013

  • Анализ существующих разработок и обоснование выбора технологии проектирования. Проектирование подсистемы кадрового учета. Выбор и обоснование методики расчета экономической эффективности автоматизированной системы кадрового учета на предприятии.

    дипломная работа [1,9 M], добавлен 09.02.2018

  • Сущность и основные принципы эффективности автоматизированных информационных систем (АИС). Общая характеристика надежности и архитектуры АИС "Бюджет", анализ и оценка ее функциональных возможностей, экономический эффективности и системы защиты информации.

    дипломная работа [1,7 M], добавлен 24.07.2010

  • Описание проектного решения стратегической системы, этапы объектно-ориентированного анализа и проектирования. Описание связей между объектами. Программная реализация, построение модели состояний объекта. Руководство пользователя и описание программы.

    курсовая работа [388,8 K], добавлен 17.11.2011

  • Принципы построения автоматизированных обучающих систем, их классификация, обзор существующих вариантов. Описание социальной программы поддержки населения "Твой курс", проектирование информационной системы по обучению населения компьютерной грамотности.

    курсовая работа [1,5 M], добавлен 12.09.2012

  • Общая характеристика организации решения задачи на ЭВМ, формализация расчетов, анализ существующих разработок и обоснование выбора технологии проектирования. Информационная модель задачи и ее описание, используемые классификаторы и системы кодирования.

    дипломная работа [5,0 M], добавлен 20.10.2016

  • Анализ и проектирование информационных систем. Структурное и функциональное моделирование (Visio). Информационная модель базы данных для проектирования. Задача анализа статических состояний объекта проектирования (системы линейных и нелинейных уравнений).

    курсовая работа [3,8 M], добавлен 05.04.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.