Сегодня трудно найти сколько-нибудь развитую страну, в которой не были бы развернуты национальные Grid-проекты, имеющие целью создание инфраструктуры, обеспечивающей удаленный доступ к разнообразным вычислительным ресурсам независимо от места расположения потребителя. В Европе, например, подобную программу недавно приняла даже Болгария. Grid должен стать вычислительным аналогом электрической, железнодорожной или почтовой сети. Собственно, название Grid и заимствовано из энергетики, только вместо электрической энергии потребитель получает виртуальные ресурсы обработки данных. География проектов показывает, насколько высоко оценивается стратегический потенциал технологии Grid. В близкой перспективе Grid претендует на роль вычислительного инструментария в различных сферах человеческой деятельности, аналогично тому, как подобным инструментарием стали ПК и Internet.

Эволюция концепции Grid

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

Идея объединения вычислительных технологий с коммуникационными дала в 90-х годах толчок метакомпьютингу как способу соединения суперкомпьютерных центров. В основополагающей работе [1] метакомпьютинг определяется как «использование мощных вычислительных ресурсов, прозрачно доступных посредством коммуникационной среды». В дополнение к прозрачности существенны также такие характеристики, как бесшовность, масштабируемость и глобальность. Таким образом, в парадигме метакомпьютинга предлагалось, скрыв коммуникации, использовать подключенные к сети компьютеры как единый вычислительный ресурс. Основной акцент делался на то, что потенциальный пользователь может получить практически неограниченные мощности для выполнения вычислений и хранения данных.

Начатые в этом направлении работы (Globus [2], Legion [3], а также ряд других) привели к обобщению идеи метакомпьютинга. Выяснилось, что для программной поддержки распределенной среды необходимо решить широкий круг проблем: связи, безопасности, управления заданиями, доступа к данным, информационного обеспечения. Все они, имея прямые аналоги в операционных системах, потребовали пересмотра в условиях ненадежной, открытой и распределенной глобальной среды. Более того, ее архитектура должна быть расширяемой и способствующей наращиванию функциональности при сохранении работоспособности. По-видимому, именно последнее обстоятельство и привело к современной трактовке понятия Grid [4].

Речь уже не идет о мощных вычислительных ресурсах метакомпьютинга; в качестве процессорных ресурсов теперь рассматриваются также рабочие станции и ПК. Если организация располагает, скажем, тремя тысячами настольных ПК, то за время их регулярного простоя потерянная производительность может измеряться терафлопами. Однако действительная сила нового определения Grid скрывается за самим словом «ресурсы», которые понимаются предельно широко: это, пожалуй, все, что участвует в компьютерной обработке данных. К ресурсам следует отнести коммуникации, системы хранения, хранилища данных, информационные системы, а также программные фонды. Так, если приложение анализа данных понимать как ресурс, то это означает возможность удаленного доступа к нему без установки на компьютер пользователя.

Выход за рамки задач высокопроизводительных вычислений выявляет реальное содержание Grid как инфраструктуры для поддержки любой глобально распределенной обработки, для множества типов приложений: электронного бизнеса, распределенного производства, исследования данных, системы обработки высокой пропускной способности (high throughput computing, HTC), и, конечно, распределенного суперкомпьютинга. В отличие от метакомпьютинга, для многих приложений, в том числе и с большим объемом вычислений, но с «хорошими» свойствами (грубо гранулированные, конвейеризуемые), не требуются высокопроизводительные коммуникации; в этом случае в качестве коммуникационной среды может выступать Internet.

Архитектура программного обеспечения Grid

Базовым программным обеспечением Grid и международным стандартом де-факто является сегодня Globus. Его взяли за основу в ведущих проектах Grid (IPG, NCSA, Gryphyn, DataGrid). Большая часть новых исследований и разработок в области Grid ориентируется именно на Globus.

Основная задача, решаемая в Grid, — обеспечение доступа к ресурсам, а поскольку ресурсы распределенные, то функционирование обеспечивается специальной формой ПО — службами. В отличие от модели «клиент-сервер» тот или иной набор служб устанавливается здесь на каждом ресурсе. Множество служб должно удовлетворять двум структурным условиям.

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

