From T3_KR_KNU
Jump to: navigation, search
(Starting GRID Job Submission)
(KNU Tier-2 Login)
Line 45: Line 45:
 
  2) Login Password는 알파벳, 숫자, 특수문자 등을 섞어서 사용하여 기억하기 쉬우면서도 길게 만드는 것이 해킹방지에 용의하다.
 
  2) Login Password는 알파벳, 숫자, 특수문자 등을 섞어서 사용하여 기억하기 쉬우면서도 길게 만드는 것이 해킹방지에 용의하다.
 
     (간단한 단어 또는 숫자만의 조합은 극히 위험함.)
 
     (간단한 단어 또는 숫자만의 조합은 극히 위험함.)
  3) 기본 쉘 변경을 원하는 경우 chsh 대신 ypchsh 명령을 통해 기본 쉘을 csh 로 변경 가능   
+
  3) 기본 쉘 변경을 원하는 경우 csh 대신 ypchsh 명령을 통해 기본 쉘을 csh 로 변경 가능   
 
     $ ypchsh
 
     $ ypchsh
  

Revision as of 04:03, 27 October 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) : Daehee Han
  • Sponsor's Email: hanbi@knu.ac.kr
  • Sponsor's Phone Number: +82-53-950-6321

신청하시고 바로 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) 기본 쉘 변경을 원하는 경우 csh 대신 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/managerv2?SFN=/pnfs/knu.ac.kr/data/cms/store/user/(username)

7 How to use KNU Tier-3

  • KNU Tier-3 Center (Local Analysis Farm)이 구축되었습니다.
[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
  • 저장공간은 모든 유저들이 공유하는 공간이므로 절대 다른 유저의 디렉토리를 함부로 건드려서는 안된다. (작업은 반드시 사용자의 디렉토리에서 )
  • 너무 오랜기간 파일들을 방치함으로써 저장공간을 포화상태로 만들어서는 안된다.