120 likes | 462 Views
Из цикла лекций «Современные Internet -технологии» для студентов 5 -го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета. OGSA ( Open Grid Services Architecture ). Концепция, Grid- сервисы, пример структуры OGSA, интерфейсы Grid- сервисов.
E N D
Из цикла лекций «Современные Internet-технологии» для студентов 5-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета OGSA (Open Grid ServicesArchitecture) Концепция, Grid-сервисы, пример структуры OGSA, интерфейсы Grid-сервисов ДонНУ, кафедра КТ, проф.В.К.Толстых
Что это такое? • Эволюция технологии Grid привела к возникновению архитектуры Open Grid Services Architecture. В ней Grid-система предоставляет обширный набор Web-сервисов, которые виртуальные организации могут объединять различными способами. Если раньше приложения обращались к компьютерам и их дискам, то здесь они должны обращаться к службам, которые определяют нужные ресурсы и организуют работу с ними. • Архитектура OGSA: • определяет единообразную семантику взаимодействия служб, наборы обязательных интерфейсов, • определяет стандартные механизмы для создания, именования и обнару- жения экземпляров Grid-служб, • обеспечивает прозрачность местонахождения и связывание различных протоколов, • поддерживает интеграцию с базовыми механизмами нижележащих платформ.
Grid-сервисы • OGSA определяет Grid-службу как Web-сервис, поддерживающий специфические соглашения Open Grid Services Infrastructure (OGSI): • единый механизм обнаружения служб (экземпляров служб), определения их характеристик и конфигурирования запросов к этим службам, • идентификация Grid-сервисов – дескрипторы (Grid Service Handle, GSH – глобально уникальные имена) и механизм отображения, позволяющий по дескриптору получить текущую ссылку(Grid Service Reference, GSR) на экземпляр сервиса, • соглашения по взаимной аутентификации и авторизации служб и контролю одновременного использования, • службы OGSA могут создаваться и уничтожаться динамически, аэкземпляры служб, имеют состояние и, возможно, ограниченное время жизни, • службы OGSA могут асинхронно уведомлять друг друга о серьезныхизменениях в своем состоянии, • интерфейс управляемости служб OGSA позволяет выполнять мониторинг больших наборов экземпляров Grid-служб и управлять ими.
Пользователь хочет обнаружить, приобрести и развернуть удаленным образом средства для создания новой базы данных путем добычи данных из нескольких источников данных в Internet Пользователь (программа или служба, действующая от имени пользователя) обращается к реестру фабрик в Grid для поиска провайдеров служб, способных предоставить требуемые возможности добычи и хранения данных. Он может указать, например, стоимость, местонахождение или производительность. Реестр возвращает дескрипторы, указывающие необходимую фабрику добычи данных и фабрику базы данных. Пользователь инициирует запросы на создание экземпляров фабрики добычи и базы данных. Создаются два новых экземпляра служб с требуемым начальным состоянием, ресурсами и временем жизни. Служба добычи данных инициирует запросы к соответствующим удаленным базам данных от имени пользователя. Результаты запросов возвращаются вновь создаваемой базе данных. В процессе работы пользователь может периодически направлять сообщения о продлении времени жизни всех экземпляров служб. Экземпляр службы добычи данных уведомляет пользователя о выполнении и завершении работы. Затем пользователь сохраняет дескриптор для вновь созданной базы данных, которая может использоваться до тех пор, пока это необходимо, и периодически сигнализирует о том, что данный экземпляр службы нужен по-прежнему.
Провайдер службы добычи Фабрика добычи данных Экземпляр службы добычи данных OGSA – «Добыча данных» Internet 4 Реестр этого Grid 6 3.1 1 2 7 5 Провайдер службы хранения Приложение пользователя 3.2 Фабрика базы данных 5 4 9 8 Экземпляр службы хранения данных 10 1 – найти службу добычи данных, 2 – дескрипторы фабрик добычи данных и базы данных, 3.1 – создать службу добычи данных со временем жизни 10, 3.2 – создать службу хранения данных со временем жизни 100, 4 – создать экземпляр, 5 – продлить время жизни, 6 – запрос, 7 – результат, 8 – сохранить, 9 – дескриптор новой базы , 10 – продлить время жизни.
Основные стандартные интерфейсы Grid-сервисов
Подробнее обинтерфейсах OGSA • Фабрики (factories) - класс Grid-сервисов, которые реализуют интерфейс Factoryдля создания новых экземпляров Grid-сервисов. • Операция CreateService интерфейса Factory создает требуемый Grid-сервис и возвращает дескриптор (GSH) и начальную ссылку (GSR) на новый экземпляр сервиса. • Интерфейс Factory не определяет то, каким образом создается экземпляр сервиса. Создание сервисов (Фабрика)
Управление жизненным циклом сервиса • Время жизни сервиса – момент, когда выполнение сервиса может или должно быть завершено, а используемые им ресурсы освобождены. Из-за сбоев в распределенных системах сервис может никогда не получить команды. • Soft-state подход - поддерживает надежное завершение работы и защиту от сбоев: • Экземпляры Grid-сервисов создаются с заданным ограниченным временем жизни, • Время жизни может быть продлено на указанный период при помощи явного запроса со стороны клиента или другого сервиса, • По истечении времени жизни среда размещения или сам экземпляр сервиса может завершить свою работу и освободить все используемые ресурсы. • Стандартные операции управления жизненным циклом экземпляра Grid-сервиса: • CreateService – в параметрах задается начальное время жизни, • SetTerminationTime - обновление времени жизни, • Destroy – явное прекращение работы сервиса, • Синхронизация часов - Network Time Protocol (NTP)
Управление дескрипторами и ссылками • Интерфейс отображения дескрипторов HandleMap - • Операция FindByHandle принимает в качестве аргумента значение GSH и возвращает соответствующее ему текущее значение GSR. • Алгоритм получения GSR экземпляра сервиса: • Идентификация сервиса отображения, который хранит отображение для данного GSH, • Связь с этим сервисом для получения нужной GSR. • Каждый экземпляр Grid-сервиса обязан быть зарегистрирован по-крайней мере в одном сервисе отображения, который называется домашним.
Данные сервиса • С каждым экземпляром Grid-сервиса связаны данные сервиса • информация, структурированная в виде набора именованных и типизированных XML-элементов (service data elements, SDE) • Запрос и извлечения данных сервиса осуществляется при помощи операции FindServiceData • Для каждого из стандартных интерфейсов определен набор элементов данных сервиса, которые должны поддерживаться любым экземпляром сервиса, реализующим данный интерфейс
Поиск сервисов • Реестр (registry) - это Grid-сервис, поддерживающий поиск сервисов и реализующий интерфейс Registry: • RegisterService – Провести временную регистрацию указанного дескриптора Grid-сервиса, • UnregisterService - Снятие дескриптора с регистрации. • Поиск и извлечение информации о зарегистрированных сервисах осуществляется с помощью операции FindServiceData • Soft-state подход: • регистрация GSH является временной операцией и должна периодически обновляться.
Уведомления • Сервисы должны иметь возможность асинхронно уведомлять друг друга о значащих изменениях своего состояния (событиях) • Модель уведомлений OGSA - • позволяет клиентам подписываться на уведомления об определенных событиях, • поддерживает асинхронную, одностороннюю доставку уведомлений. • Операция подписки представляет собой просто запрос на последующую доставку данных сервиса, которые удовлетворяют указанным критериям. • Интерфейс NotificationSource – обязателен для реализации сервисом-отправителем уведомлений. • Интерфейс NotificationSink – обязателен для реализации сервисом-получателем уведомлений