В.Н. Ларин Протвино, ИФВЭ, 03.12.2009 В.Н. Ларин Протвино, ИФВЭ, 03.12.2009 Основы работы в среде Grid: от сертификации до запуска заданий составных типов.

Презентация:



Advertisements
Похожие презентации
EGEE-II INFSO-RI Enabling Grids for E-sciencE Запуск задач в EGEE (gLite 3.0) Олешко С.Б. Петербургский институт ядерной физики.
Advertisements

EGEE is a project funded by the European Union under contract IST Introduction to LCG-2 Введение в LCG-2 O.Kodolova (SINP MSU), E.Tikhonenko.
EGEE is a project funded by the European Union under contract IST Getting started to LCG-2: obtaining of certificates E.Tikhonenko (JINR, NA4.
Enabling Grids for E-sciencE GILDA Grid Demonstrator Олешко Сергей Петербургский институт ядерной физики РАН.
Enabling Grids for E-sciencE Специальные типы заданий в ППО gLite Н. Клопов (Петербургский Институт Ядерной Физики РАН)
Архитектура LCG Ткачев Игорь ОИЯИ, Дубна, Россия 16 мая 2006 г.
Enabling Grids for E-sciencE С чего начать? Олешко С.Б. Петербургский институт ядерной физики г.Гатчина.
EGEE is a project funded by the European Union under contract INFSO-RI Кириченко В.В. ИТЭФ, 26 Декабря
EGEE-II INFSO-RI Enabling Grids for E-sciencE Информационная система в gLite (практическая часть) Олешко С.Б. Петербургский институт.
22 декабря 2006 г. 1Рабочее совещание ATLAS Проведение анализа данных ATLAS с применением программы GANGA Шиякова Мария Маринова НЭОВП - ATLAS.
Web-узлы. Разработка и администрирование.. Часть 1. Web-технология.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Информационная система в gLite (практическая часть) Новодворский Е.Г. Олешко С.Б.
Региональный сегмент научного GRID в Санкт-Петербурге Кирьянов А.К. ПИЯФ РАН.
К построению и контролю соблюдения политик безопасности распределенных компьютерных систем на основе механизмов доверия А. А. Иткес В. Б. Савкин Институт.
GridCom, Grid Commander – графическая оболочка для работы с задачами и данными в Гриде Галактионов В.В. ОИЯИ, Дубна.
EGEE is a project funded by the European Union under contract IST An introduction to Grid computing using the GENIUS portal and the GILDA testbed.
Эфрос-сканер Cканирование маршрутизаторов и МСЭ Cisco на основе сценариев и заданий, создание базы данных с описанием команд, их параметров и уровней привилегий.
Лекция 11 Тема «Формы » Преподаватель: Халелова Е.Н.
Enabling Grids for E-sciencE A short introduction to the LCG/EGEE Projects Краткая информация о проектах LCG и EGEE Olga Kodolova, SINP MSU Elena Tikhonenko,
Интернет- технологии МИИГаИК. Указание XML-документов в ориентире на будущее
Транксрипт:

В.Н. Ларин Протвино, ИФВЭ, В.Н. Ларин Протвино, ИФВЭ, Основы работы в среде Grid: от сертификации до запуска заданий составных типов

Основы работы в среде GRID2 Введение Предлагаемый материал носит обзорный характер и поэтому не претендует на полноту и глубину. Цель лекции - дать общее представление о работе в среде Grid и некоторых возможностях, которые предоставляются этой средой пользователю. Материал предназначен для пользователей, имеющих заинтересованность в применении Grid-технологий, но еще не знакомых или мало знакомых с этой средой. Предлагаемый материал носит обзорный характер и поэтому не претендует на полноту и глубину. Цель лекции - дать общее представление о работе в среде Grid и некоторых возможностях, которые предоставляются этой средой пользователю. Материал предназначен для пользователей, имеющих заинтересованность в применении Grid-технологий, но еще не знакомых или мало знакомых с этой средой.

Основы работы в среде GRID3 Используемые сокращения: CE – Computing Element CLI - Command Line Interface EGEE – Enabling Grids for E-sciencE JDL – Job Description Language LCG – LHC Computing Grid RDIG – Russian Data Intensive Grid SE – Storage Element UI – User Interface VO – Virtual Organization WMS – Workload Management System WN – Worker Node CE – Computing Element CLI - Command Line Interface EGEE – Enabling Grids for E-sciencE JDL – Job Description Language LCG – LHC Computing Grid RDIG – Russian Data Intensive Grid SE – Storage Element UI – User Interface VO – Virtual Organization WMS – Workload Management System WN – Worker Node

Основы работы в среде GRID4 Вопросы для обсуждения С чего начать? Как запустить задание? Как отслеживать его выполнение? Как получить результат? Какие типы заданий реализуются? С чего начать? Как запустить задание? Как отслеживать его выполнение? Как получить результат? Какие типы заданий реализуются?

Основы работы в среде GRID5 С чего начать? Получить цифровой сертификат пользователя. Получить доступ (account) к UI (User Interface). Зарегистрироваться в одной или нескольких ВО (Виртуальных Организациях). Получить цифровой сертификат пользователя. Получить доступ (account) к UI (User Interface). Зарегистрироваться в одной или нескольких ВО (Виртуальных Организациях).

Основы работы в среде GRID6 Как получить сертификат? Получить доступ к Linux-машине или установить ОС Linux на своем компьютере. Найти информацию о получении сертификата: - на сайте Вашей организации (если она участница какого-либо Grid-проекта); в ИФВЭ – ; - на сайте Центра Выдачи Сертификатов Получить доступ к Linux-машине или установить ОС Linux на своем компьютере. Найти информацию о получении сертификата: - на сайте Вашей организации (если она участница какого-либо Grid-проекта); в ИФВЭ – ; - на сайте Центра Выдачи Сертификатов

Основы работы в среде GRID7 Страница EGEE в ИФВЭ

Основы работы в среде GRID8

Основы работы в среде GRID9

Основы работы в среде GRID10 Заполните форму и следуйте инструкции Заполнив электронную форму на странице, показанной выше, Вы получите подробную инструкцию по созданию запроса на получение сертификата. Следуя инструкции, сгенерируйте и отправьте в Центр Выдачи Сертификатов запрос, распечатайте, заполните бумажную форму, подпишите ее у Уполномоченного по регистрации (RA – Registration Authority). В процессе генерации запроса создается Ваша ключевая пара: открытый и закрытый ключи. Через 3 дня (или недели) Вы получите из ЦВС подписанный сертификат.

Основы работы в среде GRID11 Результат сертификации Результатом успешной сертификации являются два файла, помещенные в каталог.globus, созданный автоматически при генерации запроса в Вашем домашнем каталоге: Файл с открытым ключом (public key), куда Вы скопируете подписанный сертификат: usercert.pem Файл, содержащий закрытый ключ ( private key ) : userkey.pem Результатом успешной сертификации являются два файла, помещенные в каталог.globus, созданный автоматически при генерации запроса в Вашем домашнем каталоге: Файл с открытым ключом (public key), куда Вы скопируете подписанный сертификат: usercert.pem Файл, содержащий закрытый ключ ( private key ) : userkey.pem

Основы работы в среде GRID12 Виртуальная организация Виртуальная организация (VO) – это объединение пользователей и ресурсов Grid для решения задач в конкретной области научных исследований в соответствии с установленными для данной VO правилами. Правила регулируют доступ к вычислительным ресурсам, программному обеспечению и данным. Виртуальная организация (VO) – это объединение пользователей и ресурсов Grid для решения задач в конкретной области научных исследований в соответствии с установленными для данной VO правилами. Правила регулируют доступ к вычислительным ресурсам, программному обеспечению и данным.

Основы работы в среде GRID13 Информация о VOs Информацию о VO, действующих в рамках проектов EGEE и LCG можно найти здесь Для доступа к ресурсам только Российского Грид- сегмента (РГС) можно зарегистрироваться в одной из VO, поддерживаемых RDIG. Информацию о них можно найти на странице msu.ru/virtual_organization.html Информацию о VO, действующих в рамках проектов EGEE и LCG можно найти здесь Для доступа к ресурсам только Российского Грид- сегмента (РГС) можно зарегистрироваться в одной из VO, поддерживаемых RDIG. Информацию о них можно найти на странице msu.ru/virtual_organization.html

Основы работы в среде GRID14 О регистрации в VO Познакомиться с порядком регистрации и зарегистри- роваться можно на указанных выше сайтах. Для этого в Ваш браузер необходимо загрузить персональный сертификат в формате PKCS12. Для конвертации цифрового сертификата в этот формат в подкаталоге.globus нужно выполнить команду: pkcs12 -export -inkey userkey.pem -in usercert.pem -out cert.p12 -name MyCertificate Познакомиться с порядком регистрации и зарегистри- роваться можно на указанных выше сайтах. Для этого в Ваш браузер необходимо загрузить персональный сертификат в формате PKCS12. Для конвертации цифрового сертификата в этот формат в подкаталоге.globus нужно выполнить команду: pkcs12 -export -inkey userkey.pem -in usercert.pem -out cert.p12 -name MyCertificate

Основы работы в среде GRID15 Как запустить задание? Войти на UI. Получить proxy-сертификат. Создать JDL-файл с описанием задания. Запустить задание с помощью команды glite-wms-job-submit٭ ٭Здесь и далее используются команды системы управления заданием gLite WMS via WMProxy. Команды LCG-2 WMS и gLite WMS via NS (Network Server) обсуждаются, например, в gLite 3 User Guide. Войти на UI. Получить proxy-сертификат. Создать JDL-файл с описанием задания. Запустить задание с помощью команды glite-wms-job-submit٭ ٭Здесь и далее используются команды системы управления заданием gLite WMS via WMProxy. Команды LCG-2 WMS и gLite WMS via NS (Network Server) обсуждаются, например, в gLite 3 User Guide.

Основы работы в среде GRID16 Доступ на UI Получив account на одном из доступных UI на кластере (у администратора кластера), осуществить вход (например, на ui.ngc6475): ~]$ ssh password : ******* ssh(6087) Warning: Remote host denied X11 forwarding. Last login: Thu Jun 18 15:39: from larin.ihep.su ~] Получив account на одном из доступных UI на кластере (у администратора кластера), осуществить вход (например, на ui.ngc6475): ~]$ ssh password : ******* ssh(6087) Warning: Remote host denied X11 forwarding. Last login: Thu Jun 18 15:39: from larin.ihep.su ~]

