Введение в ППО gLite
description
Transcript of Введение в ППО gLite
Enabling Grids for E-sciencE
www.eu-egee.org
Введение в ППО gLite
Олешко С.Б.Петербургский институт ядерной физикиг.Гатчина
2
Enabling Grids for E-sciencE
Презентацию можно будет скачать со страницы сайта http://egee.pnpi.nw.ru в разделе “Грид в ПИЯФ”
3
Enabling Grids for E-sciencE
Содержание
• Что такое EGEE и как получить доступ к ресурсам EGEE
• Инфраструктура EGEE
• ППО gLite
• Сообщества пользователей и поддержка пользователей• Использование команд gLite
• Запуск простейшего задания– ссылка на пример
• Более сложные примеры– ссылки на примеры
• Работа с большими объёмами данных– ссылка на пример
4
Enabling Grids for E-sciencE
Проект EGEE(www.eu-egee.org )
• Цель EGEE– Обеспечить создание высокопроизводительной продукционной
GRID инфраструктуры, ее поддержку и развитие
• EGEE– 1 апреля 2004 – 31 марта 2006– 71 участник из 27 стран, объединённых в региональные
федерации
• EGEE-II– 1 апреля 2006 – 30 апреля 2008
– расширение числа участников и ресурсов (~90 участников из 36 стран)
• EGEE-III– 1 мая 2008 – 30 апреля 2010
– переход к стабильной постоянно действующей Грид-инфраструктуре
5
Enabling Grids for E-sciencE
Текущий статус
17,000 пользователей
150,000 ЦПУ (ядер)
28Pb дисковой памяти
41Pb на лентах
12 миллионов зад./месяц
+45% в год
268 центров
+5% в год
48 стран
+10% в год
182 ВО
+29% в год
Real Time Monitor: http://gridportal.hep.ph.ic.ac.uk/rtm
6
Enabling Grids for E-sciencE
Участие России в проекте EGEE
В целях обеспечения полномасштабного участия России в этом проекте был образован консорциум РДИГ (Российский ГРИД для интенсивных операций с данными – Russian Data Intensive GRID, RDIG) для эффективного выполнения работ по проекту и развитию в России инфраструктуры EGEE, с вовлечением на следующих этапах проекта других организаций из различных областей науки, образования и промышленности.
Консорциум РДИГ, согласно принятой в проекте EGEE структуре, входит в проект в качестве региональной федерации “Россия” (“Russia).
Сейчас в РДИГ (http://www.egee-rdig.ru) входят 15 институтов (в 2004 году - 8)
7
Enabling Grids for E-sciencE
Инфраструктура EGEE
• Производственная (production)– масштабная инфраструктура с центрами по всему миру– стабильная, со службой поддержки, использующая только
оттестированную и надёжную версию ППО
• Тестовая (pre-production)– работает параллельно с основной (ограниченное число узлов)– тестирование новых версий ППО– проверка новых пользовательских приложений
• Учебная (t-infrastructure)– полный набор Грид-служб– каждый может
зарегистрироваться и попробовать работать в Грид (GILDA - https://gilda.ct.infn.it/)
~15 центров на 3 континентах
8
Enabling Grids for E-sciencE
EGEE, ППО gLite и ВО
• ППО gLite устанавливается в каждом центре EGEE и обеспечивает:
– управление данными– вычислительный сервис– сервис безопасности
INTERNET
9
Enabling Grids for E-sciencE
EGEE, ППО gLite и ВО
• ППО gLite устанавливается в каждом центре EGEE и обеспечивает:
– управление данными– вычислительный сервис– сервис безопасности
• Ресурсы и пользователи EGEE образуют виртуальные организации (ВО)
INTERNET
10
Enabling Grids for E-sciencE
EGEE, ППО gLite и ВО
• ППО gLite устанавливается в каждом центре EGEE и обеспечивает:
– управление данными– вычислительный сервис– сервис безопасности
• Ресурсы и пользователи EGEE образуют виртуальные организации (ВО)
• Распределённые сервисы (программное обеспечение ) и люди получают доступ к ВО
INTERNET
11
Enabling Grids for E-sciencE
Пример: ВО biomed
Центры:•36, в основном из Европы и Азии•65 584 ЦПУ•~741 Тб памятиТакже доступен портал поддержки приложений
Пользователи• любой, работающий с биомедицинскими приложениями• нет ограничений по географическому расположению• В настоящий момент 220-250 членов ВО
12
Enabling Grids for E-sciencE
История gLite
gLite 3.1(2007)
gLite 3.2(2009)
13
Enabling Grids for E-sciencE
gLite - ППО EGEE (www.glite.org )
• Текущая версия - gLite 3.2• Совместима с Scientific Linux 5
– Некоторые сервисы есть под Debian, а также для более ранних версий Scientific Linux
• gLite, как программный продукт…– Установочный дистрибутив– Разработка ещё не завершена
• Патчи для отдельных компонент появляются достаточно часто
14
Enabling Grids for E-sciencE
Основные сервисы gLite
EGEE Maintained Components External Components
Physical Resources
General Services
LHC FileCatalogue
HydraWorkload
Management Service
File TransferService
Logging &Book keeping
Service
AMGA
Storage Element
Disk Pool Manager
dCache
Information S
ervices
BDII
MON
User InterfaceUser Access
SecurityServices
Virtual Organisatio
n Membership
Service
Authz. Service
SCAS
Proxy Server
LCAS & LCMAPS
Compute Element
CREAM LCG-CE
gLExec
BLAH
Worker Node
User Interface
15
Enabling Grids for E-sciencE
Основные компоненты
User Interface (UI)User Interface (UI): Для пользователя - точка входа в Грид
Computing Element (CE)Computing Element (CE): Очередь заданий на вычислительном узле, где может выполняться задание пользователя
Storage Element (SE)Storage Element (SE): Сервер хранения данных, где сохраняются Грид файлы (чтение/запись/копирование) или их реплики
Workload Management System (WMS)Workload Management System (WMS):Определяет соответствие между требованиями задания и доступными Грид-ресурсами, управляет запуском
Information SystemInformation System: Содержит характеристики и статус ресурсов
File and replica catalogFile and replica catalog: местоположение файлов в Грид и их реплик
Logging and Bookkeeping (LB)Logging and Bookkeeping (LB): Статус заданий, выполняющихся в Грид
16
Enabling Grids for E-sciencE
Доступ к ВО EGEE
ВИРТУАЛЬНАЯ ОРГАНИЗАЦИЯ
• Пользователи (и компьютеры) идентифицируются при помощи грид-сертификатов. Сертификаты выдаются национальными Центрами сертификации (CA).
• Сервис управления ВО (VOMS) поддерживает список пользователей, зарегистрированных в ВО
• Последовательность действий:–Получить сертификат из своего
национального CA: http://www.igtf.net
–Зарегистрироваться в ВО Список ВО: http://cic.gridops.org/
–Менеджер ВО утверждает запрос Модифицируется VOMS DB Информация реплицируется на все
ресурсы ВО в течении 24 часов
–Можно работать в Грид через командный или графический интерфейс
CA
менеджер ВО
Получение сертификата: единождыОбновление сертификата: ежегодно
VOMS database
Грид сайты
VOMS
Вступление в ВО:единожды
Репликация VOMS DB
ежесуточно
Вы
Регистрация
17
Enabling Grids for E-sciencE
Как найти национальный CA
http://igtf.net
CA в Азиатско-Тихоокеанском
регионе
CA в Европе
CA в Америке
18
Enabling Grids for E-sciencE
РДИГ CA
http://ca.grid.kiae.ru/RDIG/
19
Enabling Grids for E-sciencE
Получение сертификата
Подписанный открытый ключ передается пользователю
Закрытый ключшифруется на
локальном диске
На подпись передается открытый ключ
Пользователь создаёт пару ключейОткрытый / Закрытый
Для подписи необходимо удостоверение личности,
которое предъявляется RAСА подписывает открытый ключ с помощью своего
корневого сертификата и информирует пользователя
Центр cертификации
ID
Корневой сертификат
CA
20
Enabling Grids for E-sciencE
Сертификаты пользователя
• В зависимости от способа получения сертификата он может быть получен в различных форматах:
– *.pem формат: 2 файла: userkey.pem – закрытый ключ, userсert.pem – подписанный сертификат)– *.p12 формат (PKCS12): один файл - для загрузки в браузер
Mozilla/Netscape/FireFox– *.pfx формат: один файл - для загрузки в браузер Internet Explorer
• Куда может быть скопирован (загружен) сертификат:– в веб-браузер– на машину User Interface– на MyProxy сервер– для личного пользования – на USB носитель
• Сертификат имеет срок действия (от 2 недель до 1 года)• По истечению срока действия он может быть продлён
Типичная картина на машине User Interface:$ ls -l .globus/total 8-rw-r--r-- 1 ole users 1761 Nov 25 2009 usercert.pem-r-------- 1 ole users 951 Nov 24 2009 userkey.pem
21
Enabling Grids for E-sciencE
Вступление в члены ВО
Сертификат должен быть
загружен в браузер
22
Enabling Grids for E-sciencE
GILDA CA для обучения
• GILDA CA имеет особенности– Облегчённая аутентификация – Нет необходимости в
подтверждении RA Получение сертификата только через WWW!
– Возобновляемый сертификат для GILDA сразу после выдачи действителен в течении 2 недель (обычно – 1 год)
– Возобновляемый сертификат для GILDA действителен только только для GILDA ВО (обычный сертификат годится для любой ВО)
• Ссылки:– Инструкция: https://gilda.ct.infn.it
Выберите пункт меню - “Instruction for Users”
– Сайт GILDA CA: https://gilda-security.ct.infn.it/CA
– Запрос сертификатов для проведения курсов: https://gilda.ct.infn.it Выберите пункт меню “Request a tutorial”
– Поддержка пользователей: http://gilda-support.ct.infn.it/
23
Enabling Grids for E-sciencE
Доступ к t-инфраструктуре GILDA
1. Получить сертификат от GILDA CA2. Подтвердить согласие с правилами GILDA,
зарегистрироваться в ВО GILDA3. Загрузить сертификат на User Interface 4. Можно работать через SSH к User Interface,
либо через Веб-интерфейс Grid Tutor
24
Enabling Grids for E-sciencE
t-инфраструктура в РДИГ•Состав:
–три грид-сайта ОИЯИ, Дубна (RU-JINR, RU-JINR-2, RU-JINR-MPI)
– грид-сайт ОФВЭ, Протвино (SU-Protvino-IHEP)
–грид-сайт ИМИТ АН РУз, Ташкент, Узбекистан (UZ-IMIT)
–грид-сайт Софийского университета, София, Болгария (BG-SU)
–грид-сайт ИТФ, Киев, Украина (UA-BITP)
–грид-сайт КПИ, Киев, Украина (UA-BITP)
25
Enabling Grids for E-sciencE
Пользователи EGEE
User
User
User
User
User
User
User
ВО ВО ВО
Домен Домен
Сооб
щество
пользовател
ейГрид
авториза
ция
Под
держ
иваемы
е
обл
асти+
другие прил
ожени
я
Области приложений:• Физика высоких энергий (HEP)• Биологические науки (LS)• Науки о Земле (ES)• Грид обсерватория (GO)• Вычислительная химия (CC)• Астрономия и астрофизика
(AA)• Термоядерный синтез (F)
23 “Базовых” ВО: Использование CPU > 10% от всего домена
182 “активных” ВО
4167 пользователей в “Базовых” ВО
13,381 пользователей в зарегистрированных ВО
Области приложений и контакты: https://twiki.cern.ch/twiki/bin/view/EGEE/NA4
26
Enabling Grids for E-sciencE
Работа в ВО EGEE
Сервисы gLite (управление, данные,
вычисления, безопасность, .)
Средства разработки, программные
комплексы, порталы
Приложения
ИКС & APIs
• Большинство ВО разрабатывают своё ПО “поверх” gLite
• Некоторые области приложений имеют особые требования
• Программа EGEE RESPECT :– Recommended External Software
Packages for Egee CommuniTies– Перечень внешнего ПО, которое
успешно работает с gLite Расширяет функциональность
Грид-инфраструктуры Сокращает дублирование при
разработке Ускоряет “гридификацию” новых
приложений
– http://technical.eu-egee.org/index.php?id=290
27
Enabling Grids for E-sciencE
Поддержка пользователей
Основные службы поддержки:• Global Grid User Support - GGUS: http://www.ggus.org/
– Если возникают проблемы при работе в любой ВО производственного (production) Грид (т.е. CE, WMS, UI, …)
– Если есть практические вопросы по работе сервисов gLite– При обращении в браузер должен быть загружен сертификат!
• EGEE Application Porting Support для пользователей: http://www.lpds.sztaki.hu/gasuc/ – Если вы не знаете, как портировать ваше приложение в EGEE– Технические консультации + программисты, которые могут помочь
вам!• Служба поддержки пользователей РДИГ: https://glse.itep.ru/
usersupport/index.php– Первый уровень поддержки пользователей РДИГ– Проблемы при работе с региональными ВО
• Служба поддержки администраторов сайтов РДИГ: https://glse.itep.ru/adminsupport/index.php
Enabling Grids for E-sciencE
www.eu-egee.org
Запуск простейшего задания
29
Enabling Grids for E-sciencE
Запуск заданий
• Задание (job) – это средство для запуска приложений в Грид• Информация, которая должна быть определена, когда задание
должно быть запущено в Грид– Характеристики задания– Требования задания и условия на вычислительные ресурсы
Включая требования на программное обеспечение
– Требования к данным
• Эта информация определяется при помощи Job Description Language (JDL)
– Основан на CLASSified ADvertisement language (ClassAd) из проекта Condor ClassAd – последовательность атрибутов, разделённых (;)
30
Enabling Grids for E-sciencE
Workload Management System
• Пользователь управляет заданиями через подсистему управления загрузкой (Workload Management System - WMS);
• Основная задача WMS - планирование и управление распределенными ресурсами в системе Грид;
• Что может пользователь?– Посылать задачи на выполнение;
– Выполнять задачи на наиболее подходящих для этого ресурсах (WMS автоматически оптимизирует использование ресурсов);
– Получать информацию о состоянии задач;
– Получать результаты выполнения задач.
31
Enabling Grids for E-sciencE
Запуск простого задания - 1
Computing Element
Storage Element
Сайт X в EGEE
User Interface
Сервис управления ВО
(БД пользователей ВО)
создание прокси
32
Enabling Grids for E-sciencE
Запуск простого задания - 2
Computing Element
Storage Element
Сайт X в EGEE
User Interface
Сервис управления ВО
(БД пользователей ВО)
создание прокси
Information System
запрос
создание JDL, запуск задания (исполняемое) + данные (ограниченный объём)
WorkloadManagement
System
публикует состояние
33
Enabling Grids for E-sciencE
Запуск простого задания - 3
Computing Element
Storage Element
Сайт X в EGEE
User Interface
Сервис управления ВО
(БД пользователей ВО)
создание прокси
Information System
запрос
создание JDL, запуск задания (исполняемое) + данные (ограниченный объём)
WorkloadManagement
System
публикует состояние
запуск задания
протоколирование
Logging and bookkeeping
процесс
34
Enabling Grids for E-sciencE
Запуск простого задания - 4
Computing Element
Storage Element
Сайт X в EGEE
User Interface
Сервис управления ВО
(БД пользователей ВО)
создание прокси
Information System
запрос
создание JDL, запуск задания (исполняемое) + данные (ограниченный объём)
WorkloadManagement
System
публикует состояние
запуск задания
Logging and bookkeeping
выходныеданные
получение статуса ивыходные данные
(ограниченный объём)
статус задания
процесс
протоколирование
35
Enabling Grids for E-sciencE
Создание прокси$ ls -l .globus/-r-------- 1 ole users 963 Sep 9 18:50 userkey.pem-rw------- 1 ole users 821 Sep 9 18:50 userreq.mail
$ voms-proxy-init --voms atlasEnter GRID pass phrase: ***********Your identity: /C=RU/O=RDIG/OU=users/OU=pnpi.nw.ru/CN=Sergey OleshkoCreating temporary proxy .................................. DoneContacting lcg-voms.cern.ch:15001 [/DC=ch/DC=cern/OU=computers/CN=lcg-voms.cern.ch] "atlas" DoneCreating proxy .................................... DoneYour proxy is valid until Fri Jan 29 01:40:30 2010
voms-proxy-init Вход в ГридEnter GRID pass phrase: ****** закрытый ключ защищён паролем– Опции для voms-proxy-init:
Имя VO -hours <время жизни прокси> -help
voms-proxy-destroy выход из Грид
36
Enabling Grids for E-sciencE
JDL: атрибуты
Type - используется для различения простых и составных заданий (Job, Collection, DAG)
JobType – определяет тип задания (Normal, Interactive, MPICH, Checkpointable)
Executable (обязательный) - Имя выполняемой программы
Arguments (optional) - Параметры программы
StdOutput, StdError (optional) - Стандартный output/error
InputSandbox (optional) - Список файлов на UI, которые необходимы для выполнения задания. Эти файлы будут переданы на удаленный узел.
OutputSandbox (optional) - Список файлов, сгенерированных заданием и переданных на WMS, которые должны быть затребованы на UI
ShallowRetryCount (optional) - В случае возникновения ошибки – количество попыток повторного запуска задания (до того, как задание начало выполнятся)
37
Enabling Grids for E-sciencE
Создание JDL файла
$ more hostname.jdl
Type = "Job";JobType = "Normal";Executable = "/bin/hostname";StdOutput = "hostname.out";StdError = "hostname.err";OutputSandbox = {"hostname.err","hostname.out"};Arguments = "-f";ShallowRetryCount = 3;
38
Enabling Grids for E-sciencE
Команды WMS
ВерсияWMS LCG-2 WMS
gLite WMS via NSgLite 3.0
gLite WMS via WMProxy gLite 3.1+
Делегирование прокси
glite-wms-job-delegate-proxy -d delegID
Запуск edg-job-submit [-o joblist]jdlfile
glite-job-submit [-o joblist] jdlfile
glite-wms-job-submit [-d delegID] [-a] [-o joblist]
jdlfile
Статус edg-job-status [-v verbosity] [-i joblist] jobIDs
glite-job-status [-v verbosity] [-i joblist]
jobIDs
glite-wms-job-status [-v verbosity] [-i joblist] jobIDs
Журнал edg-job-get-logging-info [-v verbosity] [-i joblist] jobIDs
glite-job-logging-info [-v verbosity] [-i joblist]
jobIDs
glite-wms-job-logging-info
[-v verbosity] [-i joblist] jobIDs
Выход edg-job-get-output [-dir outdir] [-i joblist] jobIDs
glite-job-output [-dir outdir] [-i joblist] jobI
Ds
glite-wms-job-output [-dir outdir] [-i joblist] jobIDs
Снятие edg-job-cancel [-i joblist] jobID
glite-job-cancel [-i joblist] jobID
glite-wms-job-cancel [-i joblist] jobID
Подходящиересурсы
edg-job-list-match jdlfile
glite-job-list-matchjdlfile
glite-wms-job-list-match [-d delegID] [-a] jdlfile
Рекомендуется
Н
Е
Р
Е
К
О
М
Е
Н
Д
О
В
А
Н
О
39
Enabling Grids for E-sciencE
Порядок выполнения команд
Computing Element
Storage Element
Сайт X в EGEE
1.glite-wms-job-delegate-proxy -d delegID User Interface
0.voms-proxy-init --voms gilda
Контроль заданий
процесс
delegID3.glite-wms-job-submit -d delegID hostname.jdl JobID
4.glite-wms-job-status JobID
5.glite-wms-job-output JobID
2.glite-wms-job-list-match -d delegID hostname.jdl
Сервис управления ВО
(БД пользователей ВО)
40
Enabling Grids for E-sciencE
Статусы задания
SUBMITTED - задание послано пользователем и зарегистрировано в LB сервисеWAITING – происходит поиск подходящего ресурсаREADY - заданию назначен Computing Element, но оно туда ещё не переданоSCHEDULED - задание ожидает в очереди на Computing ElementRUNNING - задание выполняетсяDONE - задание завершилосьABORTED - задание снято WMS (т.к. слишком долгое, срок действия сертификата истёк, и т.п.) CANCELLED - задание снято пользователемCLEARED - Output Sandbox передан на User Interface
41
Enabling Grids for E-sciencE
Практикумы
1. Авторизация и аутентификацияhttp://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=10
Проверка сертификата Создание прокси Проверка прокси
2. Запуск простого задания с использованием WMProxyhttp://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=14
Создание простого JDL файла copy&paste JDL файл с HTML страницы
Делегирование прокси Получение списка ресурсов Запуск задания Проверка статуса задания Получение выходных данных
Дополнительно: http://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=2 Как импортировать сертификат в браузер Как экспортировать сертификат из браузера Команды работы с прокси Работа с MyProxy
42
Enabling Grids for E-sciencE
Веб-страница
Enabling Grids for E-sciencE
www.eu-egee.org
Более сложные примеры
44
Enabling Grids for E-sciencE
“Выполняемая программа”
Executable = "/bin/hostname";
• Может быть установлена на CE Системная команда(утилита) Linux (Scientific Linux!) Прикладное ПО для ВО: информация берётся из Информационной
Системы• Использовать JDL для направления задания на подходящий CE
• Или приходит от клиента– Часть InputSandbox
Скрипт • Не нужна компиляция• Может вызывать бинарные файлы, которые статически установлены
на CE Или бинарный файл
• Должен быть скомпилирован на UI совместимость с CE• Собран быть статически собран позволит избежать ошибок,
вызванных различными версиями библиотек
• Или исходники (+ скрипт для компиляции)• Компилируется на СЕ (на рабочем узле)
45
Enabling Grids for E-sciencE
Запуск собственного скрипта
$ cat testsandbox.jdlType = "Job";JobType = "Normal";Executable = "/bin/sh";Arguments = "testsandbox.sh";StdOutput = "testsandbox.out";StdError = "testsandbox.err";InputSandbox = "testsandbox.sh";OutputSandbox = {"testsandbox.err","testsandbox.out"};ShallowRetryCount = 1;
$ cat testsandbox.sh#!/bin/bashls -l
$ /bin/sh testsandbox.sh
46
Enabling Grids for E-sciencE
Сборка и запуск на WN
• Есть файл с исходным текстом программы на языке С ctst.c, которая выводит строку “Hello world” на стандартный вывод.
• Есть Makefile для сборки этой программы.
• Необходимо обеспечить сборку и запуск программы на удаленном ресурсе.
• JDL файл:
JobType="Normal";
Executable = "startC.sh";
StdOutput = "ctst.out";
StdError = "ctst.err";
OutputSandbox = {"ctst.out","ctst.err"};
InputSandbox = {"startC.sh","ctst.c","Makefile"};
ShellowRetryCount=3;
47
Enabling Grids for E-sciencE
Остальные файлы
• Cтартовый скрипт startC.sh:#!/bin/bashmake //сборка программыchmod +x ctst //разрешаем запускать ее./ctst //запускаемexit 0
• Текст программы на С - ctst.c:#include <stdio.h>int main(int argc, char **argv){ printf("\n\n\n"); printf("Hello world!\n"); printf("\n\n\n");// exit(0);}
• Makefilectst: ctst.o g++ ctst.o -o ctst -lmclean: rm ctst.o ctst
48
Enabling Grids for E-sciencE
Управление WMS через JDL
Executable = “gridTest”;
StdError = “stderr.log”;
StdOutput = “stdout.log”;
InputSandbox = {“/home/ole/test/gridTest”};
OutputSandbox = {“stderr.log”, “stdout.log”};
Requirements = other.Architecture==“INTEL” && other.GlueCEInfoTotalCPUs > 480;
Rank = other.GlueCEStateTotalJobs;
WMS использует Информационную
Систему для поиска CE
Политика планирования, которой следует WMS:• Найти CE, удовлетворяющие требованиям (Requirements) • Выбрать СЕ с максимальным рангом
49
Enabling Grids for E-sciencE
Контроль требований
Computing Element
Storage Element
Сайт X в EGEE
User Interface
Сервис управления ВО
(БД пользователей ВО)
создание прокси
Information System
запрос
создание JDL, запуск задания (исполняемое) + данные (ограниченный объём)
WorkloadManagement
System
публикуетсостояние
запуск задания
Logging and bookkeeping
выходныеданные
получение статуса ивыходные данные
(ограниченный объём)
статус задания
процесс
протоколирование
50
Enabling Grids for E-sciencE
Правила планирования WMS
1. Найти CE, удовлетворяющие требованиям
(определённые атрибутом Requirements в JDL файле)
2. Выбрать CE, которое является “ближайшим”(“Сlose”) к SE, определённым в InputData• Отношение “Ближайший” определяется между CE и SE
администратором сайта• “Ближайший” – не обязательно самый близкий географически,
зависит от скорости каналов связи• Обычно “Ближайший” – это тот же самый сайт
• CE: cluster.pnpi.nw.ru:2119/jobmanager-pbs-atlas• Close SE: cluster.pnpi.nw.ru
3. Выбрать CE с максимальным рангом
(Формула определения ранга задаётся в атрибуте Rank JDL файла)
51
Enabling Grids for E-sciencE
Некоторые JDL атрибуты
• GlueCEUniqueID – идентификатор(имя) CE– Избежать использование “неправильных” CE:
other.GlueCEUniqueID !=
“cluster.pnpi.nw.ru:2119/jobmanager-pbs-atlas”
– Выполнить задание на определённом CE:other.GlueCEUniqueID ==
“cluster.pnpi.nw.ru:2119/jobmanager-pbs-atlas”
• GlueCEInfoTotalCPUs – максимальное число ЦПУ в CE
Rank = other. GlueCEInfoTotalCPUs;• GlueCEStateWaitingJobs – число ожидающих заданий• GlueCEPolicyMaxCPUTime – задание будет снято после этого
числа минут• GlueHostMainMemoryRAMSize – объём памяти
http://glite.web.cern.ch/glite/documentation/ спецификация JDL (запуск через WMS WMProxy)
52
Enabling Grids for E-sciencE
Примеры
• Rank = ( other.GlueCEStateWaitingJobs == 0 ? other.GlueCEStateFreeCPUs : -other.GlueCEStateWaitingJobs);
если нет ожидающих заданий,– тогда выбранный CE будет тот, где больше всего свободных ЦПУ
– в противном случае – тот CE, где меньше всего ожидающих заданий.
• Requirements = ( Member(„IDL2.1”, other.GlueHostApplicationSoftwareRunTimeEnvironment) ) && (other.GlueCEPolicyMaxWallClockTime > 10000);
тот CE где, – установлено IDL2.1
– по крайней мере 10000 сек. может потребоваться заданию (ожидание + выполнение)
53
Enabling Grids for E-sciencE
Практикум по теме
“Ещё о JDL”- http://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=27
Различные варианты “выполняемой программы” Запуск клиентского скрипта
Получить список файлов директории
Запуск бинарного файла клиента (через скрипт)
Requirements, Ranks Послать задание на определённый CE Послать задание на CE, где установлено ПО “GEANT4-6” Послать задание куда угодно, кроме определённого CE (до того там была
ошибка)
Дополнительно:Запросы к информационной системе для получения характеристик и состояния CE и SE:
http://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=16
Enabling Grids for E-sciencE
www.eu-egee.org
Работа с большими файлами данных
55
Enabling Grids for E-sciencE
Основы управления данными
• Файлы в основном записываются один раз, читаются многократно– Если пользователь изменяет файл, то
Либо он обеспечивает непротиворечивость! Либо сохраняет файл с новым именем файла!
– Нет цели создать глобальную систему управления файлами
• Сервисы для управления файлами– Сохранение файлов– Каталоги– Передача файлов
56
Enabling Grids for E-sciencE
Управление данными - 1
WMSWMS
StorageStorageElement 1Element 1
ComputingComputingElementElement
Input “sandbox”
Input “sandbox” + Broker Info
Output “sandbox”
Output “sandbox”
““User User interface”interface”
StorageStorageElement 2Element 2
Задание 1 записывает результаты, как 2 реплики одного файла на 2 различных SE
Ограничение ~20MByte
DataSets infoLCG LCG FileCatalogue FileCatalogue (LFC)(LFC)
57
Enabling Grids for E-sciencE
Управление данными - 2
WMSWMS
StorageStorageElement 1Element 1
ComputingComputingElementElement
Input “sandbox”
Input “sandbox” + Broker Info
Output “sandbox”
Output “sandbox”
““User User interface”interface”
StorageStorageElement 2Element 2
Задание 2 читает файл, как входной с SE
Ограничение ~20MByte
DataSets infoLCG LCG FileCatalogue FileCatalogue (LFC)(LFC)
Считать там, где ближе всего
находятся данные
58
Enabling Grids for E-sciencE
Логические имена файлов
StorageStorageElement 1Element 1
““User User interface”interface”
LCG LCG FileCatalogue FileCatalogue (LFC)(LFC)
StorageStorageElement 2Element 2
Файл с одинаковым содержимым находится на двух SE
“Myfile.dat”
Myfile.dat
File_on_se1
File_on_se2
59
Enabling Grids for E-sciencE
Разрешение логических имён
StorageStorageElement 1Element 1
““User User interface”interface”
LCG LCG FileCatalogue FileCatalogue (LFC)(LFC)
StorageStorageElement 2Element 2
“Myfile.dat”
Myfile.dat
“Логическое имя”
File_on_se1 (“SURL”: site URL)
File_on_se2 (“SURL”: site URL)
“GUID” Глобальный уникальный идентификатор
Файл с одинаковым содержимым находится на двух SE
Содержимое файла не может быть изменено
Нет необходимости синхронизировать реплики
60
Enabling Grids for E-sciencE
Именование файлов
• Symbolic Link в пространстве логических имён (logical filename space)• Logical File Name (LFN) [lfn:<anything_you_want>]
– Имя, созданное пользователем для того чтобы ссылаться на некоторый элемент данных, напр. “lfn:cms/20030203/run2/track1”
• Globally Unique Identifier (GUID) [guid:<40_bytes_unique_string>]– Внутренний (машинный) идентификатор элемента данных, напр.
“guid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6”
• Site URL (SURL) [<sfn | srm>://<SE_hostname>/<some_string>]
(or Physical File Name (PFN) or Site FN) – Физическое местоположение реплики элемента данных в системе хранения данных,
напр. “srm://pcrd24.cern.ch/flatfiles/cms/output10_1” (SRM) “sfn://lxshare0209.cern.ch/data/alice/ntuples.dat” (Classic SE)
• Transport URL (TURL) [<protocol>://<some_string>]– Временный указатель на реплику + протокол доступа: распознаётся SE, напр.
“rfio://lxshare0209.cern.ch//data/alice/ntuples.dat”
Symbolic Link 1
Symbolic Link n
GUID
Physical File SURL n
Physical File SURL 1
.
. ..
TURL 1
TURL n
.
.LFN
SRM
61
Enabling Grids for E-sciencE
Каталоги (File and Replica Catalog)
• Главная цель - определить, где размещены файлы в Grid• File and Replica Catalog - это сервис, который реализует это и
поддерживает соответствие между LFNs, GUIDs и SURLs.• В gLite поддерживаются 2 типа каталогов:
– Replica Location Server (RLS) - старый Local Replica Catalog (LRC) Replica Metadata Catalog (RMC)
– LCG File Catalog (LFC) – по умолчанию
• Тип используемого пользователем каталога определяется переменной окружения LCG_CATALOG_TYPE: edg для RLS, lfc для LFC
• Оба каталога между собой несовместимы!!! Однако есть средства миграции из RLS в LFC
• Файл данных только тогда может считаться Грид-файлом, когда он физически присутствует на каком-либо SE и зарегистрирован в каталоге
62
Enabling Grids for E-sciencE
Структура LFC
• Все члены данной ВО имеют права чтения/записи в соответствующую директорию
• Если соответствующей директории нет, то это означает, что данный LFC сервер не поддерживает эту ВО
• Команды работы с LFC похожи на соответствующие команды в UNIX (с префиксом lfc-)
• Переменная окружения $LFC_HOST должна содержать имя LFC сервера
Defined by the userLFC Namespace
LFC имеет иерархическую структуру
/grid/<VO_name>/ <you create it>
63
Enabling Grids for E-sciencE
Директории LFC
Storage Element 3sfn://trigriden01.unime.it/flatfiles/SE00/gilda/generated/2007-06-23/filec79a9e3c-2485-4206-a2a5-235f
Storage Element 2srm://aliserv6.ct.infn.it/dpm/ct.infn.it/home/gilda/generated/2007-06-23/filea21ab3e2-8ff6-4a44-82a7-f2
• LFC директории = виртуальные директории – Каждый файл из директории может быть сохранён на своём SE
lfn:/grid/gilda/tutorial1/run2/
input1input2input3
Storage Element 1sfn://grid005.iucc.ac.il/storage/gilda/generated/2007-06-23/fileb233d43f-5bc6-4ede-a5fe-611d48be2ba5
LCG FileCatalogue LCG FileCatalogue (LFC)(LFC)
64
Enabling Grids for E-sciencE
Директории LFC
Storage Element 3sfn://trigriden01.unime.it/flatfiles/SE00/gilda/generated/2007-06-23/filec79a9e3c-2485-4206-a2a5-235f
Storage Element 2srm://aliserv6.ct.infn.it/dpm/ct.infn.it/home/gilda/generated/2007-06-23/filea21ab3e2-8ff6-4a44-82a7-f2
• LFC директории = виртуальные директории – Каждый файл из директории может быть сохранён на своём SE
lfn:/grid/gilda/tutorial1/run2/
input1input2input3
Storage Element 1sfn://grid005.iucc.ac.il/storage/gilda/generated/2007-06-23/fileb233d43f-5bc6-4ede-a5fe-611d48be2ba5
LCG FileCatalogue LCG FileCatalogue (LFC)(LFC)
Storage Element 4sfn://grid005.iucc.ac.it/flatfiles/SE00/gilda/generated/2007-06-23/filec79a9e3c-2485-4206-a2a5-235f
65
Enabling Grids for E-sciencE
Команды для работы с LFC
• Есть 2 набора команд, которые могут использоваться в качестве средств для работы с каталогами и файлами– lfc-... команды для работы с каталогом LFC, который
определяет соответствие между LFN и SURL (Site URL)– lcg-... команды, которые позволяют копировать файлы
с/на SE и создавать реплики файлов. Кроме того, команды lcg-... также обеспечивают взаимодействие между SE и каталогом.
66
Enabling Grids for E-sciencE
Storage Element
• Обеспечивает– Хранение файлов: системы хранения файлов – дисковые или
ленточные– Транспортный протокол (gsiFTP) ~ FTP сервер, дополненный GSI– Унифицированный интерфейс (SRM)
Запрос на файл
+VOMS proxy
Аутентификация, авторизация
Storage Element
Диск
Лен
та
Лен
та
Лен
та
протокол
протокол
протокол
протоколы сервис ресурсы
67
Enabling Grids for E-sciencE
Типы SE в gLite
Тип Ресурс Передача
файлов Протокол доступа SRM
Classic SE Disk server GSIFTP insecure RFIO No
DPM Disk pool GSIFTP secure RFIO Yes
dCache Disk pool/MSS GSIFTP gsidcap Yes
CASTOR MSS GSIFTP insecure RFIO Yes
68
Enabling Grids for E-sciencE
Практические упражнения
“Основы системы управления данными в gLite”(http://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=15):
• Получение списка файлов и директорий• Создание директории• Сохранение файла на SE• Получение SURL файла• Репликация файла между SE• Создание символической ссылки• Передача файла с SE на UI• Удаление
69
Enabling Grids for E-sciencE
Практические упражнения
“Запуск заданий, требующих данные”(http://egee.pnpi.nw.ru/cgi/index.cgi?l1=6&l2=25):Упражнение 1:
• Передать файл на SE, зарегистрировать в LFC• Переслать скрипт на CE, как задание• Передать выполняемый файл через input sandbox• Cкрипт начинает выполняться на CE• Скрипт копирует файл с SE• Файл обрабатывается, результат записывается в STDOUT
Упражнение 2:• Переслать скрипт на CE, как задание• Передать выполняемый файл через input sandbox• Cкрипт начинает выполняться на CE• Скрипт создаёт локальный файл • Программа, запущенная из скрипта, записывает файл на SE,
регистрирует в LFC• Результат доступен при помощи lcg-cp
70
Enabling Grids for E-sciencE
Спасибо за внимание