From T3_KR_KNU
Jump to: navigation, search
(How to use KNU Tier-3)
(How to use KNU Tier-3)
Line 124: Line 124:
 
== How to use KNU Tier-3 ==
 
== How to use KNU Tier-3 ==
 
*KNU Tier-3 Center (Local Analysis Farm)이 구축되었습니다.  
 
*KNU Tier-3 Center (Local Analysis Farm)이 구축되었습니다.  
*Tier-3 자원을 이용하고자 할 경우 반드시 '''cms02.knu.ac.kr'''으로 접속한 후 아래와 같이 crab.cfg 파일을 설정하시기 바랍니다.
+
*Tier-3 자원을 이용하고자 할 경우 반드시 '''cms02.knu.ac.kr'''으로 접속한 후 아래와 같이 '''crab.cfg''' 파일을 설정하시기 바랍니다.
 
   
 
   
 
  [GRID]
 
  [GRID]

Revision as of 02:39, 3 August 2011

1 Pre-requisites

KNU Tier-2를 이용하기 위해서는 Grid 환경에 접속하기 위한 인증서를 공식 인증 사이트를 통해 획득한 후 LCG VO에 등록하고 KNU Tier-2에 사용계획서 및 유저 등록을 통해 계정을 부여받는다.

1. CERN 및 CMS User 등록

  CERN & CMS User Registration

2. Certificate

  DOE Certificate 인증 사이트를 통해 인증서 획득 (Internet Explorer 대신 Firefox 를 이용해주시기 바랍니다.)
  • Affiliation : LCG
  • Name of Sponsor (P.I., Supervisor) : Prof. Jun-Suhk Suh
  • Sponsor's Email: suh@knu.ac.kr
  • Sponsor's Phone Number: +82-53-950-7302

신청하시고 바로 suh@knu.ac.kr로 개인 연락처(전화번호)도 기재하여 메일을 보내주시기 바랍니다.

  이메일을 통해 DOE Certificate이 발급된 것을 확인하면 인증 사이트를 통해 인증서를 개인 PC에 Import 한 후 Import된 인증서는 인터넷 옵션의 Public key 관련탭에서 개인 PC로 Export할 수 있다. (인증서를 Export할 시 확장자는 ".Pfx"로 하시기 바랍니다.) 
  Export된 인증서 파일을 cms UI(cms.knu.ac.kr)에 본인 디렉토리에 파일을 전송.
  아래의 순서로 인증서와 키를 만들어 .globus 디렉토리에 넣어주시기 바랍니다.
  $ mkdir .globus
  $ openssl pkcs12 -in usercert.pfx -clcerts -nokeys -out .globus/usercert.pem
  $ openssl pkcs12 -in usercert.pfx -nocerts -out .globus/userkey.pem
  $ chmod 644 .globus/usercert.pem
  $ chmod 400 .globus/userkey.pem

3. VO(Virtual Organisation) 등록

  LCG User Registration LCG VO에 인증서를 등록

4. Getting KNU Tier-2 Account

  1) http://t2-cms.knu.ac.kr/ 에서 KNU Account Registration을 클릭한 후 신청서 양식을 작성하여 등록한다.
  2) 사용계획서(hwp)를 작성하여 email(lcg_knu@knu.ac.kr)로 발송한다.

5. SiteDB Regisration - CERN 및 CMS User 등록 후 CMS SiteDB에 가입하여 자신의 DN(distinguished name) 을 등록한다. 4번까지의 절차 이후 KNU Tier-2 UI에 접속하여 확인 후 CMS SiteDB에 등록한다. (CRAB을 이용하려면 필수 사항)

  $ voms-proxy-init
  Your identity: /DC=org/DC=doegrids/OU=People/CN=XXXXXXXX    <--------- DN(distinguished name)

2 KNU Tier-2 Login

1. Linux 에서 접속하기

터미널을 열어서 원격로그인(SSH)으로 접속한다. 
ssh -X username@cms.knu.ac.kr( or username@cms02.knu.ac.kr)

2. Windows OS 에서 접속하기