Основы работы в среде GRID17 Предварительные действия (1) 1. Идентификация для работы в среде GRID: Создать директорию.globus (при первом входе). Скопировать в нее два файла, сгенерированные при получении сертификата: usercert.pem, userkey.pem. ~]$ ls -l ~/.globus total 12 -r--r--r-- 1 larinvn larinvn 5669 Oct 20 14:37 usercert.pem -r larinvn larinvn 963 Oct 20 14:38 userkey.pem Внимание! Эти файлы необходимо обновлять после каждого обновления сертификата (1 раз в год). 1. Идентификация для работы в среде GRID: Создать директорию.globus (при первом входе). Скопировать в нее два файла, сгенерированные при получении сертификата: usercert.pem, userkey.pem. ~]$ ls -l ~/.globus total 12 -r--r--r-- 1 larinvn larinvn 5669 Oct 20 14:37 usercert.pem -r larinvn larinvn 963 Oct 20 14:38 userkey.pem Внимание! Эти файлы необходимо обновлять после каждого обновления сертификата (1 раз в год).

Основы работы в среде GRID18 Предварительные действия (2) 2. Создание прокси-сертификата для получения доступа к ресурсам GRID. Предполагается, что Вы уже член VO (например, edu). Тогда прокси-сертификат создается командой voms-proxy-init -voms edu По-умолчанию прокси-сертификат создается на 12 часов. Если необходимость в нем отпала раньше, его следует аннулировать: voms-proxy-destroy 2. Создание прокси-сертификата для получения доступа к ресурсам GRID. Предполагается, что Вы уже член VO (например, edu). Тогда прокси-сертификат создается командой voms-proxy-init -voms edu По-умолчанию прокси-сертификат создается на 12 часов. Если необходимость в нем отпала раньше, его следует аннулировать: voms-proxy-destroy

