1.   

2.   

3.  3. Основы работы в LCG

3.1 Аутентификация и получение сертификата (Громова)

3.2 Поиск информации об узлах Грид (Громова)

3.3  Хранение данных в Грид (Громова) -- только про имена файлов, без копирования/удаления и

3.1  Аутентификация и получение сертификата

Для использования инфраструктуры Грид пользователю необходимо пройти процесс регистрации после чего все ресурсы Грид становится доступны

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

1. Получение персонального пользовательского сертификата

2. Регистрация в Виртуальной организации

Персональный пользовательский сертификат (Personal Certificate)подтверждающий личность пользователя при доступе к Грид-ресурсам. выдается Центром сертификации (Certification Authority).

Каждая Виртуальная организация (Virtual Organization) имеет свой собственный Центр регистрации и по разработанным ею правилам выдает сертификаты

Последовательность действий получения сертификатов описана здесь : http://ca. grid. *****/RDIG/certificates/obtain. html

1.  Для получение нового сертификата RDIG необходимо заполнить анкету :

“Я хочу получить” --> пользовательский сертификат (user certificate)

и нажать нопку "Далее"

2.  Загрузить файл сценария (жмем на соответствующую кнопку )

В результате получим script “user_cert-request. sh”

и здесь же распечатать PDF файл “Бумажная форма запроса”

3.  Далее для создания запроса на сертификат необходимо запустить ранее

НЕ нашли? Не то? Что вы ищете?

сохраненный файл сценария на вашей локальной машине с User Interface :

ssh *****@***ru (UI)

sh user_cert-request. sh

4.  В результате будет создана директория ~/.globus, где должны появиться файлы : usercert. pem, userkey. pem, userreq. mail

Обратите внимание, что файл может называться не «userkey. pem», а, наПример, «userkey.1210.pem» Так происходит, если на момент запуска сценария уже существует ~/.globus/userkey. pem

5.  В процессе выполнения user_cert-request. sh выдает :

а) Информацию о вашем закрытом ключе: ~/.globus/userkey. pem

Читаем, жмем [Enter] получаем окончательно сгенерированный закрытый ключПри этом непременно запоминаем (требуемую более 4 символов)

“PEM pass phrase”

Иначе придется получать сертификат заново!

б) После этого сценарий выведет информацию о проделанном:

All done. Your private key is stored in the file

~/.globus/userkey. pem

Now you should send the message, contained in the file

~/.globus/userreq. mail

to

*****@

... You will need you public key modulus:

E248BAF5F2 1E383E741C36B496F7EF19A1A82A77534CA4E914⇒

D45378D25904D012227F90D29B6809CC431AC26FC479EF⇒

6092B9CBF5199DD61A21E5E325C23472E277866F18550BE544A956⇒

7DFDBEB66C05A23E1E350EE02806C6FFCD0B3CAD0⇒

6DC3FB8F2787228DC662C7C1FF4B8669EC 088870E793

Полученный модуль открытого ключа “public key modulus” лучше сохранить сразу, поскольку окно терминала будет закрыто

6.  Далее, чтобы получить свой сертификат из центра сертификации RDIG CA, файл "userreq. mail" отсылаем в *****@ :


mail *****@ < userreq. mail

7.  Через некоторое время вы получите ответ о том, что ваш запрос принят, а также ваш серийный номер (serial number)