Windows OS 에서 linux 서버로 접속하려면 원격 로그인을 사용할 수 있는 특정 프로그램이 필요하다.
   예) Putty, SSH Secure Shell Client (프리웨어 또는 정식 서비스를 찾아 설치가능) - SSH Secure Shell Client 의 경우
또한, Event display 및 ROOT을 사용하기 위해서는 다음과 같은 X 서버를 별도로 설치하여야 한다.
   예) Xming, Cygwin/X11, Hummingbird, Xmanager(유료)
  • 첫 로그인 후 개인 Password 및 shell 설정시 유의사항
1) 패스워드 변경시 passwd 명령 대신 yppasswd 를 사용.
   $ yppasswd
2) Login Password는 알파벳, 숫자, 특수문자 등을 섞어서 사용하여 기억하기 쉬우면서도 길게 만드는 것이 해킹방지에 용의하다.
   (간단한 단어 또는 숫자만의 조합은 극히 위험함.)
3) 기본 쉘 변경을 원하는 경우 chsh 대신 ypchsh 명령을 통해 기본 쉘을 csh 로 변경 가능  
   $ ypchsh

3 CMSSW(CMS Software) Installation

  • KNU Tier-2의 CMS UI 환경의 기본 쉘은 bash 이다. CERN의 lxplus 와 같은 환경으로 작업하기 위해서는 csh 으로 전환한다.
$ csh

CMSSW 을 설치하기 위해 먼저 설치 환경을 설정한다.

$ source /opt/exp_soft/cms/cmsset_default.csh

설치하고자 하는 버전의 CMSSW 를 확인한 후 개인 <working-directroy> 로 이동하여 설치한다. (x.y.z 는 버전을 나타낸다)

$ scramv1 list CMSSW
$ cd <working-directory>
$ scramv1 project CMSSW CMSSW_x_y_z

4 CRAB(CMS Remote Analysis Builder) Installation

CRAB online manual and tutorial

위 링크사이트의 'how to get crab' 부분을 참조하여 가장 최근의 CRAB tar ball file 을 다운로드 받는다. 다운로드 받은 파일을 <working-directory> 로 옮겨 압축을 풀고 설치한다.

$ cd <working-directory>
$ tar vfx CRAB_x_y_z.tgz
$ cd <working-directory>/CRAB_x_y_z
$ ./configure

5 Setting Environment

$ source /opt/exp_soft/cms/cmsset_default.csh
  • CMSSW 4_X_X 버전(64 bit)을 사용하기 위해서는 아래 환경설정을 추가로 입력
$ setenv SCRAM_ARCH slc5_amd64_gcc434
  • 환경 설정시 필수 유의사항
1. CMSSW 환경 설정은 반드시 CMSSW_x_y_z directory 아래에서 시행되어야한다. 
2. CRAB을 사용하는 경우 환경 설정 순서는 반드시 CMSSW 환경설정을 우선하여 시행한다.

CMSSW 환경 설정

$ cd CMSSW_x_y_z
$ cmsenv (= eval `scramv1 runtime -csh`) 

CRAB(CMS Remote Analysis Builder) 환경설정

$ source <working-directory>/CRAB_x_y_z/crab.csh
$ setenv PYTHONPATH ${PYTHONPATH}:${GLITE_LOCATION}/lib

6 Starting GRID Job Submission

CRAB(CMS Remote Analysis Builder)이란?

CRAB 사용 및 간단한 명령어

$ cd <working-directory>/CMSSW_x_y_z/src/<data-directory>
$ grid-proxy-init                            (Grid initialization)
     예)Your proxy is valid until: Thu Jun  4 21:35:26 2009
 
CRAB 기본 명령어    
$ crab -create -submit   (Grid job 생성 및 submit) 
$ crab -status           (수행중인 job 의 상태 확인)
$ crab -getoutput        (완료된 job 의 output 을 확인)

crab.cfg 관련 document

http://cmsdoc.cern.ch/cms/ccs/wm/www/Crab/Docs/crab-v2.7.8.html

