Вернуться в библиотеку

Платформа UNICORE

Источник

Интернет-портал по грид-технологиям www.gridclub.ru
[ Электронный источник: www.gridclub.ru/software/unicore.html ]


Платформа Unicore имеет несколько особенностей, обусловленных тем, что с самого начала она предназначалась для обеспечения доступа к суперкомпьютерным центрам стран Центральной Европы. Unicore — одна из немногих оригинальных платформ, которая не использовала Globus Toolkit, и лишь в последнее время происходит трансформация ее протоколов в сторону общепризнанных для грид.

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

Что такое UNICORE?

Унифицированный интерфейс с вычислительными ресурсами — UNICORE (UNiform Interface to COmputing REsources) предоставляет ученым и инженерам ресурсы суперкомпьютерных центров, объединенных в грид, и делает их доступными через интернет. Среда Грид UNICORE поддерживает высокий уровень безопасности, а аутентификация осуществляется совместимым между ресурсами и прозрачным для пользователей способом. Различия между платформами полностью скрыты, так что UNICORE можно рассматривать как портал, открывающий бесшовный дистанционный доступ к суперкомпьютерам, компиляции и выполнению приложений и пересылке данных ввода-вывода.

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

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

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

Как использовать UNICORE?

UNICORE дает возможность пользователю подготовить или изменить задания с использованием графического интерфейса на рабочей станции с платформой Unix или ПК с Windows. Задания могут быть запущены на любую из платформ UNICORE ГРИД, и далее пользователь может осуществлять мониторинг и управление запущенными заданиями, используя часть интерфейса, называемую монитором заданий.

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

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

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

Мониторинг задания: просмотр состояний работающих заданий, и получение выходных данных

Мониторинг задания: просмотр состояний работающих заданий, и получение выходных данных

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

Как обстоит дело с безопасностью?

UNICORE обеспечивает защиту на всех уровнях: аутентификация пользователя осуществляется с использованием сертификатов X.509. Инфраструктура открытого ключа была установлена в центрах высокопроизводительных вычислений в Германии, и выполняет функции контроля сертификатов. Авторизация производится самими сайтами UNICORE на основе их собственных апробированных механизмов. Сайты UNICORE полностью сохраняют свои права на авторизацию пользователей и выделение им ресурсов. При перемещении заданий, управляющей информации и прикладных данных используется SSL, обеспечивая целостность и конфиденциальность. Описание задания подписывается секретным ключом пользователя, так что никакая третья сторона не может внести искажения.

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

Архитектура UNICORE

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

Архитектура UNICORE: компоненты системы и их взаимодействие

Архитектура UNICORE: компоненты системы и их взаимодействие

Протокол взаимодействия компонентов определен в терминах объектов Java. Слой нижнего уровня, называемый UNICORE Protocol Layer (UPL), управляет аутентификацией, связью SSL и передачей данных в виде линейного потока байтов, а слой более высокого уровня (Abstract Job Object или библиотека классов AJO) содержит классы для спецификации заданий UNICORE, задач и ресурсных запросов.

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

Реализация и использование

Первая производственная версия системы UNICORE развернута и введена в действие в центрах высокопроизводительных вычислений Германии в конце 2000.

UNICORE V3.0 написана на языке Java-2 , что обеспечивает межплатформенную переносимость и совместимость с будущими разработками в мире интернета.

Протоколы системы определены в UPL и библиотеках классов AJO, информация о которых открыта и доступна в документах форума UNICORE. Клиент и серверы реализованы как приложения на языке Java-2 с использованием библиотеки IAIK SSL. Вспомогательные инструментальные средства и интерфейсы, наиболее существенные для администрирования и управления Грид UNICORE, развиваются в проекте UNICORE Plus и будут становиться доступными в ходе разработки.