8.  Заполняем “Бумажную форму запроса” и передаем Даниле Олейнику (Registration Authority) (ЛИТ (*****@***ru, т.62302)

В строке “Номер запроса“ указываем serial number

В строке “Модуль открытого ключа1” первые и последние 10 знаков полученные на этапе 3 :

You will be mailed back with the serial number of your request. Then

you should completely fill the paper request form and go to your

Registration Authority to complete your request. You will need you

public key modulus:

E248BAF5F2 1E383E741C36B496F7EF19A1A82A77534CA4E914⇒

D45378D25904D012227F90D29B6809CC431AC26FC479EF⇒

6092B9CBF5199DD61A21E5E325C23472E277866F18550BE544A956⇒

7DFDBEB66C05A23E1E350EE02806C6FFCD0B3CAD0⇒

6DC3FB8F2787228DC662C7C1FF4B8669EC 088870E793

После передачи “Бумажной формы запроса” Registration Authority

(Даниле Олейнику) придет уведомление по электронной почте, на адрес, который вы указывали, создавая запрос на получение сертификата.

Далее, при одобрении запроса, в течение трёх рабочих дней выдается сертификат который пересылается по электронной почте

Полученный текст нужно сохранить в ~/.globus/usercert. pem

Если вашего сертификата нет на странице действительных сертификатов http://ca. grid. *****/RDIG/certificates/valid. html

и вам не приходило писем об отклонении вашего запроса — напишите по адресу *****@

9.  Проверка сертификата

для проверки полученного сертификата выполняем следующее :

9.1  Запускаем пару команд:

$ openssl x509 - in ~/.globus/usercert. pem -noout - modulus

$ openssl rsa - in ~/.globus/userkey. pem -noout - modulus

Обе команды должны выдать одинаковые результаты. Если это не так,

то либо вы забыли обновить ваш сертификат (файл ~/.globus/usercert. pem),

либо закрытый ключ (файл ~/.globus/userkey. pem).

тест для правильной ключевой пары:

$ openssl x509 - in ~/.globus/usercert. pem -noout - modulus

Modulus=E5C05DFA7BF9827B2068979D5B85444CB8BB13DAFE65432E3⇒

D56191CECB5EA334FEB4DBB5630DCDBC9CB5B6DEC536D78AC3B44DD89⇒

CE9F909FC6B2F671F0EBDED72EA143DF787F0F84⇒

24E1C32E836FC9F5D85AC2CC4E3EB05ECE157F08A23B8C8AE0627B4EF⇒

FC647E6E37585B42474DB1DF80BAA41C39E7

$ openssl rsa - in ~/.globus/userkey. pem -noout - modulus

read RSA key

Enter PEM pass phrase:

Modulus=E5C05DFA7BF9827B2068979D5B85444CB8BB13DAFE65432E3⇒

D56191CECB5EA334FEB4DBB5630DCDBC9CB5B6DEC536D78AC3B44DD89⇒

CE9F909FC6B2F671F0EBDED72EA143DF787F0F84⇒

24E1C32E836FC9F5D85AC2CC4E3EB05ECE157F08A23B8C8AE0627B4EF⇒

FC647E6E37585B42474DB1DF80BAA41C39E7

9.2.Проверка правильности создания proxy-сертификата

$ grid-proxy-init - debug - verify

Правильный вариант работы этой команды выглядит так:

$ grid-proxy-init - debug - verify

User Cert File: /home/user/.globus/usercert. pem

User Key File: /home/user/.globus/userkey. pem

Trusted CA Cert Dir: /etc/grid-security/certificates

Output File: /tmp/x509up_u<несколько цифр (ваш UID)>

Your identity: имя вашего сертификата, начинается с /C=RU/O=RDIG/OU=users/

Enter GRID pass phrase for this identity:

Creating proxy .............++++++++++++

................++++++++++++

Done

Proxy Verify OK

Your proxy is valid until: текущая дата + десяток-два часов.

10.  Регистрация в VO

Итак сертификат RDIG получен, но этого недостаточно

Необходимо еще получить сертификат VO. Подробно процедура

описана здесь

http://lcg. web. cern. ch/lcg/Users/registration/registration. html

Порядок действий следующий :

1.  Нужно иметь регистрацию на “lxplus. cern. ch” , с “group=atlas” и соответствующей записью в БД CERN. Проверка регистрации здесь

http://graybook. cern. ch/ExperimentSearch. html

Для получения регистрации заполнить и отослать на e-mail Atlas. *****@***ch или на FAX at +

форму

http://atlas. web. cern. ch/Atlas/GROUPS/SOFTWARE/OO/sit/Login/registration_form. html

2.  Загрузить свой сертификат в браузер

Для этого сначала нужно получить ваш сертификат в формате PKCS12 командой :

openssl pkcs12 -export - inkey userkey. pem - in usercert. pem - out my_cert. p12 - name "My certificate"

Стартуем браузер (Пример Mozzila Firefox Version3.*) :

start Firefox ---> Edit ---> Preferences ---> Advanced --> Encryption

Находим Certificates ---> View Certificates ---> Servers ---> Import

Для других браузеров процедуру можно найти здесь :

http://lcg. web. cern. ch/lcg/Users/registration/load-cert. html

3.  Далее на http://lcg. web. cern. ch/lcg/Users/registration/registration. html

в пункте 5 выбираем “ATLAS” и переходим на страничку регистрации VO ATLAS

https://lcg-voms. cern. ch:8443/vo/atlas/vomrs

Выбираем “candidates” , заполняем, отсылаем, ждем письма от Alessandro De Salvo c уведомлении о включении вас в VO ATLAS в качестве “candidates” и далее следуем указанию изложенному в письме

:

4.  По окончанию регистрации заходим на UI (ssh *****) и

проверяем доступ командой $voms-proxy-init –voms atlas

lxpub04:~ > voms-proxy-init - voms atlas

Enter GRID pass phrase:

Your identity: /C=RU/O=RDIG/OU=users/OU=*****/CN=Name Surname

Creating temporary proxy..................................................... Done

Contacting lcg-voms. cern. ch:15001 [/DC=ch/DC=cern/OU=computers/CN=lcg-voms. cern. ch] "atlas" Done

Creating proxy............................................. Done

Your proxy is valid until Wed Oct 22 04:30:08 200

3.2. Поиск информации об узлах Грид

Для получения необходимой информации по различным ресурсам - сайтам СE, SE, данным мониторирования процесса выполнения задания, в gLite 3.1 разработан

Информационный Сервис Information Service (IS) который представлен следующими системами :

1.  MDS - Globus Monitoring and Discovery Service : MDS - Globus Monitoring and Discovery Service :

2.  Relational Grid Monitoring Architecture (R-GMA)

3.  Системамы Мониторинга

3.2.1. Globus Monitoring and Discovery Service

представляет собой централизованную систему, в которой вся информация собирается от краев к центру

Существуют локальные GRISes (GRID Resource Information Server) и глобальные (top-level) BDII (GRID Index Information Server)

На каждом CE и SE запущен GRIS, в котором публикуется информация об имеющихся ресурсах : Local GRIS, который является первым уровнем публикации

информации в MDS и обеспечивает специфическую информацию отдельных серверов

Информация со многих GRIS собирается другими сервисами GIIS (Grig Index Informatin Server)

Роль центральных GIIS обычно выполняет Berkley Database Information Index BDII

Сайт BDII собирает информацию о всех ресурсах представленых на всех GRISes cайтах

Информация, публикуемая в MDS, организована в соответствии с определенными правилами (GLUE Schema) и образует древовидную структуру (Directory Information Tree)

(GLUE=Grid Laboratiry for a Uniform Environment)

MDS основана на использовании протокола OpenLDAP, “open source” реализации протокола (LDAP – Lightweight Directory Access Protocol)

В MDS используются два инструмента высокого уровня :

lcg-infosites и lcg-infosites

Команда lcg-infosites предоставляет пользователю GRID специфическую информацию о ресурсах для VO

Команда lcg-info выдает список СE или SE по заданным атрибутам и условияим

Синтаксис lcg-infosites :

lcg-infosites --vo <vo> <option> - v <verbosity> - f <site> --is <bdii>

где :

-vo <vo> : имя VO

<option> :

-ce: the number of CPUs, running jobs, waiting jobs and CE names

-v 1: only the CE names;

-v 2: the cluster names, the amount of RAM, the operating system name

and version and the processor model;

-se: the names of the SEs supporting the VO,

the type of storage system and the used and available space;

all: the information given by ce and se; together;

-closeSE: the names of the CEs supporting the VO and their close SEs;

-tag: the software tags published by each CE supporting the VO;

-lfc: the hostname of the LFC catalogues available to the VO;

-lfcLocal: the hostname of the local LFC catalogues available to the VO;

-rb: the hostname and port of the RBs available to the VO;

-dli: the Data Location Index servers available to the VO;

-dliLocal: the local Data Location Index servers available to the VO;

-vobox: the VO boxes available to the VO;

-fts: the endpoints of the FTS servers available to the VO;

-sitenames: the names of all WLCG/EGEE sites;

-is <bdii>: the BDII to query ($LCG_GFAL_INFOSYS=lcgbdii. *****:2170)

-f <site>: the information printed to the specified site

Пример: получить информацию об CE VO atlas :

lxpub03:~ > lcg-infosites --vo atlas ce

valor del bdii: lcgbdii. *****:2170

#CPU Free Total Jobs Running Waiting ComputingElement

---

40

ce. ui. savba. sk:2119/jobmanager-pbs-atlas

*****:2119/jobmanager-lcgpbs-atlas

*****:2119/jobmanager-lcgpbs-atlas

lxpub03:~ > lcg-infosites --vo atlas ce | grep jinr

valor del bdii: lcgbdii. *****:2170

*****:2119/jobmanager-lcgpbs-atlas

Пример: получить информацию об SE VO atlas

lxpub03:~ > lcg-infosites --vo atlas se

Avail Space(Kb) Used Space(Kb) Type SEs

--

n. a storm-fe. cr. cnaf. infn. it

n. a 999999 n. a atlasse01.ihep. ac. cn

n. a *****

….

Пример : Host name of LFC the catalogues VO atlas

lxpub03:~ > lcg-infosites --vo atlas lfc

prod-lfc-atlas-central. cern. ch

Пример : список локальных LFC серверов VO atlas

lxpub03:~ > lcg-infosites --vo atlas lfcLocal

lfc. ihep. ac. cn

lcg04.usatlas. bnl. gov

prod-lfc-atlas-local. cern. ch

....

lxpub03:~ > lcg-infosites --vo atlas lfcLocal | grep jinr

*****

Команда lcg-info

(информация берется из BDII определенную через переменную

$LCG_GFAL_ INFOSYS )

Синтаксис:

lcg-info [--list-ce | --list-se] [--query <query>] [--attrs <attrs>]

где:

--list-ce,--list-se

must be used to indicate if CEs or SEs should be listed.

--query

option introduces a filter (conditions to be fulfilled) to the elements of the list

--attrs

option may be used to specify which attributes to print.

Пример : список поддерживаемых attributes в Glue Scheme GRID

lxpub03:~ > lcg-info --list-attrs

....

Attribute name* Glue object class Glue attribute name

EstRespTime GlueCE GlueCEStateEstimatedResponseTime

WorstRespTime GlueCE GlueCEStateWorstResponseTime

TotalJobs GlueCE GlueCEStateTotalJobs

TotalCPUs GlueCE GlueCEInfoTotalCPUs

MaxRunningJobs GlueCE GlueCEPolicyMaxRunningJobs

CE GlueCE GlueCEUniqueID

CEStatus GlueCE GlueCEStateStatus

CEVOs GlueCE GlueCEAccessControlBaseRule

FreeCPUs GlueCE GlueCEStateFreeCPUs

RunningJobs GlueCE GlueCEStateRunningJobs

MaxWCTime GlueCE GlueCEPolicyMaxWallClockTime

Accesspoint GlueCESEBind GlueCESEBindCEAccesspoint

CloseCE GlueCESEBindGroup GlueCESEBindGroupCEUniqueID

...

Пример : распечатать список всех СЕ отвечающих атрибутам :

сколько выполняется задач RunningJobs на CE c OS=*Scientific* ,

Processor=*Athlon* , и сколько имеетстся свободных CPU = FreeCPUs :

lxpub03:~ > lcg-info --list-ce --query Processor=*thlon*,OS=*Scientific* --attrs 'RunningJobs, FreeCPUs‘

- CE: alice003.nipne. ro:2119/jobmanager-lcgpbs-alice

- RunningJobs 0

- FreeCPUs 2

- CE: alice003.nipne. ro:2119/jobmanager-lcgpbs-dteam

- RunningJobs 0

- FreeCPUs 2

- CE: alice003.nipne. ro:2119/jobmanager-lcgpbs-ops

- RunningJobs 0

- FreeCPUs 2

- CE: ce02.lip. pt:2119/jobmanager-lcgsge-atlasgrid

- RunningJobs 1

–  FreeCPUs 48

–   

The Local GRIS (Grid Resource Information Service)

$ ldapsearch - x - h <hostname> - p <port> - b "mds-vo-name= ..., o=grid"

where:

- x simple authentication (instead of LDAPs SASL)

- h hostname

- p port (2135 or 2170)

- b “mds-vo-name=local(2135)/resource(2170) “ (GRIS level)

“mds-vo-name=<sitename> “ (site level)

“mds-vo-name=mds-vo-name=<sitename>, mds-vo-name=local “

(top-level BDII)

ldapsearch - x - h <hostname> - p 2135 -b "mds-vo-name=local, o=grid"

ldapsearch - x - h <hostname> - p 2170 -b "mds-vo-name=resource, o=grid"

where:

- x simple authentication (instead of LDAPs SASL)

- h hostname

- p port (= 2135 or 2170)

- b specify the initial entry for the search in the LDAP tree

Using the ldapsearch command to read the MDS:

ldapsearch - x - H <ldap_uri> -b "mds-vo-name=local, o=grid

where:

ldap_uri = ldap://hostname:port

Пример - Interrogating the GRIS on a Computing Element

ldapsearch - x - h lxb2006.cern. ch - p 2135 -b "mds-vo-name=local, o=grid

or:

ldapsearch - x - H ldap://lxb2006.cern. ch:2135 - b "mds-vo-name=local, o=grid"

lxpub03:~ > ldapsearch - x -h ***** - p 2135 - b "mds-vo-name=local, o=grid" | less

version: 2

#

# filter: (objectclass=*)

# requesting: ALL

#

# *****:2119/jobmanager-lcgpbs-alice, local, grid

dn: GlueCEUniqueID=*****:2119/jobmanager-lcgpbs-alice, mds-vo-name=lo cal, o=grid

objectClass: GlueCETop

objectClass: GlueCE

GlueCEHostingCluster: *****

GlueCEName: alice

GlueCEUniqueID: *****:2119/jobmanager-lcgpbs-alice

GlueCEInfoGatekeeperPort: 2119

GlueCEInfoHostName: *****.....

Пример - To test site GIIS :

lxpub03:~ > ldapsearch - x - H ldap://lcgsite. *****:2170 \

-b mds-vo-name=JINR-LCG2, o=grid | less

# extended LDIF

#

# LDAPv3

# base <mds-vo-name=JINR-LCG2,o=grid> with scope sub

# filter: (objectclass=*)

# requesting: ALL

#

....

# *****, *****:2119/jobmanager-lcgpbs-hone, JINR-LCG2, grid

dn: GlueCESEBindSEUniqueID=*****, GlueCESEBindGroupCEUniqueID=

*****:2119/jobmanager-lcgpbs-hone, Mds-Vo-name=JINR-LCG2,o=grid

GlueCESEBindSEUniqueID: *****

GlueCESEBindCEUniqueID: *****:2119/jobmanager-lcgpbs-hone

GlueCESEBindMountInfo: /pnfs/*****/data

# VO-atlas-production-12.0.6, *****, *****, JINR-LCG2, grid

dn: GlueLocationLocalID=VO-atlas-production-12.0.6,GlueSubClusterUniqueID=

*****, GlueClusterUniqueID=*****, Mds-Vo-name=JINR-LCG2,o=grid

GlueLocationLocalID: VO-atlas-production-12.0.6

GlueLocationName: VO-atlas-production-12.0.6

GlueLocationVersion: Prod

GlueLocationPath: $VO_ATLAS_SW_DIR

3.2.2. R-GMA - Relational Grid Monitoring Architecture

Централизованная система, является реализацией предложенной архитектуры GGF (Global GRID Forum) мониторинга GRID

Архитектура основана на разделении субъектов на производители данных, потребители данных и единый Реестр

Данные в ней не собираются на одном сервере, а образуют распределенную базу данных, объединяемую в одно целое Реестром

R-GMA обладает большей гибкостью чем MDS

Существует WEB интерфейс ( браузер) R-GMА, который позволяет пользователю легко ориентироваться по GLUE схеме (Grid Laboratory for a Uniform Environment)https://lcgmon01.gridpp. rl. ac. uk:8443/R-GMA/index. html (????)

3.3.  Data Manager System

Storage Element (SE)

-представляет собою сервис, который позволяет пользователям и приложениям хранить и использовать данные.

-Все данные на SE записываюся в формате ReadOnly и не могут быть изменены вплоть до физического уничтожения Т. е. предполагается - один раз записать, много раз читать. Данные записываются на различные типы носителей, которые работают с различными протоколами ( GridFTP, srm, ftp..)

-Различные Виртуальные Организации могут иметь различные правила по квотам

пространства

Types SE

-Classic SE (Disk Server) :

состоит из GridFTP server ( gsiftp) и insecure RFIO daemon дающих доступ к единственному диску или дисковому массиву, не поддерживает SRM

-CASTOR, Mass Storage System MSS :

a tape mass storage system (RFIO) Доступ по GrigFTP и/или rfio, поддерживает SRM

-dCache ( Disk pool manager):

Состоит из dCache сервера и одного/нескольких pool nodes ( машин с дисковыми массивами) Доступ осуществляется по Grig FTP и/или dcap/rfio, поддерживает SRM

-LCG Disk pool manager DPM (Disk Pool):

File transfer - gsiftp, secure RFIO, поддерживает SRM

альтернатива dCache, разработан для LCG , подходит для сайтов с небольшим пространством : до 10 TB (max 10 TB of total space)

Data Channel Protocols Способы доступа к GRID файлам

-GSIFTP (GridFTP) : File Transfer FTP-like

Позволяет размещать/скачивать файлы на/с SE.

Поддерживается всеми типами SE

-gsidcap (GSI dCache Access Protocol) : FILE I/O, Remote file access

-insecure RFIO (Remote File I/O) : FILE I/O, Remote file access

(аутентификация в пределах локальной сети по uid)

-secure RFIO(gsirfio) : FILE I/O, Remote file access

(с аутентификацией по сертификату)

Различные типы SE могут поддерживать один или несколько протоколов

только через API (Application Programming Interface)

Storage Resource Manager (SRM)

сервис, взаимодействующий с локальным SE и обеспечивающий информацию GRID-interface для внешнего мира

SRM разработан как единый интерфейс для управления различными (дисковыми ленточными...) SE, является протоколом управления, но не протоколом доступа

Catalogs Каталоги

-File Catalog

-Replica catalog

-File Authorization Service

-Metadata Catalog

File Transfer

-File Transfer Service

-File Placement Service

File Names in gLite 3.1

В gLite 3.1 используются следующие имена файлов

*Grid Unique IDentifier (GUID):

guid: <36_bytes_unique_string>

обеспечивает уникальность имени файла в GRID

Пример :

guid:38ed3f60-c402-11d7-a6b0-f53ee5a37e1d

*Logical File Name (LFN) or User Alias:

lfn: <any_string>

логическое имя, user alias может использоваться как ссылка на GUID

Пример :

lfn: importantResults/Test1240.dat

или lfn:/grid/<MyVO>/MyDir/MyFile где <MyVO> - имя VO (atlas, cms,...)

*Storage URL (SURL)= Physical File Name (PFN)

(USR - Uniform Resource Locator )

<sfn|srm>://<SE_hostname>/<some_string>

где:

sfn – для файлов расположенных на SEs без SRM interface

Пример :

sfn://<hostname><Accesspoint><VO_path><filename>

sfn://*****/data/atlas/user/petrov/file1

Пример :

srm - для файлов расположенных на SEs имеющих SRM-managed

srm://srm. cern. ch/castor/cern. ch/grid/dteam/doe/file1

*Transport URL (TURL)

<protocol>://<some_string>

представляет собой URI (Uniform Resource Identifier), содержит необходимую информацию для доступа к файлу по протоколу SE

где:

<protocol> протокол SE для доступа к файлам ( GSIFTP, RFIO, gsidcap)

<some_string> формат распознаваемый SE

Пример :

gsiftp://tbed0101.cern. ch/data/dteam/doe/file1