NorduGrid ARC Tutorial



Similar documents
Grids Computing and Collaboration

Introduction to Programming and Computing for Scientists

Streamline Computing Linux Cluster User Training. ( Nottingham University)

How To Install An Aneka Cloud On A Windows 7 Computer (For Free)

Installing and running COMSOL on a Linux cluster

Kaltura On-Prem Evaluation Package - Getting Started

ARC Computing Element

GRID Computing: CAS Style

Cluster, Grid, Cloud Concepts

The Einstein Depot server

McAfee SMC Installation Guide 5.7. Security Management Center

Introduction to Sun Grid Engine (SGE)

Concepts and Architecture of the Grid. Summary of Grid 2, Chapter 4

Work Environment. David Tur HPC Expert. HPC Users Training September, 18th 2015

Grid Engine Basics. Table of Contents. Grid Engine Basics Version 1. (Formerly: Sun Grid Engine)

CA Performance Center

The RWTH Compute Cluster Environment

Program Update IPedge Feature Description IPedge Feature Desc. 8/2/13

Oracle Fusion Middleware 11gR2: Forms, and Reports ( ) Certification with SUSE Linux Enterprise Server 11 SP2 (GM) x86_64

User Migration Tool. Note. Staging Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted Release 9.0(1) 1

SLURM: Resource Management and Job Scheduling Software. Advanced Computing Center for Research and Education

IGI Portal architecture and interaction with a CA- online

IBM Cloud Manager with OpenStack

UNISOL SysAdmin. SysAdmin helps systems administrators manage their UNIX systems and networks more effectively.

Australian Synchrotron, Storage Gateway

Computational Design Optimization Using Distributed Grid Resources

HDFS Users Guide. Table of contents

The Grid Monitor. Usage and installation manual. Oxana Smirnova

VERITAS Backup Exec TM 10.0 for Windows Servers

LSKA 2010 Survey Report Job Scheduler

PBS Tutorial. Fangrui Ma Universit of Nebraska-Lincoln. October 26th, 2007

An Introduction to High Performance Computing in the Department

Installing IBM Websphere Application Server 7 and 8 on OS4 Enterprise Linux

Law College Computer and Technology Information

Data Grids. Lidan Wang April 5, 2007

Bitrix Site Manager ASP.NET. Installation Guide

Check Point FDE integration with Digipass Key devices

Moxa Device Manager 2.3 User s Manual

Running applications on the Cray XC30 4/12/2015

Chapter 23: Uploading Your Website to the Internet

QAD Enterprise Applications. Training Guide Demand Management 6.1 Technical Training

MIGRATING DESKTOP AND ROAMING ACCESS. Migrating Desktop and Roaming Access Whitepaper

vcenter Operations Management Pack for SAP HANA Installation and Configuration Guide

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

Use Enterprise SSO as the Credential Server for Protected Sites

SafeGuard Enterprise Web Helpdesk. Product version: 6.1

Installation Guide NetIQ AppManager

Grid Computing in SAS 9.4 Third Edition

Windows Azure Pack Installation and Initial Configuration

FileMaker Server 7. Administrator s Guide. For Windows and Mac OS

Technical White Paper BlackBerry Enterprise Server

Unicenter NSM Integration for BMC Remedy. User Guide

CA and SSL Certificates

A programming model in Cloud: MapReduce

Configuring Security Features of Session Recording

Beyond Windows: Using the Linux Servers and the Grid

Freshservice Discovery Probe User Guide

User Guide. Version 3.2. Copyright Snow Software AB. All rights reserved.

Job Scheduling with Moab Cluster Suite

Capture Pro Software FTP Server System Output

Secure Shell. The Protocol

FTP Service Reference

Rev 7 06-OCT Site Manager Installation Guide

EPiServer Operator's Guide

NTP Software File Auditor for NAS, EMC Edition

TFS ApplicationControl White Paper

Laptop Backup - Administrator Guide (Windows)

User s Manual

Server & Workstation Installation of Client Profiles for Windows

StreamServe Persuasion SP4

1. PROJECT MANAGEMENT INTRO

Command Line Interface User Guide for Intel Server Management Software

1.0. User Manual For HPC Cluster at GIKI. Volume. Ghulam Ishaq Khan Institute of Engineering Sciences & Technology

Submitting batch jobs Slurm on ecgate. Xavi Abellan User Support Section