Успех проекта Globus обеспечили следующие ключевые службы и соответствующие протоколы:

  • протокол доступа к управлению ресурсами (Grid Resource Allocation and Management, GRAM) и служба Gatekeeper, которые обеспечивают безопасное создание удаленных процессов и управление ими;
  • служба метакаталогов (Grid Information Service, GIS), отвечающая за распределенный сбор данных и информационное обслуживание;
  • службы инфраструктуры безопасности (Grid Security Infrastructure, GSI), поддерживающие однократную регистрацию, делегирование полномочий и отображение прав доступа на разные локальные системы.

Работы в области Grid направлены сегодня на существенное расширение состава служб, но для этого необходима поддержка собственно архитектуры служб. Пока ее нет, и реализация каждой новой службы требует обращения к протоколам низкого уровня. Предложенное на данный момент решение состоит в том, чтобы «за основу» взять стандарты Web-служб, разработанные консорциумом W3C (SOAP, WSDL, WS-Inspection и т.д.). В результате архитектура Grid наследует замечательные свойства Web-служб, одновременно наследуя широкий спектр инструментов разработки и исполнительных сред на выбор (например, J2EE, Microsoft .Net, IBM WebSphere, Sun ONE).

Базовой архитектурой Grid становится Open Grid Services Architecture [5], реализованная в Globus 3.0. Если стандарты Web-служб фиксируют форму интерфейсов служб, то OGSA задает стандарты семантики их взаимодействия — набор обязательных интерфейсов, одновременно определяя понятие Grid-службы. К стандартным интерфейсам относятся: обнаружение; динамическое создание; управление, в том числе временем жизни; уведомление. К этому перечню со временем должны добавиться интерфейсы авторизации и управления параллельным выполнением.

«Союз» Grid и Web-служб представляется правильным и своевременным шагом. Но не менее важен накопленный багаж служб, поскольку именно он из Internet делает Grid. По сложившейся классификации программное обеспечение Grid делится на четыре слоя: адаптация ресурсов; связь; доступ к ресурсам; кооперация [4]. Мы добавим и отдельно рассмотрим еще один — слой координации.

Слой адаптации ресурсов

Слой адаптации является той частью программного обеспечения Grid, которая работает на ресурсах и представляет их для использования вовне. Поскольку под ресурсами понимаются самые разные объекты обработки данных, то первая задача этого слоя — унификация ресурсов и представление их в виде абстрактных типов со стандартизованным множеством операций. Вторая задача связана с тем, что набор операций, которые непосредственно поддерживаются базовым обеспечением ресурсов, недостаточен (или неэффективен) для работы в распределенном варианте Grid, поэтому слой адаптации вводит необходимые дополнительные средства локального управления ресурсами, например, для вычислительных ресурсов это системы управления пакетной обработкой (PBS, Condor, LSF, Sun Grid Engine и т.д.).

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

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

  • средства выделения ресурсов, в частности, механизм резервирования, на который опирается слой кооперации, поскольку без резервирования невозможен запуск параллельных заданий; один из вариантов резервирования реализован в планировщике Maui (www.supercluster.org/maui), который может использоваться вместе с наиболее популярными в Grid системами пакетной обработки;
  • средства мониторинга оборудования;
  • для эффективного планирования распределения заданий в Grid (см. "Слой координации") требуются средства контроля за происходящими в системе управления событиями (освобождение ресурсов, запуск/завершение заданий) и средства получения информации, позволяющей предсказывать ход обработки заданий (рис. 1).

Ресурсы хранения. Поддерживаются в основном файловыми системами. Системы массового и иерархического хранения снабжаются дополнительными коммерчески доступными программными пакетами. Необходимые расширения:

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

Сетевые ресурсы. Поддерживаются протоколами слоя связи. Необходимые расширения:

  • управление сетевым трафиком на основе назначения приоритетов и резервирования;
  • средства опроса характеристик сети и текущей загрузки.

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

  • унифицированные протоколы для поддержки СУБД различных типов;
  • средства управления схемами баз данных в условиях быстро растущего числа типов данных;
  • повышение эффективности поиска и обновления информации;
  • поддержка сложных поисковых запросов по нескольким связанным объектам;
  • хранение и обработка массивов однородных данных.

Слой связи

Слой связи объединяет протоколы коммуникации и безопасности, с образованием унифицированной базы сетевых транзакций для вышележащих слоев. Протоколы коммуникации обеспечивают передачу данных, маршрутизацию и именование. Сейчас эти протоколы основаны на TCP/IP: транспортный уровень (TCP, UDP), уровень Internet (IP, ICMP), прикладной уровень (DNS, OSPF, RSVP и т.д.). (В слое кооперации уже возник ряд задач: массовая рассылка сообщений, резервирование пропускной полосы, ранжирование потоков по приоритетам, для которых требуются протоколы нового поколения наподобие IPv6.)