Основы работы в среде GRID19 ~]$ voms-proxy-init -voms edu Cannot find file or dir: /home/larinvn/.glite/vomses Enter GRID pass phrase: *************** Your identity: /C=RU/O=RDIG/OU=users/OU=ihep.su/CN=Vladislav Larin Creating temporary proxy Done Contacting vps102.jinr.ru:15000 [/O=Grid/OU=GlobusTest/OU=GridStudy/CN=host/vps102.jinr.ru] "edu" Done Creating proxy Done Your proxy is valid until Tue Jun 23 21:33: ~]$ voms-proxy-init -voms edu Cannot find file or dir: /home/larinvn/.glite/vomses Enter GRID pass phrase: *************** Your identity: /C=RU/O=RDIG/OU=users/OU=ihep.su/CN=Vladislav Larin Creating temporary proxy Done Contacting vps102.jinr.ru:15000 [/O=Grid/OU=GlobusTest/OU=GridStudy/CN=host/vps102.jinr.ru] "edu" Done Creating proxy Done Your proxy is valid until Tue Jun 23 21:33: Пример 1. (Proxy)

Основы работы в среде GRID20 Proxy для длинных задач Стандартный proxy предоставляет не более 12 часов для выполнения заданий. Возможна пролонгация proxy сервером автоматического обновления сертификатов ( myproxy ). Для этого нужно зарегистрировать proxy-сертификат на сервере с помощью команды myproxy-init -s -t По умолчанию адрес myproxy-сервера берется из переменной окружения MYPROXY_SERVER, а время регистрации по умолчанию составляет 168 часов (7 дней). Стандартный proxy предоставляет не более 12 часов для выполнения заданий. Возможна пролонгация proxy сервером автоматического обновления сертификатов ( myproxy ). Для этого нужно зарегистрировать proxy-сертификат на сервере с помощью команды myproxy-init -s -t По умолчанию адрес myproxy-сервера берется из переменной окружения MYPROXY_SERVER, а время регистрации по умолчанию составляет 168 часов (7 дней).

Основы работы в среде GRID21 Предварительные действия (3) 3. Явное делегирование полномочий (рекомен- дуемое, но необязательное действие). WMProxy-сервис взаимодействует с WMS от имени пользователя, поэтому последний должен делегировать ему свои полномочия. Существует два способа делегирования – автоматическое и явное. Первый способ реализуется в командах с помощью опции -a. Второй – с помощью опции --delegationid ( -d ) с указанием идентификатора делегирования, который определяется командой glite-wms-job-delegate-proxy –d 3. Явное делегирование полномочий (рекомен- дуемое, но необязательное действие). WMProxy-сервис взаимодействует с WMS от имени пользователя, поэтому последний должен делегировать ему свои полномочия. Существует два способа делегирования – автоматическое и явное. Первый способ реализуется в командах с помощью опции -a. Второй – с помощью опции --delegationid ( -d ) с указанием идентификатора делегирования, который определяется командой glite-wms-job-delegate-proxy –d

Основы работы в среде GRID22 Пример 2. (Делегирование) ~]$ glite-wms-job-delegate-proxy -d $USER Connecting to the service ========== glite-wms-job-delegate-proxy Success ========== Your proxy has been successfully delegated to the WMProxy: with the delegation identifier: larinvn ==================================================== Здесь larinvn – идентификатор делегирования.

Основы работы в среде GRID23 Предварительные действия (4) 4. Описание задания (JDL-файл) Файл с описанием задания – это текстовый файл на языке JDL (Job Description Language), содержащий строки в виде пар: attribute = expression; Атрибуты в основном определяют: тип задания; используемые файлы (входные и выходные); требования, предъявляемые к вычислительным ресурсам.

Основы работы в среде GRID24 Пример 3. (Простейшие JDL-файлы) ~]$ cat hello.jdl ~]$ cat script.jdl Type = "Job"; Executable = "script.sh"; JobType = "Normal"; Arguments = "infile"; Executable ="/bin/echo"; StdOutput = "script.out"; Arguments ="Hello IHEP"; StdError = "script.err"; StdOutput ="std.out"; OutputSandbox = StdError ="std.err"; {"script.out", "script.err"}; OutputSandbox ={"std.out", InputSandbox = "std.err"}; {"/home/larinvn/script.sh", "/home/larinvn/infile"}; ~]$ cat hello.jdl ~]$ cat script.jdl Type = "Job"; Executable = "script.sh"; JobType = "Normal"; Arguments = "infile"; Executable ="/bin/echo"; StdOutput = "script.out"; Arguments ="Hello IHEP"; StdError = "script.err"; StdOutput ="std.out"; OutputSandbox = StdError ="std.err"; {"script.out", "script.err"}; OutputSandbox ={"std.out", InputSandbox = "std.err"}; {"/home/larinvn/script.sh", "/home/larinvn/infile"};

Основы работы в среде GRID25 Список ресурсов, доступных для запуска задания Прежде чем запускать задание, полезно проверить какие Вычислительные Элементы (СЕ) доступны для его выполнения. Это реализуется командой: glite-wms-job-list-match -a hello.jdl с автоматическим делегированием, или glite-wms-job-list-match -d $USER script.jdl с явным делегированием. Кроме того, эта команда позволяет проверить синтаксис JDL-файла. Однако применима только для простых заданий. Прежде чем запускать задание, полезно проверить какие Вычислительные Элементы (СЕ) доступны для его выполнения. Это реализуется командой: glite-wms-job-list-match -a hello.jdl с автоматическим делегированием, или glite-wms-job-list-match -d $USER script.jdl с явным делегированием. Кроме того, эта команда позволяет проверить синтаксис JDL-файла. Однако применима только для простых заданий.