Symantec AntiVirus Corporate Edition Patch Update

SSH and Basic Commands

F-Secure Messaging Security Gateway. Deployment Guide

White Paper. Installation and Configuration of Fabasoft Folio IMAP Service. Fabasoft Folio 2015 Update Rollup 3

Final Year Project Interim Report

IBackup Drive User Guide

Managing Linux Servers with System Center 2012 R2

Evaluation of different Open Source Identity management Systems

Enhanced Connector Applications SupportPac VP01 for IBM WebSphere Business Events 3.0.0

Management, Logging and Troubleshooting

SSL Tunnels. Introduction

Interoperability between Sun Grid Engine and the Windows Compute Cluster

GRAVITYZONE HERE. Deployment Guide VLE Environment

F-Secure Internet Gatekeeper

ecopy ShareScan v4.3 Pre-Installation Checklist

SafeGuard Enterprise Web Helpdesk

IBM WebSphere Application Server Version 7.0

Quick Install Guide. Lumension Endpoint Management and Security Suite 7.1

Installing CPV Lab Version 2.17

DIGIPASS KEY series and smart card series for Juniper SSL VPN Authentication

Transcription:

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 1(34) NorduGrid ARC Tutorial Arto Teräs <arto.teras@csc.fi> and Olli Tourunen <olli.tourunen@csc.fi> CSC, Espoo, Finland March 23 rd 2006

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 2(34) Contents Part 1: Introduction to Grids and NorduGrid Grid basics NorduGrid collaboration and ARC middleware Authentication and authorization in Grids Grid environment compared to local computing resources Job workflow and ARC user interface Part 2: Hands-on exercises Submitting jobs in NorduGrid, writing job description files Simple file transfers Monitoring jobs using the Grid Monitor graphical interface

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 3(34) What is Grid? Uniform and secure access to geographically distributed heterogeneous systems Both the set of users and connected resources vary dynamically Grids go across multiple administrative domains!

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 4(34) Common Misconceptions Grid increases resources Popular comparison with the World Wide Web is misleading: One web server may serve a thousand users, but one grid user wants to use a thousand servers... Effective use of resources can bring some savings, but new services and easy access much more important Grid magically binds software together Vision: Computing power as electricity from the plug Reality: still quite far from it If data formats or APIs are incompatible Grid doesn't help Possibility to monitor job execution is important trying to make a black box easily results in a black hole

Grid Overview NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 5(34)

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 6(34) Role of Grid Middleware Application / User Grid Middleware System 1 System 2 Storage 1 Batch jobs User administration Operating system Hardware System 3

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 7(34) Does One Need to Change Existing Applications? Three different approaches: 1) Using the application as is: grid middleware will move the executable and the data to the target system Library dependencies often need to be resolved by linking statically or packing them to go with the application 2) Installing the application on the target system and using it via the Grid interface Batch processing type applications normally work without changes, interactive applications are more difficult 3) Modifying the application to fully exploit a distributed environment Distributing over a large geographical area is not practical unless the computation can be split to independent subtasks

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 8(34) NorduGrid Collaboration Past: Grid pilot project by Nordunet in 2001 Implemented a production Grid system working non stop since May 2002 Present: A community around open source Grid middleware: NorduGrid ARC National Grids (e.g. M-grid, SweGrid), users also outside the Nordic countries Real users, real applications Open for anyone to participate

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 9(34) The Material Sciences Grid (M-grid) Goal: Throughput computing capacity mainly for the needs of physics and chemistry researchers Opened to all CSC customers in Nov 2005, not limited by the field of research Joint project between seven Finnish universities, Helsinki Institute of Physics and CSC Partners mainly laboratories and departments, not university IT centers First large initiative to put Grid middleware into production use in Finland Uses NorduGrid ARC middleware Platform: Linux based PC clusters

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 10(34) NorduGrid ARC ARC (Advanced Resource Connector) is the middleware used and developed by the NorduGrid collaboration Based on Globus Toolkit TM 2 libraries, can also use Globus 4.0 Adds services not provided by Globus such as scheduling Extends or completely replaces some Globus components Initial development principles: simple, stable, noninvasive Resources don't need to be dedicated to the Grid GPL licence http://www.nordugrid.org

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 11(34) Grid Security Objective: Convenient but secure access to different kinds of resources Grid account is a pass to computers beyond organizational domains! Great power => great damage Security aspects have been considered in the technology Strong authentication and encryption: no plain-text passwords Identity tied to a certificate: revocation blocks access in the whole Grid Implementation details may vary from site to site Be careful if your data is sensitive!

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 12(34) Authentication: local vs Grid Local resources User name and password Login authenticates and usually also authorises to use local resources Grid environment Authentication based on X.509 certificates granted by a third trusted party, Certificate Authority (CA) Each user has his/her own personal certificate Authentication is separate from authorization => having a valid certificate does not automatically give access to resources

