3c379d6fbb4cb4172efa374cde0b0966.ppt
- Количество слайдов: 41
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) SE Installation and configuration (Disk Pool Manager) Nabil Talhaoui(talhaoui@cnrst. ma) Joint EPIKH/EUMEDGRID-Support Event in Rabat Morocco, 03. 06. 2011 www. epikh. eu
• • Overview of grid Data Managment DPM Overview DPM Installation Troubleshooting Location, Meeting title, dd. mm. yyyy 2
Grid Overview We know that HPC (High Performance Computing) could be resume in two main challenges: • CPU power; • Storage system. GRID has found a kind of solution to these items and in this talk we’ll analyze the GRID design of Storage System. 3
OVERVIEW • Assumptions: – Users and programs produce and require data – the lowest granularity of the data is on the file level (we deal with files rather than data objects or tables) – Data = files • Files: – – Mostly, write once, read many Located in Storage Elements (SEs) Several replicas of one file in different sites Accessible by Grid users and applications from “anywhere” • Also… – WMS can send (small amounts of) data to/from jobs: Input and Output Sandbox – Files may be copied from/to local filesystems (WNs, UIs) to the Grid (SEs) 4
Overview • Data Management System is the subsystem of the g. Lite Middleware which takes care about data manipulation for both all other GRID services and user application. • DMS provides all operation that users can perform on the data. – – – – Creating files/directories Renaming files/directories Deleting files/directories Moving files/directories Listing directories Creating symbolic links Etc …. . 5
DMS – Objectives • DMS provides two main capabilities: – File Management – Metadata Management • File is the simplest way to organize data • Metadata are “attributes” that describe other data File Management Østorage (save, copy, read, list, …) Øplacement (replica, transfer, …. ) Øsecurity (access control, …. ); Metadata Management Øcataloguing Øsecure database access Ødatabase schema virtualization 6
Data Management Services Data Management System is composed by three main modules: Storage Element, Catalog and File Transfer Service. • Storage Element – common interface to storage – Storage Resource Manager Castor, d. Cache, DPM, storm…. – POSIX-I/O g. Lite-I/O, rfio, dcap, xrootd – Access protocols gsiftp, https, rfio, … • Catalogs – keep track where data is stored – File Catalog – Replica Catalog – File Authorization Service – Metadata Catalog • File Transfer – scheduled reliable file transfer – Data Scheduler (only designs exist so far) – File Transfer Service g. Lite FTS and glite-url-copy; (manages physical transfer) Globus RFT, Stork – File Placement Service g. Lite FPS (FTS and catalog interaction in a transactional way) 7
OVERVIEW • Storage Element is the service which saves/loads files to/from local storages. These local storages can be both, a disk or large storage systems. • Functions: – File storage. – Storage resources administration interface. – Storage space administration. • g. Lite 3. 2 data access protocols: – File Transfer: GSIFTP (Grid. FTP) – File I/O (Remote File access): gsidcap insecure RFIO secured RFIO (gsirfio) 8
SE Types • Classic SE: – – – • Mass Storage Systems (Castor) – – • Files migrated between front-end disk and back-end tape storage hierarchies Grid. FTP server Insecure RFIO (Castor) Provide a SRM interface with all the benefits Disk pool managers (d. Cache and g. Lite DPM) – – – • Grid. FTP server Insecure RFIO daemon (rfiod) – only LAN limited file access Single disk or disk array No quota management not supported anymore manage distributed storage servers in a centralized way Physical disks or arrays are combined into a common (virtual) file system Disks can be dynamically added to the pool Grid. FTP server Secure remote access protocols (gsidcap for d. Cache, gsirfio for DPM) SRM interface Storm – ● Solution best suited to cope with large storage (> or >> 100 TB) – ● Makes full advantage of parallel filesystem (GPFS, Lustre) – ● SRM v 2. 2 interface 9
Overview Storage Resource Managers (SRMs) are middleware components whose function is to provide dynamic space allocation and file management on shared distributed storage systems. This effort supports the mission in providing the technology needed to manage the rapidly growing distributed data volumes, as a result of faster and larger computational facilities. 10
SRM (Storage Resource Manager ) d. Cache Storm SRM Castor I talk to them on your behalf You as a I will even allocate space for user need to your files know all the And I will use transfer systems!!! protocols to send your files there g. Lite DPM
Disk Pool Manager Overview • The Disk Pool Manager (DPM) is a lightweight solution for disk storage management, which offers the SRM interfaces. • It may act as a replacement for the obsolete classical SE with the following advantages : – SRM interface (both v 1. 1 and v 2. 2) – Better scalability : DPM is allow to manage 100+ TB distributing the load over several servers – High performances – Light-weight management • The DPM head node has to have one filesystem in this pool, and then an arbitrary number of disk servers can be added by YAIM. • The DPM disk servers can have multiple filesystems in the pool. • The DPM head node also hosts the DPM and DPNS databases, as well as the SRM web service interfaces.
Disk Pool Manager Overview
DPM architecture /dpm /domain • CLI, C API, SRM-enabled client, DPM Name Server etc. – Namespace – Authorization – Physical files location • Disk Servers – Physical files • Direct data transfer from/to da ta tr an s file fe r SRM Servers (v 1. 1, v 2. 2) • DPM head node DPM Server – Requests queuing and processing – Space management • /home /vo disk server (no bottleneck) DPM disk servers …
DPM architecture • Usually the DPM head node hosts: – SRM server (srmv 1 and/or srmv 2) : receives the SRM requests and pass them to the DPM server; – DPM server : keeps track of all the requests; – DPM name server (DPNS) : handles the namespace for all the files under the DPM control; – DPM RFIO server : handles the transfers for the RFIO protocol; – DPM Gridftp server : handles the transfer for the Gridftp protocol.
Installing DPM
Installing pre-requisites /1 • Start from a fresh install of SLC 5. X (In this tutorial use X 86_64) • Installation will install dependencies, including – other necessary g. Lite modules – external dependencies
Installing pre-requisites /2 • We need a dedicated partition for the storage area • Check the partition • # df –h • Filesystem Size Used Avail Use% Mounted on • • • /dev/sda 1 /dev/sda 2 none 9. 7 G 820 M 8. 4 G 9% / 19 G 33 M 18 G 1% /storage 125 M 0% /dev/shm
Adding Disk FOR THIS TUTORIA L ADD A DISK FOR VIRTUAL MACHINE • Edit VM settings before start the VM • • Add a second Disk (scsi) (20 GB is enough for tutorial) Start the Virtual Machine • • Login fdisk -l (to check disk exists) • fdisk /dev/sdb (and create a primary partition – new partition (n p 1 enter)) – print and write( p w) • • mkfs /dev/sdb 1 mkdir /storage • • mount /dev/sdb 1 /storage (edit /etc/fstab to properly mount disk at boot !!!) Location, Meeting title, dd. mm. yyyy 19
Repository settings • cd /etc/yum. repos. d/ • Specify the mrepo host: • export MREPO=http: //repo. magrid. ma/yumrepo/glite 32 • Configure the repository as follows: • REPOS="dag lcg-CA glite-SE_dpm_mysql glite-SE_dpm_disk. repo " • Get repositories with: • for name in $REPOS; • do wget $MREPO/$name. repo -O /etc/yum. repos. d/$name. repo; done
Installing pre-requisites /3 • Syncronization among all g. Lite nodes is mandatory. • So install ntp – #yum install ntp – You can check ntpd’s status
Installing pre-requisites /4 • Check the FQDN (fully qualified domain name) hostname – Ensure that the hostnames of your machines are correctly set. Run the command: #hostname –f – if your hostname is incorrect : § edit the file /etc/sysconfig/network and set the HOSTNAME variable, then restart network service
Installation • #yum clean all • #yum update • • #yum install lcg-CA (Install the Cas) • #yum install mysql-server • #yum install mysql-devel • Install the metapackage • – yum install
Installation-Host certificate • Copy host certificate located in /root/ as pc. XXcert. pem and pc. XXkey. pem to /etc/grid-security (hostcert. pem and hostkey. pem). • Change files permission – #chmod 644 /etc/grid-security/hostcert. pem – #chmod 400 /etc/grid-security/hostkey. pem
DPM Configuration • Create a copy of site-info. def template to your reference directory for the installation (e. g. /root/sitedir): cp /opt/glite/yaim/examples/siteinfo/site-info. def /root/sitedir/mysite-info. def • Copy the directory ‘services’ in the same location cp –r /opt/glite/yaim/examples/siteinfo/services /root/sitedir/. # ls /root/sitedir/ my-site-info. def services #ls /root/sitedir/services glite-se_dpm_disk glite-se_dpm_mysq ig-hlr • Edit the site-info. def file • A good syntax test for your site configuration file is to try to source it manually running the command: – #source site-info. def #(after you end editing)
site. def • MY_DOMAIN = mydomainname your domain name (check it) • MYSQL_PASSWORD=passwd_root #the root Mysql password • VOS=“eumed" #The VO we want … • ALL_VOMS_VOS=“eumed“
Support for eumed VO • • WMS_HOST=wms-01. eumedgrid. eu LB_HOST="wms-01. eumedgrid. eu: 9000" LFC_HOST=lfc. ulakbim. gov. tr BDII_HOST=wms-01. eumedgrid. eu VOS=“eumed “ add here the VOs you want to support VO_EUMED_SW_DIR=$VO_SW_DIR/eumed VO_EUMED_DEFAULT_SE=$SE_HOST VO_EUMED_STORAGE_DIR=$CLASSIC_STORAGE_DIR/eumed VO_EUMED_VOMS_SERVERS="'vomss: //voms 2. cnaf. infn. it: 8443/voms/eumed? / eumed' 'vomss: //voms-02. pd. infn. it: 8443/voms/eumed? /eumed'" VO_EUMED_VOMSES="'eumed voms 2. cnaf. infn. it 15016 /C=IT/O=INFN/OU=Host/L=CNAF/CN=voms 2. cnaf. infn. it eumed' 'eumed voms-02. pd. infn. it 15016 /C=IT/O=INFN/OU=Host/L=Padova/CN=voms 02. pd. infn. it eumed'" VO_EUMED_VOMS_CA_DN="'/C=IT/O=INFN/CN=INFN CA'" VO_EUMED_WMS_HOSTS="prod-wms-01. pd. infn. it wms. ulakbim. gov. tr wms 01. eumedgrid. eu" Location, Meeting title, dd. mm. yyyy 27
Support for eumed. VO Add gilda poolaccount in /opt/glite/yaim/examples/users. conf according the following format: UID: LOGIN: GID: GROUP: VO: FLAG: example: – – – 3101: eumed 001: 2418: eumed: : 3102: eumed 002: 2418: eumed: : 3103: eumed 003: 2418: eumed: : 3104: eumed 004: 2418: eumed: : 3105: eumed 005: 2418: eumed: : . . Add the following lines to /opt/gite/yaim/examples/groups. conf – "/eumed/ROLE=Software. Manager": : : sgm: – "/eumed": : 28
site. def (DPM) • • In the files glite-se_dpm_disk glite-se_dpm_mysql) Set the variables: • • DPM_HOST=
Firewall configuration • The following ports have to be open: – DPM server: port 5015/tcp must be open locally at your site at least (can be incoming access as well), – DPNS server: port 5010/tcp must be open locally at your site at least (can be incoming access as well), – SRM servers: ports 8443/tcp (SRMv 1) and 8444/tcp (SRMv 2) must be opened to the outside world (incoming access), – RFIO server: port 5001/tcp must be open to the outside world (incoming access), in the case your site wants to allow direct RFIO access from outside, – Gridftp server: control port 2811/tcp and data ports 40000 -45000/tcp (or any range specified by GLOBUS_TCP_PORT_RANGE) must be opened to the outside world (incoming access). – FOR THIS TUTORIAL JUST STOP IPTABLES – #service iptables stop
Middleware Configuration • /opt/glite/yaim/bin/yaim -c -s
• After configuration remember to manually run the script /etc/cron. monthly/create-default-dirs-DPM. sh as suggested by yaim log. This script create and set the correct permissions on VO storage directories; it will be run monthly via cron.
DPM Server Testing
Testing DPM • A simple test for checking if the DPM server is correctly exporting the filesystem is: – /opt/lcg/bin/dpm-qryconf
Post configuration • Login into the UI(ui 01. magrid. ma): Set the variables: § DPM_HOST : “export DPM_HOST=pc. XX. magrid. ma” § DPNS_HOST : “export DPNS_HOST=pc. XX. magrid. ma” Execute following commands : - dpm-qryconf § dpns-ls / § dpns-mkdir § dpns-rm § # globus-url-copy file: /tmp/myfile gsiftp: //yourdpmhost/dpm/magrid/home/eumed/testfile § #uberftp yourdmphost. domain (chek if this connection works!) § Then try to really copy a file using globus
• Other command to build Name. Space – dpns-mkdir – dpns-chmod – dpns-chown – dpns-setacl And commands to add pools and filesystems – dpm-addfs – dpm-addpool
Mysql • The critical point of DPM is the database (mysql) • In a production site take the appropriate cautions to backup the database. • If you miss your database you will miss all your data!!! • Consider to take a full backup of the machine or use of mysql replica (http: //dev. mysql. com/doc/refman/5. 0/en/replicationhowto. html)
mysql DB +---------+ • And take a look at mysql db | Tables_in_dpm_db | • #mysql –p –u dpmmgr +---------+ • Enter password: ***** | dpm_copy_filereq | • mysql> show databases; | dpm_fs | • +-----+ • | Database | | dpm_get_filereq | • +-----+ | dpm_pending_req | +----------+ • | cns_db | | dpm_pool | | Tables_in_cns_db • | dpm_db | | dpm_put_filereq | +----------+ • | mysql | | dpm_req | Cns_class_metadata • | test | | • +-----+ | | | dpm_space_reserv Cns_file_metadata | dpm_unique_id | Cns_file_replica | | | 4 mysql>connect dpm_db; mysql>connect cns_db; | Cns_groupinfo | schema_version | 4 | +---------+| Cns_symlinks | Cns_unique_gid | 4 mysql>show tables; | Cns_unique_id | | Cns_unique_uid | | Cns_user_metadata
Log-files • If you have some problem try to analyze your log-files 4 4 4 4 /var/log/dpns/log /var/log/dpm-gsiftp/dpm-gsiftp. log /var/log/srmv 1/log /var/log/srmv 2. 2/log /var/log/rfio/log SE_GRIDFTP_LOGFILE=//var/log/globusgridftp. log (Files can be in different location depending on the version of packages installed)
Reference http: //www. gridpp. ac. uk/wiki/Disk_Pool_Manager https: //twiki. cern. ch/twiki/bin/view/LCG/Dpm. General. Description http: //igrelease. forge. cnaf. infn. it/doku. php? id=doc: guides: install-3_2