Основы работы в среде GRID26 Пример списка ресурсов [ ~]$ glite-wms-job-list-match -a --rank hello.jdl Connecting to the service =================================================== COMPUTING ELEMENT IDs LIST The following CE(s) matching your job requirements have been found: *CEId* *Rank* - vps117.jinr.ru:2119/jobmanager-pbs-edu 3 - ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu 2 - vps105.jinr.ru:2119/jobmanager-lcgpbs-edu 2 - vps107.jinr.ru:2119/jobmanager-lcgpbs-edu 2 ==================================================== [ ~]$ glite-wms-job-list-match -a --rank hello.jdl Connecting to the service =================================================== COMPUTING ELEMENT IDs LIST The following CE(s) matching your job requirements have been found: *CEId* *Rank* - vps117.jinr.ru:2119/jobmanager-pbs-edu 3 - ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu 2 - vps105.jinr.ru:2119/jobmanager-lcgpbs-edu 2 - vps107.jinr.ru:2119/jobmanager-lcgpbs-edu 2 ====================================================

Основы работы в среде GRID27 Запуск задания На примере простейшего задания обсудим команды CLI (Command Line Interface), доступные пользователю при его выполнении. 1. Команда запуска задания: glite-wms-job-submit -a -o jobid hello.jdl -а - автоматическое делегирование полномочий WMProxy; -o - направляет в файл jobid идентификатор задания вида (Эта опция позволяет в дальнейшем указывать короткое имя файла, а не сам громоздкий идентификатор.) На примере простейшего задания обсудим команды CLI (Command Line Interface), доступные пользователю при его выполнении. 1. Команда запуска задания: glite-wms-job-submit -a -o jobid hello.jdl -а - автоматическое делегирование полномочий WMProxy; -o - направляет в файл jobid идентификатор задания вида (Эта опция позволяет в дальнейшем указывать короткое имя файла, а не сам громоздкий идентификатор.)

Основы работы в среде GRID28 Результат выполнения команды ~]$ glite-wms-job-submit -a -o jobid hello.jdl Connecting to the service glite_wms_wmproxy_server =========== glite-wms-job-submit Success =============== The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/jobid ==================================================== ~]$ glite-wms-job-submit -a -o jobid hello.jdl Connecting to the service glite_wms_wmproxy_server =========== glite-wms-job-submit Success =============== The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/jobid ====================================================

Основы работы в среде GRID29 Статус (состояние) задания 2. Команда, показывающая текущий статус задания: с файлом, содержащим идентификатор задания glite-wms-job-status -i jobid с идентификатором задания glite-wms-job-status /iHaJCTcsQEVd66z_9000/iHaJCTcsQEVd66z_15_N1w Удобство первого варианта очевидно! 2. Команда, показывающая текущий статус задания: с файлом, содержащим идентификатор задания glite-wms-job-status -i jobid с идентификатором задания glite-wms-job-status /iHaJCTcsQEVd66z_9000/iHaJCTcsQEVd66z_15_N1w Удобство первого варианта очевидно!

Основы работы в среде GRID30 Результат выполнения команды (1) ~]$ glite-wms-job-status -i jobid ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: iHaJCTcsQEVd66z_15_N1w Current Status: Running Status Reason: Job successfully submitted to Globus Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Mon Jun 15 14:19: MSD ************************************************************* ~]$ glite-wms-job-status -i jobid ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: iHaJCTcsQEVd66z_15_N1w Current Status: Running Status Reason: Job successfully submitted to Globus Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Mon Jun 15 14:19: MSD *************************************************************

Основы работы в среде GRID31 Результат выполнения команды (2) ~]$ glite-wms-job-status -i jobid ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: iHaJCTcsQEVd66z_15_N1w Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Mon Jun 15 14:19: MSD ************************************************************* ~]$ glite-wms-job-status -i jobid ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: iHaJCTcsQEVd66z_15_N1w Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Mon Jun 15 14:19: MSD *************************************************************

Основы работы в среде GRID32 Все состояния заданий Submitted – задание отправлено пользователем, но не обработано WMProxy; Waiting – задание принято WMProxy, но не обработано Workload Manager; Ready – задание приписано к СЕ, но не передано на него; Scheduled – задание ожидает в очереди СЕ; Running – задание выполняется; Done – задание выполнилось; Aborted – задание удалено системой (WMS); Canceled – задание снято пользователем; Cleared – результат из OutputSandbox передан на UI. Submitted – задание отправлено пользователем, но не обработано WMProxy; Waiting – задание принято WMProxy, но не обработано Workload Manager; Ready – задание приписано к СЕ, но не передано на него; Scheduled – задание ожидает в очереди СЕ; Running – задание выполняется; Done – задание выполнилось; Aborted – задание удалено системой (WMS); Canceled – задание снято пользователем; Cleared – результат из OutputSandbox передан на UI.

Основы работы в среде GRID33 Получение результатов выполнения задания 3. Команда получения результатов выполнения задания: glite-wms-job-output -i jobid В этом случае все результирующие файлы помещаются в каталог /tmp/username_. Однако удобнее получать результат в каталоге, определяемом с помощью опции -- dir: glite-wms-job-output --dir path_name -i jobid 3. Команда получения результатов выполнения задания: glite-wms-job-output -i jobid В этом случае все результирующие файлы помещаются в каталог /tmp/username_. Однако удобнее получать результат в каталоге, определяемом с помощью опции -- dir: glite-wms-job-output --dir path_name -i jobid

Основы работы в среде GRID34 Результат выполнения команды (1) ~]$ glite-wms-job-output -i jobid Connecting to the service glite_wms_wmproxy_server ========================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the job: have been successfully retrieved and stored in the directory: /tmp/larinvn_iHaJCTcsQEVd66z_15_N1w ========================================================== ~]$ cat /tmp/larinvn_iHaJCTcsQEVd66z_15_N1w/std.out Hello IHEP ~]$ glite-wms-job-output -i jobid Connecting to the service glite_wms_wmproxy_server ========================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the job: have been successfully retrieved and stored in the directory: /tmp/larinvn_iHaJCTcsQEVd66z_15_N1w ========================================================== ~]$ cat /tmp/larinvn_iHaJCTcsQEVd66z_15_N1w/std.out Hello IHEP