Certificate Based Authentication NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 13(34)

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 14(34) Authorization in Grid Users are grouped into Virtual Organizations (VO) Based on common research area, nationality, funding agency or project The same user can belong to several VOs Resource providers grant access to VOs Scales better than managing individual users at every resource Implies trust towards the organization managing the VO E.g. in the M-grid the users of each site form one VO, and we could combine all to a larger "M-grid VO" when negotiating with external parties

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 15(34) Resource Sharing Many different models are in use Anarchy: for example local resources in laboratories relies on solidarity and personal relations Centralized allocation within an organization, organization level agreements Giving away free cycles while local jobs have higher priority: a model used in several NorduGrid clusters Challenges in resource allocation and sharing User friendliness Maximal resource utilization rate Technical implementation, lack of standards

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 16(34) Resource Sharing in M-grid Policy: Jobs can be submitted both to the local queue and through the grid interface Goal is to minimize waste of resources: empty nodes are always available for use (dynamical sharing)

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 17(34) Grid Environment Compared to Local Resources NorduGrid can in some respects be viewed as an extended batch queue system Of course it's much more, but we have to start from somewhere...

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 18(34) Local Jobs and Grid Jobs Local batch jobs Batch queue system options specifying job requirements are usually written to small scripts, defining also directory paths etc. qsub, llsubmit,... Grid jobs Described using (extended) Resource Specification Language (xrsl) ngsub Runtime Environments File transfers from the submitting machine or separate file servers on the Grid, Storage Elements (SE) Grid middleware transforms the Grid job to a local batch job

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 19(34) Steps to Start Using NorduGrid 1) Get an account for a system with the NorduGrid client installed (or install it on your own PC) 2) Request a certificate from a Certificate Authority (CA) 3) Install the certificate 4) Log in to the Grid 5) Write a job description using xrsl language 6) Submit the job 7) Monitor the progress of the job 8) Fetch the results

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 20(34) Installing the NorduGrid Client Required to submit jobs to NorduGrid Download from http://ftp.nordugrid.org/download/ Binaries for various Linux distributions, source code also available Easiest way to install the client is to use the standalone version Uncompress in a directory (no root privileges required): $ tar zxvf nordugrid-standalone-<latest>.i386.tgz Run the environment setup script: $ cd nordugrid-standalone-<latest> $../setup.sh RPM packages are recommended for multi-user installations

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 21(34) Requesting and Installing the Certificate Create a certificate request $ grid-cert-request -int Generates the.globus subdirectory with a key (userkey.pem) and the request (usercert_request.pem) Identity string: e.g. /O=Grid/O=NorduGrid/OU=csc.fi/CN=Arto Teras Remember to select a good passphrase and keep the key secret! Send the file ~/.globus/usercert_request.pem to a Certification Authority (CA) See the instructions at your local site / country which CA to contact Wait for an answer from the CA Signed certificate returned by the Certificate Authority should be saved as file.globus/usercert.pem

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 22(34) User Interface grid-proxy-init / grid-proxy-destroy - log in / out ngsub - find suitable resource and start a job ngstat - check the status of jobs ngcat - display the stdout or stderr of a running job ngget - retrieve the results of a finished job ngkill - stop a job ngclean - delete a job from a computing resource ngsync - find users's jobs ngrenew - update remote credentials (authorization) ngls - list files on a storage element or in job's directory ngcopy / ngcp - transfer files to and from clusters and storage elements ngrequest - third party transfers or data tasks ngremove / ngrm - delete remote files

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 23(34) Grid Monitor on the NorduGrid Website Shows currently connected resources Almost all elements "clickable" Browse queues and job states by cluster List jobs belonging to a certain user No authentication, anyone can browse the info privacy issues

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 24(34) Logging in to the Grid "Log in": grid-proxy-init The command does not actually log in anywhere, but decrypts the private key and uses it to create a time-limited proxy The proxy is used for authenticating to the resources "Log out": grid-proxy-destroy Destroys the proxy

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 25(34) Writing a Job Description File Resource Specification Language (RSL) files are used to specify job requirements and parameters for submission NorduGrid uses an extended language (xrsl) based on the Globus RSL Similar to scripts for local queueing systems, but include some additional attributes Job name Executable location and parameters Location of input and output files of the job Architecture, memory, disk and CPU time requirements Runtime environment requirements

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 26(34) xrsl Example hellogrid.sh #!/bin/sh echo Hello Grid! hellogrid.xrsl & (executable=hellogrid.sh) (jobname=hellogrid) (stdout=hello.out) (stderr=hello.err) (gmlog=gridlog) (cputime=10) (memory=32) (disk=1)

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 27(34) Submitting the Job Submit the job $ ngsub -d 1 -f hellogrid.xrsl A job id is returned => Job submitted with jobid gsiftp://ametisti.grid. helsinki.fi:2811/jobs/455611239779372141331307

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 28(34) Monitoring the Job Query the status using the command line $ ngstat hellogrid => Job gsiftp://ametisti.grid.helsinki.fi:2811/ jobs/455611239779372141331307 Jobname: hellogrid Status: INLRMS:Q Most common status values are ACCEPTED, PREPARING, INLRMS:Q, INLRMS:R, FINISHING, FINISHED Or use the Grid Monitor

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 29(34) Fetching the Results Print the job output $ ngcat hellogrid shows the standard output of the job this can be done also during the job is running Download the result files $ ngget hellogrid => ngget: downloading files to /home/ajt/455611239779372141331307 ngget: download successful - deleting job from gatekeeper.

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 30(34) Using a Storage Element Storage Elements are disk servers accessible via the Grid Can be used to store job output while user is logged out and client machine disconnected from the Grid Allows to store input files close to the cluster where the program is executed, on a high bandwidth network Some files can be local and some remote: (inputfiles= (''input1''. ''/home/user/myexperiment'' (''input2'', ''gsiftp://se.example.com/files/data'')) (outputfiles= (''output'', ''gsiftp://se.example.com/mydir/result1'') (''prog.out'', ''gsiftp://se.example.com/mydir/stdout'')) (stdout=''prog.out'')

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 31(34) Gsincftp Can be used to transfer files to and from storage elements Based on the popular ncftp ftp client, but uses certificate based authentication instead of standard ftp authentication Example session: $ gsincftp se1.ndgf.csc.fi...logged in to se1.ngdf.csc.fi. $ cd ndgf/tutorial $ get hello.out Already deprecated by the Globus project, does not work with the latest Globus GridFTP server replacement: UberFTP (http://dims.ncsa.uiuc.edu/set/uberftp/)

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 32(34) Runtime Environments Software packages which are preinstalled on a computing resource and made available through Grid Avoid the need of sending the binary at the start of executing a job Useful if there are many users of the same software or if the same program is used frequently Allow local platform specific optimizations Implemented simply by shell scripts which initialize the environment and are placed in a specific directory Required runtime environments can be specified in the job description file, for example: (runtimeenvironment=apps/graph/povray-3.6) Runtime Environment Registry: http://www.csc.fi/grid/rer/

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 33(34) Real Life Applications It's common to send several subjobs to the Grid to solve a larger problem Parallel MPI jobs to a single cluster are supported (if correct runtime environment installed), but no MPI between clusters Splitting the job to suitable parts and gathering the parts together is left to the user More error prone environment than traditional local systems => error checking and recovery important Fault reporting and debugging has room for improvements New ARClib API available in the development version

NorduGrid ARC Tutorial / Arto Teräs and Olli Tourunen 2006-03-23 Slide 34(34) Information Resources M-grid documents: http://www.csc.fi/proj/mgrid/docs/ M-grid user support and discussion list mgrid-discuss@postit.csc.fi Lots of documentation, presentations and tutorials on the NorduGrid web site http://www.nordugrid.org User guide: http://www.nordugrid.org/documents/userguide.pdf NorduGrid user support mailing list nordugrid-support@nordugrid.org NorduGrid technical discussion mailing list nordugrid-discuss@nordugrid.org Main communication channel between developers Thank you! Questions?