Протоколы безопасности, составляющие инфраструктуру безопасности Grid (GSI), надстроены над коммуникационными. Здесь решаются задачи аутентификации, защиты сообщений и авторизации. Реализация протоколов безопасности выполнена в виде расширения протокола TLS и основана на криптографических алгоритмах и технологии открытых ключей. Для идентификации пользователей и ресурсов используются сертификаты X.509. Управление авторизацией осуществляется посредством интерфейса Generic Authorization and Access [6], позволяющего интегрировать в инфраструктуру Grid различные локальные политики безопасности (основанные на паролях, системе Kerberos и т.д.). Протоколы безопасности удовлетворяют ряд требований: однократная регистрация пользователя в Grid; делегирование полномочий программам и службам, выполняющимся от имени пользователя. Необходимые расширения:

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

Слой доступа к ресурсам

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

В слое реализованы два типа протоколов: информационные и управляющие. Два информационных протокола базируются на LDAP. Службы первого из них — GRIP (Grid Resource Information Protocol) — устанавливаются на каждом ресурсе и собирают данные о его характеристиках (конфигурация, платформа) и состоянии (текущая загрузка). Информационная модель GRIP расширяема и позволяет, в принципе, представлять произвольные данные. Распределенная модель поддерживается вторым протоколом регистрации ресурсов GRRP (Grid Resource Registration Protocol), посредством которого сведения о наличии и местоположении GRIP сообщаются серверу GIIS (Grid Index Information Server), на который впоследствии подкачиваются данные со всех зарегистрированных серверов GRIP.

Недостатки реализованного подхода обусловлены тем, что базовый протокол LDAP ориентирован на работу с медленно меняющейся и слабо структурированной информацией. Так, язык запросов LDAP не может дать результат при необходимости вычислений на двух разных объектах в информационной схеме (или, выражаясь на реляционном языке, когда нужна операция соединения join). В рамках схемы GRIP/GRRP соответствующий протокол должен: поддерживать информационную модель с иерархией типов данных и возможностями их связывания; допускать использование в качестве каталогов реляционных баз данных; предусматривать язык запросов, соответствующий потребностям слоев кооперации и координации, поддерживающий, в частности, составные запросы.

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

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

Управляющие протоколы позволяют удаленно выполнять операции на ресурсе, такие, например, как запуск процесса или передача файла. Для вычислительных ресурсов реализован протокол GRAM (Grid Resource Access and Management), базирующийся на HTTP. Он позволяет:

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

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

Необходимые расширения:

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

Слой кооперации

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

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

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

  • для поиска ресурсов брокер использует один или несколько серверов GIIS. при поиске учитывается доступность ресурса для данного пользователя;
  • обеспечивается надежный запуск заданий: если задание прервалось по не зависящим от него причинам (сбой машины или сети), оно запускается заново;
  • ведется протокол запуска заданий, доступный как владельцу задания, так и администраторам ресурсов;
  • производится доставка файлов на исполнительный ресурс, при этом учитывается репликация файлов.

Работы по брокерам были начаты в смежных с Grid областях. Отдельную группу образуют брокеры уровня приложений (AppLeS, Condor-G, Nimrod-G, DRM), занимающиеся поиском ресурсов для отдельных заданий. В проекте ИПМ РАН [7] и в Grid Resource Broker (GRB) [8] проекта DataGrid реализовано большинство из перечисленных требований, но на базе служб Globus.

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

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

Архитектура с такими свойствами предложена в [9]. Суть заключается в том, чтобы разделить сбор данных и операции поиска. Данные мониторинга хранятся распределенно, там же, где и производятся. Поскольку суммарный объем данных очень велик, задержки при поиске по всему информационному массиву непредсказуемы. Поэтому предлагается адресовать поисковые запросы «реестру метаданных», который представляет собой индекс распределенного хранения и позволяет определить источник требуемых данных. Далее запрос переадресуется в место хранения, где производится уже более узкий поиск.

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

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

