Статья: Структура и проблемы развития программного обеспечения среды распределенных вычислений Грид

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

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

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

Архитектура с такими свойствами предложена в [33]. Суть предложения заключается в том, чтобы разделить сбор данных и операции поиска. Данные мониторинга хранятся распределенно - там же где и производятся. Так как суммарный объем данных очень большой, задержки при поиске по всему информационному массиву будут непредсказуемы. Поэтому предлагается адресовать поисковые запросы «реестру матаданных», который представляет собой индекс распределенного хранения и позволяет определить источник требуемых данных. Далее запрос переадресуется в место хранения и там производится уже более узкий поиск. Имеется реализация этого подхода (R-GMA [34]).

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

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

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

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

· Сервис репликации поддерживает управление файлами большого объема. Репликация является одним из основных способов увеличения скорости работы с файлами и одновременно уменьшения нагрузки на сеть. Сервис репликации отвечает за порождение реплик, отслеживает их размещение (с помощью каталога реплик) и предоставляет «лучшую» конкретным пользователям (причем, пользователь знает только имя файла). Разработанный прототип сервиса репликации Grid Data Management Pilot (GDMP) [35] уже реально используется для решения задач в области физики высоких энергий. Развитие в сторону интеграции с сервисами аутентификации и передачи данных Грид намечено в работе [36]. В то же время, управление репликами остается достаточно сложной открытой проблемой:

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

- Репликация должна взаимодействовать с сервисами планирования размещения заданий.

- Наиболее трудными представляются вопросы коллективной работы с репликами и обеспечением их идентичности.

Сервис репликации представляется одним из первых шагов на пути создания глобальной файловой системы для Грид с такими свойствами как единое пространство именования, независимость доступа от местоположения файлов, прозрачность выполнения файловых операций. В этой связи представляет интерес работа [37].

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

· Сервис авторизации. До сих пор из всех вопросов безопасности Грид удовлетворительно решен вопрос аутентификации. Как результат следующего этапа - авторизации, задание, запущенное от имени пользователя, должно получить определенный набор ресурсов. Ключевой вопрос авторизации - создание таких средств для спецификации и проведения политики предоставления ресурсов, которые бы удовлетворяли требованиям: 1) минимизации личных контактов для получения доступа к ресурсам и 2) минимизации администрирования. В рамках же существующих технологий для работы на каждом ресурсе Грид необходимо обратиться к его владельцу для регистрации и создания соответствующего профиля. В работе [38] описывается архитектура централизованного и масштабируемого сервиса Community Authorization Service (CAS). Тем не менее, удовлетворительного в практическом плане решения по-прежнему нет. Необходимы средства:

- спецификации прав пользователя, например, квот внешней памяти;

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

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

· Инфраструктура сертификации. Безопасность Грид основана на сертификатах стандарта X509, законность которых удостоверяет Центр сертификации (Certification Authority - CA) своей подписью. Технология выдачи сертификатов содержит неформальный момент, связанный с идентификацией личности владельца и верификации его атрибутов, что предполагает личный контакт. Такая технология может работать в Грид лишь при условии распределения функции верификации и отнесения ее на уровень ответственных организаций. В таком варианте необходима поддержанная программно технология надежной передачи запросов на выдачу сертификатов между уровнями, а также стандартные регламенты и протоколы взаимодействия. Работы по выработке стандартов сервисов Центра сертификации ведутся в рамках проекта DataGrid.

· Сервис учета и платежей. Успех Грид будет во многом зависеть от того, удастся ли преодолеть естественное предубеждение владельцев ресурсов перед необходимостью открывать их для доступа посторонним. В числе прочего, организация функционирования Грид должна создавать стимулы для предоставления ресурсов и гарантировать их справедливое распределение. Все это будет возможно только на базе персонифицированного учета использования ресурсов и контроля лимитов. Уровень конфиденциальности и защиты данных, обеспечиваемый сервисами безопасности Грид, не уступает банковским технологиям, а потому достаточен для реализации надежной платежной системы. Ее основами могут служить сервисы протоколирования и учета в системе GRB [32] и CAS [38], а экономические модели для Грид рассмотрены в [39].

8. Слой координации

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

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

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

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

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

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

В слоях адаптации ресурсов, доступа и кооперации необходимы:

локальные системы управления, поддерживающие функции резервирования и моделирования распределения ресурсов;

новые типы интерфейсов с ресурсами, реализуемые на основе общей архитектуры сервисов OGSA;

расширение номенклатуры поддерживаемых каталогов на реляционные и объектные модели;

развитие информационных сервисов в направлении мониторинга событий в локальных системах управления с возможностями оперативного реагирования;

разработка принципов взаиморасчетов и моделей платежных систем.

Работ, которые можно отнести к слою координации, не много. В области диспетчеризации заданий в глобальной среде можно отметить систему Silver [40], однако статус ее реализации неизвестен и, кроме того, она не встроена в программную инфраструктуру Грид. Наша собственная разработка [41,42], выполнена в рамках средств системы Globus, но пока используемые алгоритмы планирования весьма примитивны и ведется работа по их существенному улучшению.

9. Российский опыт Грид

В ИПМ работы по Грид были начаты в 1998 году. Тогда это называлось Метакомпьютингом, но было понятно, что потенциал нового направления далеко не ограничен сверхпроизводительными вычислениями, особенно с учетом того положения дел с обеспеченностью компьютерными мощностями и телекоммуникациями, которое мы имеем в России. Различные формы использования новых технологий, их связь с коммерческим программным обеспечением были рассмотрены в работах [43, 41].

За прошедшие годы проведены исследования по кластерным системам [44], применению в них распределенных файловых систем [45] и информационной службе системы Globus [46,47]. Наши программные разработки - это средство подготовки мобильных программ в кластерной среде [21] и диспетчер для Грид [42].

В практическом плане был создан стенд Грид, распределенный на две площадки (на Миусской площади и в районе метро Калужская) института. На каждой площадке работает сетевой кластер из рабочих станций. В качестве систем управления кластерами используется свободно распространяемая система OpenPBS [48], хотя имеется опыт применения и других систем - Condor [49] и DQS [50]. Связь между ресурсами осуществляется по Интернет, - правда этот вариант годится лишь для экспериментального режима, - а весь удаленный доступ управляется системой Globus.

Новые перспективы открылись в связи с инициативой ряда институтов физики высоких энергий (НИИЯФ МГУ, ОИЯИ, ИТЭФ, ИФВЭ) по созданию российского сегмента европейской инфраструктуры DataGrid. В сжатые сроки была проведена установка и конфигурирование необходимого программного обеспечения всех членов кооперации. В НИИЯФ МГУ открыт региональный Сертификационный Центр. Там же работает интегральный информационный сервер (GIIS), в который поступают данные с серверов организаций. В свою очередь, сервер НИИЯФ подключен к общему серверу DataGrid, и таким образом, реализована трехуровневая структура распределенной информационной базы.

В настоящее время на этой инфраструктуре производится тестирование и определение производственных характеристик (устойчивость, производительность, сетевые нагрузки) упомянутого выше Метадиспетчера [42]. В дальнейшем планируется его использование для балансировки вычислительной загрузки кластеров институтов.

Заключение

грид виртуальный программный

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