Научная статья на тему 'Организация брокера ресурсов в системе CAEBeans'

Организация брокера ресурсов в системе CAEBeans Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
155
39
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
САЕ / САЕВЕАN / ГРИД-ОБОЛОЧКА / СЕРВИСНО-ОРИЕНТИРОВАННАЯ АРХИТЕКТУРА / СИСТЕМНЫЙ СЛОЙ / БРОКЕР РЕСУРСОВ / CAE / CAEBEAN / GRID-SHELL / SERVICE-ORIENTED ARCHITECTURE / SYSTEM LAYER / RESOURCES BROKER

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шамакина А. В.

Представлена организация брокера ресурсов в системе CAEBeans. Технология CAEBeans предназначена для построения иерархии проблемно-ориентированных грид-оболочек CAEBeans над инженерными пакетами. Дано описание алгоритма работы брокера ресурсов. Представлены структура XML-запросы CAEBeans Server к брокеру ресурсов и алгоритмы планирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Organization of the Resources Broker in the Caebeans System

We present the organization of resources broker in the CAEBeans system. The CAEBeans is destined for problem-oriented grid-shells hierarchy building over the CAE. We describe the algorithm of work of the resource broker. We consider the structure of XML-queries from the CAEBeans Server to the resource broker and algorithms of planning.

Текст научной работы на тему «Организация брокера ресурсов в системе CAEBeans»

УДК 004.45

ОРГАНИЗАЦИЯ БРОКЕРА РЕСУРСОВ В СИСТЕМЕ CAEBEANS

А.В. Шамакина

ORGANIZATION OF THE RESOURCES BROKER IN THE CAEBEANS SYSTEM

A.V. Shamakina

Представлена организация брокера ресурсов в системе CAEBeans. Технология CAEBeans предназначена для построения иерархии проблемно-ориентированных грид-оболочек CAEBeans над инженерными пакетами. Дано описание алгоритма работы брокера ресурсов. Представлены структура XML-запросы CAEBeans Server к брокеру ресурсов и алгоритмы планирования.

Ключевые слова: САЕ, САЕВеап, грид-оболочка, сервисно-

ориентированная архитектура, системный слой, брокер ресурсов

We present the organization of resources broker in the CAEBeans system. The CAEBeans is destined for problem-oriented grid-shells hierarchy building over the CAE. We describe the algorithm of work of the resource broker. We consider the structure of XML-queries from the CAEBeans Server to the resource broker and algorithms of planning.

Keywords: CAE, CAEBean, grid-shell, service-oriented architecture, system layer, resources broker

Введение

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

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

ресурсов и пользователями в соответствии с выбранными ими стратегиями [1]. Для решения этой проблемы создаются системы управления ресурсами Grid [2].

Однако ни одна из ранее созданных систем управления ресурсами не удовлетворяет специфике системы CAEBeans [3,4], в рамках которой необходимо учитывать не только характеристики ресурсов, но и наличие уста-новленных инженерных пакетов, количество доступных лицензий на них и др. В системе CAEBeans в качестве Grid Middleware был выбран Unicore 6.0 [5].

Брокер ресурсов принимает задания от CAEBeans Server, согласовывает требования к ресурсам и на-правляющий задания на подходящий вычислительный элемент. Можно выделить следующие основные задачи брокера ресурсов: обработка каталога ресурсов грид-среды; анализ запросов на предоставление ресурсов, поступающих от CAEBeans Server; сбор и предоставление информации об актуальном состоянии грид-среды [6]. В работе предложены новый алгоритм работы брокера ресурсов и алгоритмы планирования.

Статья организована следующим образом. В разделе 1 приводится описание основных концепций технологии CAEBeans, рассматриваются основные особенности слоистой архитектуры системы CAEBeans. Раздел 2посвящен краткому описанию структуры системы CAEBeans. В разделе 3приведен алгоритм работы брокера ресурсов в системе CAEBeans. В заключении суммируются основные результаты и описаны направления дальнейшей работы.

1. Технология CAEBeans

В работе [7] описана технология CAEBeans, которая ориентирована на инкапсуляцию и предоставление ресурсов CAE-пакетов в рамках грид-среды. В основе данного подхода лежит процесс построения дерева проблемно-ориентированных оболочек CAEBeans над САЕ пакетом на основе классификации типовых задач.

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

Проблемный САЕВеап предназаначен для взаимодействия пользователя с системой CAEBeans. Посредством пользовательского интерфейса проблемного САЕВеап пользователь может произвести постановку инженерной задачи; проследить за ходом решения поставленной задачи; получить требуемые результаты решения.

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

Компонентный САЕВеап инкапсулирует процесс постановки и решения конкретной подзадачи компьютерного моделирования посредством определенного базового компонента.

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

2. Структура системы CAEBeans

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