Основы работы в среде GRID35 Результат выполнения команды (2) ~]$ glite-wms-job-output --dir /home/larinvn/JobOutput -i jobid Connecting to the service glite_wms_wmproxy_server ========================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the job: have been successfully retrieved and stored in the directory: /home/larinvn/JobOutput ========================================================== ~]$ cat JobOutput/std.out Hello IHEP ~]$ glite-wms-job-output --dir /home/larinvn/JobOutput -i jobid Connecting to the service glite_wms_wmproxy_server ========================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the job: have been successfully retrieved and stored in the directory: /home/larinvn/JobOutput ========================================================== ~]$ cat JobOutput/std.out Hello IHEP

Основы работы в среде GRID36 Снятие задания 3. Команда снятия задания с выполнения: glite-wms-job-cancel Эта команда прежде, чем снять задание, запрашивает у пользователя подтверждение на выполнение данной операции. Если подтверждение получено, то задание снимается с соответствующим сообщением. 3. Команда снятия задания с выполнения: glite-wms-job-cancel Эта команда прежде, чем снять задание, запрашивает у пользователя подтверждение на выполнение данной операции. Если подтверждение получено, то задание снимается с соответствующим сообщением.

Основы работы в среде GRID37 Пример выполнения команды ~]$ glite-wms-job-cancel -i jobid Are you sure you want to remove specified job(s) [y/n]y : y Connecting to the service ============== glite-wms-job-cancel Success ============== The cancellation request has been successfully submitted for the following job(s): - ===================================================== ~]$ glite-wms-job-cancel -i jobid Are you sure you want to remove specified job(s) [y/n]y : y Connecting to the service ============== glite-wms-job-cancel Success ============== The cancellation request has been successfully submitted for the following job(s): - =====================================================

Основы работы в среде GRID38 Типы заданий WMS поддерживает работу с простыми и составными заданиями. Тип задания описывается в JDL-файле двумя атрибутами: Type и JobType. Атрибут Type (Type = jobtype;) используется для различения простых и составных заданий и может принимать три значения: Job – для простого задания (может быть опущен); collection – для составного задания, в котором должен быть выполнен ряд простых заданий; dag – ( d irect a cyclic g raph) для составного задания, в котором ряд простых заданий должен быть выполнен в определенной последовательности. WMS поддерживает работу с простыми и составными заданиями. Тип задания описывается в JDL-файле двумя атрибутами: Type и JobType. Атрибут Type (Type = jobtype;) используется для различения простых и составных заданий и может принимать три значения: Job – для простого задания (может быть опущен); collection – для составного задания, в котором должен быть выполнен ряд простых заданий; dag – ( d irect a cyclic g raph) для составного задания, в котором ряд простых заданий должен быть выполнен в определенной последовательности.

Основы работы в среде GRID39 Подтипы простого задания Атрибут JobType задает подтип (JobType = subtype;) простого задания и может принимать следующие значения: normal – обыкновенное задание (атрибут может быть опущен); checkpointable – задание с контрольными точками (сохраняет промежуточные состояния, с которых оно может быть перезапущено); interactive – интерактивное задание, поддерживающее связь с точкой запуска; mpich – параллельное задание, для выполнения которого требуется несколько процессоров; Parametric – параметрическое задание, генерирующее несколько подзаданий из одного JDL-файла; partitionable – сериализуемое задание, выполняющее несколько экземпляров обыкновенного задания с разными исходными данными. Атрибут JobType задает подтип (JobType = subtype;) простого задания и может принимать следующие значения: normal – обыкновенное задание (атрибут может быть опущен); checkpointable – задание с контрольными точками (сохраняет промежуточные состояния, с которых оно может быть перезапущено); interactive – интерактивное задание, поддерживающее связь с точкой запуска; mpich – параллельное задание, для выполнения которого требуется несколько процессоров; Parametric – параметрическое задание, генерирующее несколько подзаданий из одного JDL-файла; partitionable – сериализуемое задание, выполняющее несколько экземпляров обыкновенного задания с разными исходными данными.

Основы работы в среде GRID40 Задания типаКоллекция Одной из наиболее полезных функциональных возмож- ностей WMProxy является реализация запуска коллекций заданий, определенных как ряд независимых заданий. Это существенно увеличивает скорость загрузки заданий по сравнению с загрузкой отдельных заданий, а вместе с механизмом proxy-делегирования экономит процессорное время с помощью многократного использования одной и той же аутентикации (authentication) для всех заданий коллекции. Одной из наиболее полезных функциональных возмож- ностей WMProxy является реализация запуска коллекций заданий, определенных как ряд независимых заданий. Это существенно увеличивает скорость загрузки заданий по сравнению с загрузкой отдельных заданий, а вместе с механизмом proxy-делегирования экономит процессорное время с помощью многократного использования одной и той же аутентикации (authentication) для всех заданий коллекции.

Основы работы в среде GRID41 Реализация коллекции заданий С точки зрения пользователя существует два способа реализации заданий в виде коллекции. Простейший способ: использовать опцию --collection, где - имя каталога, в котором собраны JDL-файлы коллекции (другие типы файлов не допускаются!) в команде запуска заданий. Другой способ: создать один JDL-файл типа collection и запустить его стандартным образом. С точки зрения пользователя существует два способа реализации заданий в виде коллекции. Простейший способ: использовать опцию --collection, где - имя каталога, в котором собраны JDL-файлы коллекции (другие типы файлов не допускаются!) в команде запуска заданий. Другой способ: создать один JDL-файл типа collection и запустить его стандартным образом.

Основы работы в среде GRID42 Пример коллекции 1-го типа ~]$ ls -l Old_Tests total 28 -rw larinvn larinvn 114 Sep 30 15:00 glite_test.jdl -rw larinvn larinvn 147 Sep 30 14:59 hello.jdl -rw larinvn larinvn 202 Sep 30 14:58 hostname.jdl -rw larinvn larinvn 278 Sep 30 14:56 script.jdl ~]$ glite-wms-job-submit -a -o coll1_id --collection Old_Tests Connecting to the service glite_wms_wmproxy_server ============== glite-wms-job-submit Success ================= The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/coll1_id ~]$ ls -l Old_Tests total 28 -rw larinvn larinvn 114 Sep 30 15:00 glite_test.jdl -rw larinvn larinvn 147 Sep 30 14:59 hello.jdl -rw larinvn larinvn 202 Sep 30 14:58 hostname.jdl -rw larinvn larinvn 278 Sep 30 14:56 script.jdl ~]$ glite-wms-job-submit -a -o coll1_id --collection Old_Tests Connecting to the service glite_wms_wmproxy_server ============== glite-wms-job-submit Success ================= The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/coll1_id