CRAB 사용시 유의 사항

  • CRAB_x_y_z/python/crab.cfg, <analysis file(***.py)> 두 파일을 <working-directory>/CMSSW_x_y_z/src/ 디렉토리에 복사한다.
  • File editing - <analysis file(***.py)> 과 crab.cfg 파일의 input file 이름, output file 이름, # of events 를 반드시 확인해야 한다.
  • How to use CRAB to publish
Modify the crab.cfg
https://twiki.cern.ch/twiki/bin/viewauth/CMS/CrabNewHowTo 사이트 참조
dbs_url_for_publication = "https://cmsdbsprod.cern.ch:8443/cms_dbs_ph_analysis_02_writer/servlet/DBSServlet"
  • T2_KR_KNU 사이트에 데이터를 저장하려면 crab.cfg 파일 설정을 아래와 같이 바꿔줘야 한다.
storage_element = cluster142.knu.ac.kr
storage_path = /srm/managerv1?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)

7 How to use KNU Tier-3

  • KNU Tier-3 Center (Local Analysis Farm)이 구축되었습니다.
  • Tier-3 자원을 이용하고자 할 경우 반드시 cms02.knu.ac.kr으로 접속한 후 아래와 같이 crab.cfg 파일을 설정하시기 바랍니다.
[GRID]
wms_service = https://cluster3.knu.ac.kr:7443/glite_wms_wmproxy_server
rb = CERN
ce_white_list = cluster118.knu.ac.kr
  • 유의사항 - Tier-3 센터는 약 20개의 CPU 코어(Opteron280 2.4GHz)로 이루어진 Analysis Farm 으로 너무 많은 양의 혹은 무거운 job 은 Tier-2를 이용해주시기 바랍니다.

8 CRAB Feedback & CMS Computing Manual

  • CRAB 사용시 발생하는 문제점 및 해결방법은 아래 사이트를 참조
https://hypernews.cern.ch/HyperNews/CMS/get/crabFeedback.html
  • CMS Computing Manual
https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBook

9 Storage Element (SE) Manual

CRAB 등을 사용하여 얻은 데이터를 보관할 수 있는 저장 공간을 Storage Element (SE)라 한다. 이곳에 데이터를 저장하기 위해서는 몇가지 특수한 명령어를 사용해야 한다.

  • 현재 srm 명령어 관련 csh 에서의 환경설정이 구성되어있지 않으므로, srm 관련 명령어는 bash 환경의 터미널을 따로 열어서 사용하시기 바랍니다.

1) voms 인증 후 사용할수 있다.

$ voms-proxy-init --voms cms

2) SE의 사용자 디렉토리

$ srm://cluster142.knu.ac.kr:8443/srm/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)

3) 로컬 디렉토리의 test.file 파일을 SE의 사용자 디렉토리로 복사하기

$ srmcp -debug=true -srm_protocol_version=2 file:////`pwd`/test.file srm://cluster142.knu.ac.kr:8443/srm/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)/test.file

4) 복수의 파일을 동시에 전송하기

$ srmcp -copyjobfile=list.txt 
$ cat  list.txt 
srm://myhost.mydomain.edu:8443//dir1/dir2/sh-copy1 file:///localdir/sh1
srm://myhost.mydomain.edu:8443//dir1/dir2/sh-copy2 file:///localdir/sh2
srm://myhost.mydomain.edu:8443//dir1/dir2/sh-copy3 file:///localdir/sh3
  • 원본경로 대상경로를 포함하는 목록 파일을 생성한뒤, -copyjobfile 옵션을 사용하면 복수의 파일을 동시에 전송할수 있다.

5) 복사가 정상적으로 이루어졌는지 확인 또는 디렉토리의 목록 확인

$ srmls srm://cluster142.knu.ac.kr:8443/srm/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)

6) 파일 또는 디렉토리 삭제

$ srmrm srm://cluster142.knu.ac.kr:8443/srm/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)/test.file
$ srmrmdir srm://cluster142.knu.ac.kr:8443/srm/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)/test
  • 저장공간은 모든 유저들이 공유하는 공간이므로 절대 다른 유저의 디렉토리를 함부로 건드려서는 안된다. (작업은 반드시 사용자의 디렉토리에서 )
  • 너무 오랜기간 파일들을 방치함으로써 저장공간을 포화상태로 만들어서는 안된다.