выделить следующие основные программные продукты, входящие в состав системы CAEBeans.

• CAEBeans-портал - web-портал, предназначенный для постановки пользователями задачи в системе CAEBeans.

• CAEBeans Server - web-сервис XML, который обеспечивает выполение задачи пользователя, отвечает за хранение и интерпретацию САЕ-проектов.

• CAEBeans брокер - автоматизированная система регистрации, анализа и предоставления ресурсов распределенной вычислительной среды.

На рис. 1 приведены основные компоненты системы CAEBeans. Пользователь проходит аутентификацию на САЕВеапэ-портале, выбирает необходый проект из списка доступных для выполнения проектов. Автоматически генерируется web-форма для потокового САЕВеап данного проекта. Пользователь указывает параметры задачи и производит постановку задачи на выполнение. Данные web-формы передаются CAEBeans Server, который находит в своей базе данных проект САЕВеап, соответствующий проблемному САЕВеап пользователя. Затем CAEBeans Server выполняет потоковый САЕВеап из проекта: формирует и делает постановку подзадачи на CAE-ресурс. Для получения ресурсов, необходимых для решения каждой конкретной подзадачи CAEBeans Server взаимодействие с брокером CAEBeans. После получения результатов решения CAEBeans Server передает их пользователю по его запросу.

¥

ГРИД

Рис. 1. Взаимодействие основных компонентов системы CAEBeans 3. Алгоритм работы брокера ресурсов

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

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

Под целевой системой будем понимать совокупность аппаратных ресурсов вычислительной системы, операционной системы, инженерных пакетов и системных САЕВеап, которые играют роль грид-оболочек над инженерными пакетами.

На целевой системе в качестве Grig Middleware должен быть установлен Unicore 6.0. Тогда системный САЕВеап - это вид сервиса Unicore, предназначенный для работы с инженерными пакетами, на данной целевой системе.

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

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

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

Рис. 2. Схема работы брокера ресурсов

1. CAEBeans Server производит запрос к брокеру ресурсов на предоставление ресурса.

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

3. Брокер ресурсов передает URL целевой системы и имя сервиса CAEBeans Server.

4. CAEBeans Server обращается к предоставленным ресурсам.

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

6. После получения результатов вычисления CAEBeans Server производит освобождение ресурса и извещение брокера об его освобождении.

Брокер ресурсов реализуется в виде web-сервиса XML. Web-сервис XML - это программный компонент, который позволяет создавать независимые от платформы масштабируемые и слабосвязанные приложения. Благодаря Web-сервисам XML приложения могут обмениваться сообщениями с использованием стандартных протоколов, таких как HTTP, XML, XSD, SOAP и WSDL.

Для взаимодействия с брокером ресурсов вводятся методы, которые делятся на две группы: методы, предназначенные для работы администратора с каталогом ресурсов, и методы для работы CAEBeans Server с брокером.

Методы брокера ресурсов для администратора каталога ресурсов:

• addTargetSystem(TargetSystem target)- добавление в каталог ресурсов новой целевой системы;

• delTargetSystem(TargetSystem target)- удаление из каталога ресурсов целевой системы;

• addLisence(Lisence lisence) - добавление в каталог ресурсов новой лицензии;

• delLisence(Lisence lisence) - удаление из каталога ресурсов лицензии.

Методы брокера ресурсов для взаимодействия с CAEBeans Server:

• queryResource(Query query) - поиск и захват подходящих ресурсов;

• unlockResource(Task task) - освобождение ресурса.

Запрос CAEBeans Server к брокеру ресурсов является XML-файлом и содержит следующую информацию: уникальный идентификатор задачи, список необходимых лицензий, имя системного САЕВеап, время необходимое для решения задачи в секундах, оптимальную конфигурацию (количество ядер, объем оперативной памяти), минимальную конфигурацию.

Минимальная конфигурация аппаратных средств - это возможные отступления от необходимых для выполнения задачи требований. Если минимальная конфигурации не указана в запросе CAEBeans Server, то брокер ресурсов принимает в качестве нее оптимальную конфигурацию.

В случае, когда в запросе к CAEBeans брокеру информация указана не полностью, принимаются значения по умолчанию. На рисунке 3 приведен пример запроса CAEBeans Server.

<query>

<id_task>3564</id_task>

<lisence>MISYS &cademic Research</lisence>

<syst;ea_C!EBe&B>T«sb*_C&£Seas</sfste*_€&EBeaa> </qaery>_______________________________________________

Рис. 3. Запрос CAEBeans Server к брокеру ресурсов На рисунке 4 представлена XML-схема корректных XML-запросов.

<?хж1 тежя1ей**'1.вв?>

<хя:асЪеяа хяйлз :ха«"Ьтср: //Члгиг.»3.охз/2О03У ЗО&ЗсЬеяа■>