Основы работы в среде GRID43 Выполнение коллекции 1-го типа(1) ~]$ glite-wms-job-status -i coll1_id ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: Current Status: Done (Success) Exit code: 0 Submitted: Wed Oct 14 13:21: MSD ************************************************************* - Nodes information for: Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD ************************************************************* ~]$ glite-wms-job-status -i coll1_id ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: Current Status: Done (Success) Exit code: 0 Submitted: Wed Oct 14 13:21: MSD ************************************************************* - Nodes information for: Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: ce.ngc6475.ihep.su:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD *************************************************************

Основы работы в среде GRID44 Выполнение коллекции 1-го типа(2) Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD ************************************************************* Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD ************************************************************* Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD ************************************************************* Status info for the Job: Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD *************************************************************

Основы работы в среде GRID45 Выполнение коллекции 1-го типа(3) Status info for the Job : Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD ************************************************************* Status info for the Job : Current Status: Done (Success) Logged Reason(s): - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Wed Oct 14 13:21: MSD *************************************************************

Основы работы в среде GRID46 Результат выполнения коллекции 1-го типа ~]$ glite-wms-job-output --dir Collect1 -i coll1_id Connecting to the service glite_wms_wmproxy_server ==================================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the DAG/Collection: have been successfully retrieved and stored in the directory: /home/larinvn/Collect1 ==================================================================== ~]$ ls -l Collect1 total 20 -rw-rw-r-- 1 larinvn larinvn 704 Oct 14 13:36 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_glite_test_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_hello_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_hostname_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_script_jdl ~]$ glite-wms-job-output --dir Collect1 -i coll1_id Connecting to the service glite_wms_wmproxy_server ==================================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the DAG/Collection: have been successfully retrieved and stored in the directory: /home/larinvn/Collect1 ==================================================================== ~]$ ls -l Collect1 total 20 -rw-rw-r-- 1 larinvn larinvn 704 Oct 14 13:36 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_glite_test_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_hello_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_hostname_jdl drwxr-xr-x 2 larinvn larinvn 4096 Oct 14 13:36 Node_script_jdl

Основы работы в среде GRID47 Пример коллекции 2-го типа (Type = collection;) ~]$ cat mycollect.jdl [ Type = "collection"; InputSandbox = { "/home/larinvn /infile" }; nodes = { [ file = "/home/larinvn/Old_Tests/glite_test.jdl"; ], [ JobType = "Normal"; // hello.jdl Executable ="/bin/echo"; Arguments ="Hello IHEP from collection job"; StdOutput ="std.out"; StdError ="std.err"; OutputSandbox ={"std.out","std.err"}; ], [ file = "/home/larinvn/Old_Tests/hostname.jdl"; ], [ JobType = "Normal"; // script.jdl NodeName = "node3script"; Executable = "script.sh"; Arguments = infile; StdOutput = script.out"; StdError = "script.err"; InputSandbox ={"/home/larinvn/script.sh",root.InputSandbox}; OutputSandbox ={" script.out"," script.err"}; ] }; ] ~]$ cat mycollect.jdl [ Type = "collection"; InputSandbox = { "/home/larinvn /infile" }; nodes = { [ file = "/home/larinvn/Old_Tests/glite_test.jdl"; ], [ JobType = "Normal"; // hello.jdl Executable ="/bin/echo"; Arguments ="Hello IHEP from collection job"; StdOutput ="std.out"; StdError ="std.err"; OutputSandbox ={"std.out","std.err"}; ], [ file = "/home/larinvn/Old_Tests/hostname.jdl"; ], [ JobType = "Normal"; // script.jdl NodeName = "node3script"; Executable = "script.sh"; Arguments = infile; StdOutput = script.out"; StdError = "script.err"; InputSandbox ={"/home/larinvn/script.sh",root.InputSandbox}; OutputSandbox ={" script.out"," script.err"}; ] }; ] Внимание! В gLite 3, Example ошибочный синтаксис: Type = Collection"; …………….. Nodes = [ …………. ];

Основы работы в среде GRID48 Запуск коллекции 2-го типа ~]$ glite-wms-job-submit -a -o coll2_id mycollect.jdl Connecting to the service glite_wms_wmproxy_server ============ glite-wms-job-submit Success ============= The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/coll2_id ================================================= ~]$ glite-wms-job-submit -a -o coll2_id mycollect.jdl Connecting to the service glite_wms_wmproxy_server ============ glite-wms-job-submit Success ============= The job has been successfully submitted to the WMProxy Your job identifier is: The job identifier has been saved in the following file: /home/larinvn/coll2_id =================================================

Основы работы в среде GRID49 Результат выполнения коллекции 2-го типа ~]$ glite-wms-job-output --dir Collect2 -i coll2_id Connecting to the service glite_wms_wmproxy_server ======================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the DAG/Collection : have been successfully retrieved and stored in the directory: /home/larinvn/Collect2 ======================================================== ~]$ ls -l Collect2 total 20 -rw-rw-r-- 1 larinvn larinvn 660 Oct 23 15:25 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 Node_0 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:24 Node_1 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 Node_2 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 node3script ~]$ glite-wms-job-output --dir Collect2 -i coll2_id Connecting to the service glite_wms_wmproxy_server ======================================================== JOB GET OUTPUT OUTCOME Output sandbox files for the DAG/Collection : have been successfully retrieved and stored in the directory: /home/larinvn/Collect2 ======================================================== ~]$ ls -l Collect2 total 20 -rw-rw-r-- 1 larinvn larinvn 660 Oct 23 15:25 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 Node_0 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:24 Node_1 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 Node_2 drwxr-xr-x 2 larinvn larinvn 4096 Oct 23 15:25 node3script

Основы работы в среде GRID50 Задание типа DAG Node0 Схематический пример составного DAG задания node0 node1 node2node3 node4 Атрибут dependencies = {{node0,node1},{node0,node2}, {node0,node3}}; или cокращенно: dependencies = { {node1, node2, node3}, node4 } ;

Основы работы в среде GRID51 Пример задания DAG (1) ~]$ cat dag1.jdl [ Type = "dag"; InputSandbox = { "dag1_son.sh" }; // Общий атрибут nodes = [ father = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; Arguments = "dag1_father.sh"; InputSandbox = {"dag1_father.sh"}; StdOutput = "father_output"; StdError = "father_error"; OutputSandbox = {"father_output","father_error", "son1.input", "son2.input"}; ]; ]; son1 = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = {root.InputSandbox, root.nodes.father.description.OutputSandbox[2]}; Arguments = "dag1_son.sh 1"; StdOutput = "son1.output"; StdError = "son1.error"; OutputSandbox = {"final1.input","son1.output","son1.error"}; ]; ]; ~]$ cat dag1.jdl [ Type = "dag"; InputSandbox = { "dag1_son.sh" }; // Общий атрибут nodes = [ father = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; Arguments = "dag1_father.sh"; InputSandbox = {"dag1_father.sh"}; StdOutput = "father_output"; StdError = "father_error"; OutputSandbox = {"father_output","father_error", "son1.input", "son2.input"}; ]; ]; son1 = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = {root.InputSandbox, root.nodes.father.description.OutputSandbox[2]}; Arguments = "dag1_son.sh 1"; StdOutput = "son1.output"; StdError = "son1.error"; OutputSandbox = {"final1.input","son1.output","son1.error"}; ]; ];

Основы работы в среде GRID52 Пример задания DAG (2) son2 = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = { root.InputSandbox, root.nodes.father.description.OutputSandbox[3 ]}; Arguments = "dag1_son.sh 2"; StdOutput = "son2.output"; StdError = "son2.error"; OutputSandbox = {"final2.input","son2.output","son2.error"}; ]; ]; final = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = {"dag1_final.sh", root.nodes.son1.description.OutputSandbox[0], root.nodes.son2.description.OutputSandbox[0]}; Arguments = "dag1_final.sh"; StdOutput = "dag.out"; StdError = "dag.err"; OutputSandbox = {"dag.out","dag.err"}; ]; ]; dependencies = { {father, {son1, son2}}, {son1, final}, {son2, final} }; ]; ] son2 = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = { root.InputSandbox, root.nodes.father.description.OutputSandbox[3 ]}; Arguments = "dag1_son.sh 2"; StdOutput = "son2.output"; StdError = "son2.error"; OutputSandbox = {"final2.input","son2.output","son2.error"}; ]; ]; final = [ description = [ JobType = "Normal"; Executable = "/bin/sh"; InputSandbox = {"dag1_final.sh", root.nodes.son1.description.OutputSandbox[0], root.nodes.son2.description.OutputSandbox[0]}; Arguments = "dag1_final.sh"; StdOutput = "dag.out"; StdError = "dag.err"; OutputSandbox = {"dag.out","dag.err"}; ]; ]; dependencies = { {father, {son1, son2}}, {son1, final}, {son2, final} }; ]; ]

Основы работы в среде GRID53 Результат выполнения DAG задания Запуская и получая результат стандартным образом, получим 4 каталога с именами, заданными для узлов, в которых содержатся выходные файлы, указанные в соответствующих OutputSandbox : ~]$ ls -l ~/dag1_Output total 12 -rw-rw-r-- 1 larinvn larinvn 0 Oct 2 13:31 father -rw-rw-r-- 1 larinvn larinvn 16 Oct 2 13:31 son1 -rw-rw-r-- 1 larinvn larinvn 16 Oct 2 13:31 son2 -rw-rw-r-- 1 larinvn larinvn 62 Oct 2 13:31 final Запуская и получая результат стандартным образом, получим 4 каталога с именами, заданными для узлов, в которых содержатся выходные файлы, указанные в соответствующих OutputSandbox : ~]$ ls -l ~/dag1_Output total 12 -rw-rw-r-- 1 larinvn larinvn 0 Oct 2 13:31 father -rw-rw-r-- 1 larinvn larinvn 16 Oct 2 13:31 son1 -rw-rw-r-- 1 larinvn larinvn 16 Oct 2 13:31 son2 -rw-rw-r-- 1 larinvn larinvn 62 Oct 2 13:31 final

Основы работы в среде GRID54 Параметрическое задание Параметрическое задание генерирует множество заданий из одного JDL-файла. Т.о. оно только формально относится к простым заданиям, а фактически является составным. Применяется в тех случаях, когда нужно выполнить ряд схожих, но не идентичных заданий. Достигается это определением одного или нескольких атрибутов как параметров. Для этого в их значениях используется ключевое слово _PARAM_. Параметрическое задание генерирует множество заданий из одного JDL-файла. Т.о. оно только формально относится к простым заданиям, а фактически является составным. Применяется в тех случаях, когда нужно выполнить ряд схожих, но не идентичных заданий. Достигается это определением одного или нескольких атрибутов как параметров. Для этого в их значениях используется ключевое слово _PARAM_.

Основы работы в среде GRID55 Пример параметрического задания Param]$ cat param_pnpi.jdl [JobType = "Parametric"; Executable = "/bin/sh"; Arguments = "message_PARAM_.sh"; InputSandbox = "message_PARAM_.sh"; Parameters = 6; ParameterStep = 2; ParameterStart = 0; StdOutput = "param_out_PARAM_.txt"; StdError = "param_err_PARAM_.txt"; OutputSandbox = {"param_out_PARAM_.txt","param_err_PARAM_.txt"}; ] Param]$ cat param_pnpi.jdl [JobType = "Parametric"; Executable = "/bin/sh"; Arguments = "message_PARAM_.sh"; InputSandbox = "message_PARAM_.sh"; Parameters = 6; ParameterStep = 2; ParameterStart = 0; StdOutput = "param_out_PARAM_.txt"; StdError = "param_err_PARAM_.txt"; OutputSandbox = {"param_out_PARAM_.txt","param_err_PARAM_.txt"}; ]

