Автор работы: Пользователь скрыл имя, 26 Июня 2013 в 20:02, контрольная работа
Изучение технологии GRID, ее архитектуры, организации и средств построения. Краткий обзор применения данной технологии.
Задачи:
1. Изучение имеющихся материалов по технологии GRID;
2. Обзор архитектуры GRID-систем;
3. Описание инструментальных средств для построения GRID-систем на примере Globus Toolkit и LCG (LHC Computing Grid);
4. Изучение работы пользователя в GRID-системе и существующих пользовательских интерфейсов;
ПОСТАНОВКА ЗАДАЧИ 3
ВВЕДЕНИЕ. 4
1. КОНЦЕПЦИЯ GRID. 5
2. АРХИТЕКТУРА GRID. 5
2.1. БАЗОВЫЙ УРОВЕНЬ. 6
2.2. УРОВЕНЬ СВЯЗИ. 7
2.3. РЕСУРСНЫЙ УРОВЕНЬ. 7
2.4. КОЛЛЕКТИВНЫЙ УРОВЕНЬ. 8
2.5. ПРИКЛАДНОЙ УРОВЕНЬ. 8
3. ПОНЯТИЕ ВИРТУАЛЬНОЙ ОРГАНИЗАЦИИ. 8
4. РАСПРЕДЕЛЕНИЕ РЕСУРСОВ В GRID. 9
5. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА GRID (GLOBUS TOOLKIT). 9
5.1. УПРАВЛЕНИЕ РЕСУРСАМИ. 10
5.2. ОРГАНИЗАЦИЯ ДОСТУПА К РЕСУРСАМ. 11
5.3. ИНФОРМАЦИОННЫЙ СЕРВИС. 12
5.4. БЕЗОПАСНОСТЬ. 13
6. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ LCG. 14
7. ПОЛЬЗОВАТЕЛЬ В GRID. 15
7.1. ИСПОЛЬЗОВАНИЕ ИНТЕРФЕЙСА КОМАНДНОЙ СТРОКИ. 16
7.2. WEB-ИНТЕРФЕЙСЫ GRID. 18
8. ГЛОБАЛЬНАЯ ИНФРАСТРУКТУРА GRID ДЛЯ НАУКИ. 18
9. РОССИЯ В ПРОЕКТЕ EGEE. 20
10. ЗАКЛЮЧЕНИЕ. 21
11. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ. 22
Коллективный уровень (Collective Layer) отвечает за глобальную интеграцию различных наборов ресурсов, в отличии от ресурсного уровня, сфокусированного на работе с отдельно взятыми ресурсами. В коллективном уровне различают общие и специфические (для приложений) протоколы. К общим протоколам относятся, в первую очередь, протоколы обнаружения и выделения ресурсов, системы мониторинга и авторизации сообществ. Специфические протоколы создаются для различных приложений GRID, (например, протокол архивации распределенных данных или протоколы управления задачами сохранения состояния и т.п.).
Компоненты коллективного
Прикладной уровень (Application Layer) описывает пользовательские приложения, работающие в среде виртуальной организации. Приложения функционируют, используя сервисы, определенные на нижележащих уровнях. На каждом из уровней имеются определенные протоколы, обеспечивающие доступ к необходимым службам, а также прикладные программные интерфейсы (Application Programming Interface – API), соответствующие данным протоколам.
Инфраструктура GRID основана на предоставлении ресурсов в общее пользование, с одной стороны, и на использовании публично доступных ресурсов, с другой. В этом плане ключевое понятие инфраструктуры GRID – виртуальная организация, в которой кооперируются как потребители, так и владельцы ресурсов. В существующих GRID-системах виртуальная организация представляет собой объединение специалистов из некоторой прикладной области, которые объединяются для достижения общей цели.
Любая ВО располагает определенным количеством ресурсов, которые предоставлены зарегистрированными в ней владельцами (некоторые ресурсы могут одновременно принадлежать нескольким ВО). Каждая ВО самостоятельно устанавливает правила работы для своих участников, исходя из соблюдения баланса между потребностями пользователей и наличным объемом ресурсов.
GRID-система является коллективной средой , в которой каждый ресурс имеет владельца, а доступ к ресурсам открыт в разделяемом по времени и по пространству режиме множеству входящих в ВО пользователей. Виртуальная организация может образовываться динамически и иметь ограниченное время существования.
Таким образом, можно определить GRID-систему как пространственно распределенную операционную среду с гибким, безопасным и скоординированным разделением ресурсов для выполнения приложений в рамках определенных виртуальных организаций.
Эффективное распределение ресурсов и их координация являются основными задачами системы GRID, и для их решения используется планировщик. Пользуясь информацией о состоянии GRID-системы, планировщик определяет наиболее подходящие ресурсы для каждой конкретной задачи и резервирует их для ее выполнения. Во время выполнения задача может запросить у планировщика дополнительные ресурсы или освободить избыточные. После завершения задачи все отведенные для нее вычислительные ресурсы освобождаются, а ресурсы памяти могут быть использованы для хранения результатов работы.
Важным свойством систем GRID является то, что пользователю не нужно знать о физическом расположении ресурсов, отведенных его задаче. Вся работа по управлению, перераспределению и оптимизации использования ресурсов ложится на планировщик и выполняется незаметно для пользователя. Для пользователя создается иллюзия работы в едином информационном пространстве, обладающем огромными вычислительными мощностями и объемом памяти.
Для системы такой сложности очень важна проблема обеспечения надежного функционирования и восстановления при сбоях. Невозможно уследить за состоянием тысяч различных ресурсов, входящих в GRID-систему, и по этой причине задача контроля над ошибками возлагается на систему мониторинга, которая следит за состоянием отдельных ресурсов. Данные о состоянии заносятся в информационные ресурсы, откуда они могут быть прочитаны планировщиком и другими сервисами, что позволяет иметь постоянно обновляющуюся достоверную информацию о состоянии ресурсов.
В GRID-системах используется сложная система обнаружения и классификации ошибок. Если ошибка произошла по вине задачи, то задача будет остановлена, а соответствующая диагностика направлена ее владельцу (пользователю). Если причиной сбоя послужил ресурс, то планировщик произведет перераспределение ресурсов для данной задачи и перезапустит ее.
Сбои ресурсов являются не единственной причиной отказов в GRID-системах. Из-за огромного количества задач и постоянно меняющейся сложной конфигурации системы важно своевременно определять перегруженные и свободные ресурсы, производя перераспределение нагрузки между ними. Перегруженный сетевой ресурс может стать причиной отказа значительного количества других ресурсов. Планировщик, используя систему мониторинга, постоянно следит за состоянием ресурсов и автоматически принимает необходимые меры для предотвращения перегрузок и простоя ресурсов.
В распределенной среде, какой является GRID-система, жизненно важно, чтобы отказ любого ресурса не должен приводить к сбою в работе всей системы. Именно поэтому планировщик, система мониторинга и другие сервисы GRID-системы распределены и продублированы.
В этом разделе будет рассмотрен набор инструментальных средств, используемых при реализации проектов GRID и разработанных в рамках проекта Глобус (Globus Project).
Эти инструментальные средства образуют набор программных средств Globus Toolkit и позволяют построить полнофункциональную GRID-систему. Средства Globus Toolkit представляют собой совокупность программных компонент, реализующих необходимые части архитектуры.
Globus Toolkit состоит из следующих основных компонент:
Архитектура средств управления ресурсами (Globus Resource Management Architecture – GRMA) имеет многоуровневую структуру (рис. 3).
Запросы пользовательских приложений выражаются на RSL и передаются брокеру ресурсов, который отвечает за высокоуровневую координацию использования ресурсов (балансировку загрузки) в определенном домене. На основе переданного пользовательским приложением запроса и политики (права доступа, ограничения по использованию ресурсов) ответственного административного домена брокер ресурсов принимает решение о том, на каких вычислительных узлах будет выполняться задача, какой процент вычислительной мощности узла она может использовать и др.
При выборе вычислительного узла брокер ресурсов должен определить, какие узлы доступны в текущий момент, их загрузку, производительность и другие параметры, указанные в RSL-запросе, выбрать наиболее оптимальный вариант (это может оказаться один вычислительный узел или несколько), сгенерировать новый RSL-запрос (ground RSL) и передать его высокоуровневому менеджеру ресурсов (co-allocator). Этот запрос будет содержать уже более конкретные данные, такие, как имена конкретных узлов, требуемое количество памяти и др. Основные функции высокоуровневого менеджера ресурсов перечислены ниже:
Высокоуровневый менеджер ресурсов производит декомпозицию запросов ground RSL на множество более простых RSL-запросов и передает эти запросы GRAM. Далее, при отсутствии сообщений об ошибках от GRAM, задача пользователя запускается на исполнение. В случае, если один из GRAM возвращает ошибку, задача либо снимается с выполнения, либо попытка запуска производится повторно.
Менеджер GRAM предоставляет верхним уровням универсальный API для управления ресурсами узла GRID. Сам GRAM взаимодействует с локальными средствами управления ресурсами узла. Узлом может быть, например, рабочая станция или вычислительный кластер.
GRAM – достаточно низкоуровневый компонент Globus Toolkit, являющийся интерфейсом между высокоуровневым менеджером ресурсов и локальной системой управления ресурсами узла. В настоящее время этот интерфейс может взаимодействовать со следующими локальными системами управления ресурсами:
Структура GRAM представлена на рис. 4.
Чтобы на вычислительном узле можно было удаленно запускать на исполнение программы, на нем должен выполняться специальный процесс называемый Gatekeeper. Gatekeeper работает в привилегированном режиме и выполняет следующие функции:
После того, как Gatekeeper выполнит свою работу, Job Manager запускает задание (процесс или несколько процессов) и производит его дальнейший мониторинг, сообщая клиенту об ошибках и других событиях. Gatekeeper запускает только один Job Manager - для каждого пользователя, который управляет всеми заданиями данного пользователя. Когда заданий больше не остается, Job Manager завершает работу.
Все перечисленные компоненты, включая пользовательские приложения, могут использовать информационный сервис (Information Service) для получения всей необходимой информации о состоянии GRID-системы. В Globus Toolkit роль информационного сервиса играет MDS. Этот компонент отвечает за сбор и предоставление конфигурационной информации, информации о состоянии GRID-системы и ее подсистем, а также обеспечивает универсальный интерфейс получения требуемой информации. MDS имеет децентрализованную, легко масштабируемую структуру и работает как со статическими, так и с динамически меняющимися данными, необходимыми пользовательским приложениям и различным сервисам GRID-системы. Иерархическая структура MDS представлена на рис. 5.
MDS состоит из трех основных компонент: