Появлению технологии Grid предшествовала идея
метакомпьютинга, т.е. объединения вычислительных и коммуникационных технологий. Метакомпьютинг определяется как использование мощных вычислительных ресурсов, прозрачно доступных посредством коммуникационной среды, как объединение множества компьютеров в единый вычислительный
ресурс. Под ресурсами подразумеваются не только собственно компьютеры, но и коммуникационные средства, системы хранения и программные фонды.
Примером программного обеспечения для Grid систем являются продукты, разработанные в проекте Globus. В него входят следующие службы и
протоколы:
- протокол GRAM (Grid Resource Allocation and Management) доступа к управлению ресурсами и служба Gatekeeper, которые обеспечивают безопасное создание удаленных процессов и управление ими;
- служба метакаталогов GIS (Grid Information Service), отвечающая за распределенный сбор данных и информационное обслуживание;
- службы GSI (Grid Security Infrastructure) инфраструктуры безопасности, поддерживающие однократную регистрацию, делегирование полномочий и отображение прав доступа на разные локальные системы.
Программное обеспечение Grid делится на четыре слоя (уровня): адаптация ресурсов; связь; доступ к ресурсам; кооперация (рис. 1) [1].
Слой адаптации (или базовый уровень) представляют службы, непосредственно работающие с ресурсами, к которым предоставляется разделяемый доступ. На слое выполняется унификация ресурсов — представление в виде абстрактных типов со стандартизованным множеством операций. Добавляются средства локального управления ресурсами, например, для вычислительных ресурсов это системы управления
пакетной обработкой.
Слой связи (связывающий уровень) объединяет протоколы коммуникации и безопасности с образованием унифицированной базы сетевых транзакций для вышележащих слоев. Здесь решаются задачи аутентификации, защиты сообщений и авторизации. Коммуникации должны обеспечивать транспорт и маршрутизацию сообщений, присвоение имен объектам сети.
Рис. 1. Уровни архитектуры Grid протоколов и их соответствие уровням архитектуры протоколов Internet [2]
Слой доступа к ресурсам (ресурсный уровень) включает ряд протоколов и программных интерфейсов для удаленного использования ресурсов Grid. С помощью средств этого слоя производится поиск ресурсов, дистанционная инициация, мониторинг и управление операциями. В слое реализованы два типа протоколов: информационные и управляющие. Службы первого из них —
GRIP (Grid Resource Information Protocol) — устанавливаются на каждом ресурсе и собирают данные о его характеристиках (конфигурация, платформа) и состоянии (текущая загрузка). Информационная модель GRIP расширяема и позволяет, в принципе, представлять произвольные данные. Распределенная модель поддерживается вторым протоколом регистрации ресурсов
GRRP (Grid Resource Registration Protocol), посредством которого сведения о наличии и местоположении GRIP сообщаются серверу
GIIS (Grid Index Information Server), на который впоследствии подкачиваются данные со всех зарегистрированных серверов GRIP.
Слой кооперации (прикладной уровень) отвечает за интеграцию различных наборов ресурсов, службы слоя строятся над слоем удаленного доступа, позволяя взаимодействовать не с индивидуальным ресурсом, а с их совокупностью. На этом уровне имеются следующие службы:
- каталогов; поскольку GIIS содержит информацию о всех ресурсах Grid, для поиска ресурсов с нужными свойствами достаточно направить запрос в одну точку, а не опрашивать каждый ресурс по отдельности. Способ наполнения сервера GIIS состоит в периодическом обновлении информации путем опроса зарегистрированных по протоколу GRIP служб ресурсов.
- брокеров — агентов, посредничающих между заданием и ресурсами, обеспечивающих поиск свободных ресурсов и доступ к ним, выполняющих запуск заданий, проверку статуса, доставку выходных данных;
- мониторинга и диагностики; функционирование Grid опирается на разнообразные данные о состоянии компонентов, которые затем используются в различных задачах: обнаружения сбоев, анализа производительности, распределения загрузки и т.п. Статусные данные мониторинга имеют ограниченное и, как правило, короткое время жизни, после чего они становится недостоверными. Поэтому частота их обновлений должна быть высокой, в то время как обычные базы данных ориентированы на выполнение запросов, а не на обновления.
- репликации; отвечает за порождение реплик, отслеживает их размещение (с помощью каталога реплик) и предоставляет "лучшую" из них конкретному пользователю, которому известно только имя файла.
- авторизации;
- учета и платежей;
- координации; задача слоя — распределять ресурсы не только по пространству, но и по времени. Программное обеспечение этого слоя состоит из служб планирования, которые собирают ресурсные запросы пользователей, поддерживают очереди запросов, определяют порядок (расписание) их удовлетворения и выполняют соответствующие задания.
Список литературы
1. В. Коваленко, Д. Корягин. Эволюция и проблемы Grid // Открытые системы, 2003, № 1.
2. Архитектура протоколов Грид. - http://grid.kiae.ru/GRID/grid_a.htm