Основы работы в среде GRID56 Выполнение параметри- ческого задания (1) Param_pnpi]$ glite-wms-job-status -i param_id ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: Current Status: Running Submitted: Tue Oct 27 15:31: MSK ************************************************************* - Nodes information for: Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps117.jinr.ru:2119/jobmanager-pbs-edu Submitted: Tue Oct 27 15:31: MSK ************************************************************* Param_pnpi]$ glite-wms-job-status -i param_id ************************************************************* BOOKKEEPING INFORMATION: Status info for the Job: Current Status: Running Submitted: Tue Oct 27 15:31: MSK ************************************************************* - Nodes information for: Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps117.jinr.ru:2119/jobmanager-pbs-edu Submitted: Tue Oct 27 15:31: MSK *************************************************************

Основы работы в среде GRID57 Выполнение параметри- ческого задания (2) Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps117.jinr.ru:2119/jobmanager-pbs-edu Submitted: Tue Oct 27 15:31: MSK ************************************************************* Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Tue Oct 27 15:31: MSK ************************************************************* Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps117.jinr.ru:2119/jobmanager-pbs-edu Submitted: Tue Oct 27 15:31: MSK ************************************************************* Status info for the Job: Current Status: Running Status Reason: Job successfully submitted to Globus Destination: vps107.jinr.ru:2119/jobmanager-lcgpbs-edu Submitted: Tue Oct 27 15:31: MSK *************************************************************

Основы работы в среде GRID58 Результат выполнения параметрического задания Param]$ ls -l Output total 16 -rw-rw-r-- 1 larinvn larinvn 501 Oct 27 15:41 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_0 drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_2 drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_4 Здесь директориям, содержащим результаты выполнения подзаданий, присваиваются такие же имена, как и в "коллекции". Номера узлов – значения параметра. Param]$ ls -l Output total 16 -rw-rw-r-- 1 larinvn larinvn 501 Oct 27 15:41 ids_nodes.map drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_0 drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_2 drwxr-xr-x 2 larinvn larinvn 4096 Oct 27 15:41 Node_4 Здесь директориям, содержащим результаты выполнения подзаданий, присваиваются такие же имена, как и в "коллекции". Номера узлов – значения параметра.

Основы работы в среде GRID59 Коротко о других типах заданий (сheckpointable) Задания с контрольной точкой JobType = сheckpointable; Простое задание, для которого WMS поддерживает возмож- ность периодического сохранения состояния, начиная с которого задание может быть перезапущено. Требует дополнительных атрибутов: JobSteps (задает максимальное число контрольных точек или содержит список их имен) и CurrentStep (задает точку, с которой задание должно быть запущено). Задания с контрольной точкой JobType = сheckpointable; Простое задание, для которого WMS поддерживает возмож- ность периодического сохранения состояния, начиная с которого задание может быть перезапущено. Требует дополнительных атрибутов: JobSteps (задает максимальное число контрольных точек или содержит список их имен) и CurrentStep (задает точку, с которой задание должно быть запущено).

Основы работы в среде GRID60 Коротко о других типах заданий (interactive) Интерактивное задание JobType = interactive; Простое задание, поддерживающее во время выполнения прямой контакт с точкой запуска. При этом стандартные потоки stdin, stdout и stderr перехватываются на исполнительном компьютере (WN) и перенаправляются на компьютер запуска, на котором должен быть стартован X-сервер, открывающий окно для ввода и вывода. Интерактивное задание JobType = interactive; Простое задание, поддерживающее во время выполнения прямой контакт с точкой запуска. При этом стандартные потоки stdin, stdout и stderr перехватываются на исполнительном компьютере (WN) и перенаправляются на компьютер запуска, на котором должен быть стартован X-сервер, открывающий окно для ввода и вывода.

Основы работы в среде GRID61 Коротко о других типах заданий (partitionable) Сериализуемое задание JobType = partitionable; Как и параметрическое задание, только формально является простым, но при запуске генерируется dag -задание из нескольких независимых серийных заданий (однократно описанных в JDL-файле) и двух специальных заданий: пре- и пост-обработки, которые также описываются в JDL-файле: prejob = [ … ]; postjob = [ … ]; Сериализуемое задание JobType = partitionable; Как и параметрическое задание, только формально является простым, но при запуске генерируется dag -задание из нескольких независимых серийных заданий (однократно описанных в JDL-файле) и двух специальных заданий: пре- и пост-обработки, которые также описываются в JDL-файле: prejob = [ … ]; postjob = [ … ];

Основы работы в среде GRID62 Коротко о других типах заданий (mpich) Параллельные задания JobType = mpich; WMS обеспечивает ограниченную поддержку многопроцес- сорных параллельных заданий, использующих MPI-протокол. В JDL-файле указывается атрибут NodeNumber, определя- ющий необходимое число процессоров. Кроме того, к значению атрибута Requirements автоматически добавляется логическое выражение, определяющее выбор CE с числом процессоров большим NodeNumber и установленной средой MPICH. Параллельные задания JobType = mpich; WMS обеспечивает ограниченную поддержку многопроцес- сорных параллельных заданий, использующих MPI-протокол. В JDL-файле указывается атрибут NodeNumber, определя- ющий необходимое число процессоров. Кроме того, к значению атрибута Requirements автоматически добавляется логическое выражение, определяющее выбор CE с числом процессоров большим NodeNumber и установленной средой MPICH.

Основы работы в среде GRID63 Cсылки S. Burke, S. Campana, A.D. Peris, et al. gLite 3 User Guide, https//edms.cern.ch/file/722398/1.1/gLite-3-UserGuide.pdf F. Pacini. Job Description Language Attributes Specification, EGEE, https//edms.cern.ch/document/590869/1 В.Н. Коваленко. Комплексное программное обеспечение грида вычислительного типа, ИПМ РАН, Москва, Практикум ПИЯФ РАН. S. Burke, S. Campana, A.D. Peris, et al. gLite 3 User Guide, https//edms.cern.ch/file/722398/1.1/gLite-3-UserGuide.pdf F. Pacini. Job Description Language Attributes Specification, EGEE, https//edms.cern.ch/document/590869/1 В.Н. Коваленко. Комплексное программное обеспечение грида вычислительного типа, ИПМ РАН, Москва, Практикум ПИЯФ РАН.

Основы работы в среде GRID64 Заключение The END…?!