Служба репликации. Репликация, поддерживающая управление большими файлами, — один из основных способов увеличения скорости работы с файлами и уменьшения нагрузки на сеть. Служба репликации отвечает за порождение реплик, отслеживает их размещение (с помощью каталога реплик) и предоставляет «лучшую» из них конкретному пользователю, которому известно только имя файла. Разработанный прототип службы репликации [10] реально используется для решения задач в области физики высоких энергий. В то же время, еще не все проблемы управления репликами решены.

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

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

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

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

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

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

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

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

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

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

Проектов, которые можно отнести к слою координации, очень мало. Можно отметить проект Silver [13], однако его состояние остается неизвестным. Для своего проекта [7] мы разработали новый принцип планирования вычислительных ресурсов [14].

***

Grid претендует сегодня на первые роли не только в своей «родной» научно-технической сфере, но и в Web вообще. Вот, к примеру, мнение Яна Фостера: «Web начинался как технология для научного сотрудничества, а впоследствии стал важнейшим средством электронного бизнеса. Мы предвидим, а на самом деле переживаем, аналогичную эволюцию для технологий Grid». Насколько обоснованы такие заявления? Вряд ли кто-нибудь будет оспаривать, что основной недостаток современного Паутины — плохое качество как контента, так и обслуживания. Это особенно проявляется, когда речь идет о превращении Web в инфраструктуру для производственной деятельности. Здесь нужны новые подходы.

Стандарты Web-служб заложили каркас Сети нового поколения, в котором определяющим будет тесное взаимодействие служб, практически не требующее участия человека. Пожалуй, только на основе многоступенчатой оперативной обработки распределенных «сырых» данных можно поднять качество обслуживания, обеспечить полноту, актуальность, достоверность и надежность предоставляемых потребителям конечных результатов. Технологии Grid делают следующий необходимый шаг: имеющиеся и разрабатываемые Grid-службы должны наполнить аппарат Web-служб реальным содержанием, а именно службами общего назначения, поддерживающими функционирование распределенных организаций. Grid-службы создают фундамент для поставщиков контента, приложений и памяти, объединений информационных систем предприятий-смежников, электронных аукционов и торгов. Проблема гарантированного качества обслуживания всегда рассматривалась как одна из центральных для Grid. Новые решения, намеченные в кооперативном и координационном слоях Grid-служб, вполне могут стать практической основой эффективно функционирующей виртуальной организации. n

Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проект № 02-01-00282-a)

Литература

  1. С. Catlett, L. Smarr, Metacomputing. Communications of the ACM, 35 (6), 1992.
  2. Foster, Carl Kesselman, Globus: A Metacomputing Infrastructure Toolkit, International Journal of Supercomputer Applications, 11(2), 1997.
  3. A. Grimshaw, W. Wulf et al., The Legion Vision of a Worldwide Virtual Computer. Communications of the ACM, vol. 40(1), 1997 January.
  4. I. Foster, C. Kesselman, S. Tuecke, The Anatomy of the Grid: Enabling Scalable Virtual Organizations. International Journal of High Performance Computing Applications, 15 (3), 2001.
  5. Foster, Carl Kesselman, Jeffrey M. Nick, Steven Tuecke. The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration. http://www.globus.org/research/papers/ogsa.pdf
  6. Generic Authorization and Access control API (GAA API). IETF Draft. http://ghost.isi.edu/info/gss_api.html)
  7. С.А. Богданов, В.Н. Коваленко, Е.В. Хухлаев, О.Н. Шорин, "Метадиспетчер: реализация средствами метакомпьютерной системы Globus". Препринт ИПМ РАН, № 30, Москва, 2001.
  8. S. Cavalieri, S. Monforte. Resource Broker Architecture and APIs. University of Catania - Faculty of Engineering Department of Computer Science and Telecommunications Engineering (DIIT), June 2001. http://server11.infn.it/workload-grid/docs/20010613-RBArch-2.pdf
  9. Brian Tierney, Ruth Aydt, Dan Gunter, Warren Smith, Valerie Taylor, Rich Wolski, Martin Swany. A grid monitoring architecture. Technical Report GWD-Perf-16-2, GGF, 2001. http://www-didc.lbl.gov/GGF-PERF/GMA-WG/papers/GWD-GP-16-2.pdf
  10. B. Allcock, J. Bester, J. Bresnahan, A. Chervenak, I. Foster, C. Kesselman, S. Meder, V. Nefedova, D. Quesnel, S. Tuecke. Secure, Efficient Data Transport and Replica Management for High-Performance Data-Intensive Computing. IEEE Mass Storage Conference, 2001.
  11. L. Pearlman, V. Welch, I. Foster, C. Kesselman, S. Tuecke. A Community Authorization Service for Group Collaboration. Submitted to IEEE 3rd International Workshop on Policies for Distributed Systems and Networks, 2001. http://www.globus.org/research/papers/CAS_2002_Submitted.pdf.
  12. Rajkumar Buyya, Sudharshan Vazhkudai, Compute Power Market: Towards a Market-Oriented Grid, The First IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGrid 2001), Brisbane, Australia, May 15-18, 2001. http://www.buyya.com/papers/cpm.pdf
  13. Quinn Snell, Mark Clement, David Jackson, Chad Gregory. The Performance Impact of Advance Reservation Meta-scheduling. Computer Science Department Brigham Young University Provo, Utah 84602-6576, 2000, http://supercluster.org/research/papers/ipdps2000.pdf
  14. V.N. Kovalenko, E.I. Kovalenko, D.A. Koryagin, E.Z. Ljubimskii, A.V. Orlov, E.V. Huhlaev, "Resource Manager for Grid with global job queue and with planning based on local schedules". ACAT-2002 Workshop, 24-28 June, 2002, Moscow