<х8:еХежтс &аш£ж-”%а»ху” ■суре**"Хчиегу*/>

оса: г«ф1ех?уре ааае*вХдаегу®>

<ха:е1«яет: аяв^'*1й_сав1св иав“"геф»1ге{|"/>

<ж8:е1евеос мяе»,’,11в«асея хуре^ха: агх1п$ш жЬеОасагаг^О" жиОосшся^ипЬо1*>йв(1*/> <хзге1сяеас шае“мъ1веот;® гя«“',хв:ав£й.жайя яйаОссмга-"0" швзЮсаспяп*ш*>ааойс<1я/> <ха:е1«жос па«и~*гхтвт;_вос1е9* гуре**ха:аес1жй*/>

<х8:е£еяеое ш®е-^е®огу_ЕШ*' ъ%реа*,ш1$£е±ша1я/>

</ха:а11>

</ха: ссор1ехТуре>

</к8;зсЬежа>______________________________________________________________________________

Рис. 4. ХМЬ-схема корректных ХМЬ-запросов

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

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

К статическим свойствам целевой системы относятся название целевой системы, URL целевой системы, оперционная система, список системных САЕВеап, количество ядер, объем дискового пространства, объем оперативной памяти, частота CPU. Динамические свойства целевой системы - это количество свободных ядер.

Лицензия инженерного пакета имеет следующие характеристики: название лицензии; список системных САЕВеап, для которых лицензия предназначена; наибольшее количество процессоров, которые могут быть использованы по лицензии; статус лицензии (принимает значения «занята»или «свободна») и целевая система, которой лицензия принадлежит.

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

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

Поиск ресурсов, удовлетворяющих требованиям задачи, может производиться по различным алгоритмам: случайным образом или аналитически на основе расчета общего времени получения результата (TTD - Total Time to Delivery). Одной из наиболее важных задач брокера ресурсов является оценка общего времени получения результата при постановке задачи пользователя конкретному вычислительному ресурсу. В дальнейшем, на основе этой оценки, определяется ресурс, обеспечивающий оптимальное время исполнения поставленной задачи.

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

Заключение

Представленный подход организации брокера ресурсов разработан для поддержки технологии CAEBeans. В работе дано описание алгоритма работы брокера ресурсов, представлены структура XML-запросы CAEBeans Server к брокеру ресурсов и алгоритмы планирования. Дальнейшие исследования будут направлены на поддержку брокером ресурсов очереди задач.

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

Работа выполнялась при финансовой поддержке Федерального агентства по науке и инновациям (контракт 2007-4-1-4-^0-01-026) и программы СКИФ-ГРИД (контракт СГ-1/07).

Литература

1. Эвристики распределения задач для брокера ресурсов Grid / А.И. Аветисян, С.С. Гайсарян, ДА. Грушин, Н.Н. Кузюрин, А.В. Шокуров // Труды Института системного программирования РАН. - 2004. - Т. 5, - С. 41 - 62.

2. Системы Grid-вычислений - перспектива для научных исследований / А.Е. Дорошенко, О.В. Алистратов, Ю.М. Тырчак, А.П. Розенблат, К.А. Рухлис // Проблемы программирования. - 2005. - № 1. - С. 14 - 38.

3. Радченко, Г.И. CAEBeans: иерархические системы структурированных проблемно-ориентированных оболочек над инженерными пакетами / Г.И. Радченко, JI.B. Соколинский // Научный сервис в сети Интернет: многоядерный компьютерный мир. 15 лет РФФИ: тр. Всерос. науч. конф. (24-29 сентября 2007 г., г. Новороссийск). -Новороссийск, 2007. - С. 54 - 57.

4. Радченко, Г.И. BeanShells: интеграция CAE-пакетов в GPE / Г.И. Радченко, JI.B. Соколинский, И.С. Кутепов // Параллельные вычислительные технологии (ПаВТ’2007): тр. Междунар. науч. конф. (Челябинск, 29 янв. - 2 февр. 2007 г.). -Челябинск, 2007. - Т. 2. - С. 15.

5. Uniform Interface to Computing Resources: [http://www.unicore.eu/], 19 Jun 2008.

6. Foster, I. The Grid 2: Blueprint for a New Computing Infrastructure. Second edition / I. Foster, C. Kesselman. - San Francisco: Morgan Kaufmann, 2003.

7. Радченко, Г.И. Методы организации грид-оболочек системного слоя в технологии CAEBeans // Вестник ЮУрГУ. Сер. «Математическое моделирование и программирование». - 2008. - Вып. 1, № 15 (115). - С. 69 - 80.

Кафедра системного программирования,

Южно-Уральский государственный университет sham2004@bk.ru

Поступила в редакцию 15 сентября 2008 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.