Виктор Коваленко (kvn@keldysh.ru), Дмитрий Корягин — ИПМ им. М.В. Келдыша РАН (Москва).


National Grid

National Grid — проект, курируемый Министерством науки и технологий Великобритании. Направлен на поддержку кооперативных научных исследований по широкому спектру дисциплин. Одновременно проект служит испытательным полигоном для развертывания среды e-utility computing (также известна как e-sourcing), т.е. для предоставления пропускной способности, приложений, систем хранения по Сети в качестве своеобразной разновидности коммунальных услуг. В качестве поставщика ключевых технологий и оборудования выбрана компания IBM, которая выиграла тендер на создание центра хранения данных в Оксфордском университете, ставшим основным в Великобритании источником информации по исследованиям в области физики высоких энергий на базе экспериментов в Лаборатории Ферми (США).


Отечественный опыт Grid

Работы по Grid в ИПМ РАН были начаты в 1998 году. Тогда это направление обозначалось термином «метакомпьютинг», хотя и было понятно, что потенциал нового направления не ограничен сверхпроизводительными вычислениями. За прошедшие годы в ИПМ проведены исследования по кластерным системам, применению в них распределенных файловых систем и информационных служб Globus [I-IV]. Акцент пришелся на средства подготовки мобильных программ для функционирования в кластерной среде и создание диспетчера для Grid. Был создан стенд Grid, распределенный на две площадки, на каждой из которых работает кластер из рабочих станций. В качестве систем управления кластерами используется свободно распространяемая система OpenPBS; имеется опыт применения и других систем — Condor и DQS.

Рис. Многоуровневая организация информационной службы

Новые перспективы развития отечественного сегмента Grid открылись в связи с инициативой ряда российских институтов физики высоких энергий (НИИЯФ МГУ, ОИЯИ, ИТЭФ, ИФВЭ) по участию в создании европейской инфраструктуры DataGrid. Была проведена установка и конфигурирование необходимого программного обеспечения всех участников кооперации, а в НИИЯФ МГУ открыт региональный Сертификационный центр. Там же работает интегральный информационный сервер, в который поступают данные с серверов организаций. В свою очередь, сервер НИИЯФ подключен к общему серверу DataGrid, и таким образом, реализована трехуровневая структура распределенной информационной базы. В ОИЯИ (Дубна) ведутся исследования по мониторингу и диагностике больших компьютерных комплексов, в ИФВЭ (Протвино) установлена и тестируется система управления иерархической памятью CASTOR (CERN Advanced Storage Manager) на базе роботизированной ленточной библиотеки, в ИТЭФ создается скоростной канал связи (1 Гбит/с).

Литература

  1. В. Коваленко, Д. Корягин, Вычислительная инфраструктура будущего. // Открытые системы, 1999, № 11-12
  2. В. Коваленко, Е. Коваленко, Д. Корягин Э. Любимский, Е. Хухлаев, Управление заданиями в распределенной вычислительной среде. // Открытые системы, 2001, № 5-6
  3. III. В. Коваленко, Е. Коваленко, Пакетная обработка заданий в компьютерных сетях. // Открытые системы, 2000, № 7-8
  4. В. Коваленко, Проблемы сетевых файловых систем. // Открытые системы, 1999, № 3

Поделитесь материалом с коллегами и друзьями