Globus Grid Tutorial Part 3: Information Services.

Slides:



Advertisements
Similar presentations
The Anatomy of the Grid: An Integrated View of Grid Architecture Carl Kesselman USC/Information Sciences Institute Ian Foster, Steve Tuecke Argonne National.
Advertisements

Radko Zhelev, IPP BAS Generic Resource Framework for Cloud Systems 1 Generic Resource Framework for Cloud Systems.
USING THE GLOBUS TOOLKIT This summary by: Asad Samar / CALTECH/CMS Ben Segal / CERN-IT FULL INFO AT:
Active Directory: Final Solution to Enterprise System Integration
Technical Architectures
70-294: MCSE Guide to Microsoft Windows Server 2003 Active Directory, Enhanced Chapter 1: Introduction to Active Directory.
3.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 3: Introducing Active Directory.
Introduction to Web Database Processing
Directory & Naming Services CS-328 Dick Steflik. A Directory.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 1: Introduction to Windows Server 2003.
Centralized vs. Decentralized Design for Internet Applications Adriana Iamnitchi Department of Computer Science The University of Chicago I.
Grid Computing, B. Wilkinson, 20046c.1 Globus III - Information Services.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
Windows 2000 Remote Access. Remote Access Overview With Windows 2000 remote access, remote access clients connect to remote access servers and are transparently.
Chapter 8: Network Operating Systems and Windows Server 2003-Based Networking Network+ Guide to Networks Third Edition.
3.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 3: Introducing Active Directory.
Robert Horn, Agfa Corporation
LDAP LIGHT WEIGHT DIRECTORY ACCESS PROTOCOL PRESENTATION BY ALAKESH APURVA DHAN AND ASH.
Understanding Active Directory
Configuration Management Supplement 67 Robert Horn, Agfa Healthcare.
Linux Operations and Administration
Introduction to Active Directory Services Completely integrated with Microsoft Windows 2000 Server Integrates the Internet concept of namespace with the.
Chapter 11: Directory Services. Directory Services A directory service is a database that contains information about all objects on the network. Directory.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 33 CGI Technology for Dynamic Web Documents There are two alternative forms of retrieving web documents. Instead of retrieving static HTML documents,
The EU DataGrid – Information and Monitoring Services The European DataGrid Project Team
A Java Based Prototype Grid User Interface Janice Drohan Project Supervisor: Prof. Peter Clarke.
GRID Centralized management of the Globus grid-mapfile Carlo Rocca INFN, Catania.
LIGHT WEIGHT DIRECTORY ACCESS PROTOCOL Presented by Chaithra H.T.
The Directory A distributed database Distributed maintenance.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
Chapter 6: Windows Servers
An Integrated Instrumentation Architecture for NGI Applications Ian Foster, Darcy Quesnel, Steven Tuecke Argonne National Laboratory The University of.
A. Cavalli - F. Semeria INFN Experience With Globus GIS 1 A. Cavalli - F. Semeria INFN First INFN Grid Workshop Catania, 9-11 April 2001 INFN Experience.
Database-Driven Web Sites, Second Edition1 Chapter 5 WEB SERVERS.
1 Chapter Summary Understanding DNS Understanding Name Resolution Configuring a DNS Client Understanding Active Directory Understanding Active Directory.
1 Welcome to CSC 301 Web Programming Charles Frank.
LDAP (Lightweight Directory Access Protocol ) Speaker: Chang-Yu Wu Adviser: Quincy Wu Date:2007/08/22.
The Replica Location Service The Globus Project™ And The DataGrid Project Copyright (c) 2002 University of Chicago and The University of Southern California.
Page 1 Active Directory and DNS Lecture 2 Hassan Shuja 09/14/2004.
Globus Toolkit Massimo Sgaravatto INFN Padova. Massimo Sgaravatto Introduction Grid Services: LHC regional centres need distributed computing Analyze.
Globus Grid Tutorial Part 2: Running Programs Across Multiple Resources.
LDAP (Lightweight Directory Access Protocol)
GraDS MacroGrid Carl Kesselman USC/Information Sciences Institute.
Introduction to Active Directory
Module 1: Introduction to Active Directory
Hussain Ali Department of Computer Engineering KFUPM, Dhahran, Saudi Arabia Active Directory.
The EU DataGrid – Information and Monitoring Services The European DataGrid Project Team
Active Directory. Computers in organizations Computers are linked together for communication and sharing of resources There is always a need to administer.
Grid Information Services The Globus Project Argonne National Laboratory USC Information Sciences Instutute
GIIS Implementation and Requirements F. Semeria INFN European Datagrid Conference Amsterdam, 7 March 2001.
Windows 2003 Architecture, Active Directory & DNS Lecture # 3 Hassan Shuja 02/14/2006.
Directory Services CS5493/7493. Directory Services Directory services represent a technological breakthrough by integrating into a single management tool:
1 Introduction to Active Directory Directory Services Uniquely identify users and resources on a network Provide a single point of network management.
The Globus Toolkit The Globus project was started by Ian Foster and Carl Kesselman from Argonne National Labs and USC respectively. The Globus toolkit.
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
Planning an Active Directory Deployment Lesson 1.
COMP1321 Digital Infrastructure Richard Henson March 2016.
gLite Information System
File System Implementation
Introduction to LDAP Frank A. Kuse.
BDII Performance Tests
Globus —— Toolkits for Grid Computing
gLite Information System
gLite Information System
The Globus Toolkit™: Information Services
EGEE Middleware: gLite Information Systems (IS)
Introduction to Active Directory Directory Services
LDAP LIGHT WEIGHT DIRECTORY ACCESS PROTOCOL
Presentation transcript:

Globus Grid Tutorial Part 3: Information Services

Goals of this Tutorial l Learn how to use the Globus Metacomputing Directory Service to locate and determine characteristics of resources l Locate resources u Where are resources with required architecture, installed software, available capacity, network bandwidth, etc.? l Determine resource characteristics u What are the physical characteristics, connectivity, capabilities of a resource?

The Need for Information l System information is critical to operation of the grid and construction of applications u How does an application determine what resources are available? u What is the “state” of the computational grid? u How can we optimize an application based on configuration of the underlying system? l We need a general information infrastructure to answer these questions

Using Information for Resource Brokering “10 GFlops, EOS data, 20 Mb/sec -- for 20 mins” Metacomputing Directory Service GRAM Resource Broker Info service: location + selection Globus Resource Allocation Managers GRAM Fork LSF EASYLL Condor etc. “What computers?” “What speed?” “When available?” “50 processors + storage from 10:20 to 10:40 pm” “20 Mb/sec”

Examples of Useful Information l Characteristics of a compute resource u IP address, software available, system administrator, networks connected to, OS version, load l Characteristics of a network u Bandwidth and latency, protocols, logical topology l Characteristics of the Globus infrastructure u Hosts, resource managers

Information Infrastructure l Provide access to static and dynamic information regarding system components l A basis for configuration and adaptation in heterogeneous, dynamic environments l Requirements and characteristics u Uniform, flexible access to information u Scalable, efficient access to dynamic data u Access to multiple information sources u Decentralized maintenance

The Globus Metacomputing Directory Service l Store information in a distributed directory u Directory stored in collection of servers l Directory can be updated by u Globus system u Other information providers and tools u Applications (i.e., users) l Information dynamically available to u Tools u Applications

Directory Service Functions l White Pages u Look up u Look up the IP number, amount of memory, and so forth, associated with a particular machine l Yellow Pages u Find u Find all the computers of a particular class or with a particular property l Tuned for high-volume lookup or search l Temporary inconsistencies are considered okay

The Metacomputing Directory Service l Standard interface and protocol u Lightweight Directory Access Protocol (LDAP) u Add gateways and pragmas l Globus specific data model u Host-centric representation l Data discovery & update SNMP MDS Client Library NIS NWS LDAP LDAP API & represent. Middleware Data model … Application

MDS Components l Standard LDAP server u Netscape Directory Server v4 l Tools for populating & maintaining MDS u Integrated with Globus server release, not of concern to most Globus users u Discover static info, update dynamic info l APIs for accessing & updating MDS contents u C, Java, PERL (LDAP API, JNDI) l Various tools for manipulating MDS contents u Command line tools, Shell scripts & GUIs

LDAP Directory Service l Lightweight Directory Access Protocol u Stripped down version of X.500 DAP protocol u Supports distributed storage/access (referrals) u Supports replication u Becoming de facto standard l Defines: u Network protocol for accessing directory contents u Information model defining form of information u Namespace defining how information is referenced and organized

Directory Structure l Directory contents u What information is stored in directory u Group related information into entries l Directory organization u Objects organized into tree structure u Position of object in tree uniquely names entry

Entries and Object Classes l Directory entry consists of related set of attributes and values l Entries are typed by their Object Class l Object class specifications define u Required and optional attributes u Attribute types u Single inheritance on object classes

Sample Object Classes l Compute Resources u Operating System u Memory Hierarchy u Health and Status l Network Interfaces u IP address u Interface types l Performance Data u Schedule Jobs u CPU Loads u Network Traffic l Resource Managers u Contact strings u Scheduled jobs u Free nodes l Software u Configuration u Version Control u Contact information l Organizations l People

Object Class Specification GlobusHost OBJECT CLASS SUBCLASS OF GlobusPhysicalResource RDN = hn (hostName) CHILD OF { organization } MUST CONTAIN { type:: cis, vendor:: cis, model:: cis, ostype:: cis, osversion:: cis } MAY CONTAIN { networkNode :: dn, totalMemory :: cis, totalSwap :: cis,... } GlobusPhysicalResource OBJECT CLASS SUBCLASS OF GlobusTop RDN = rn (resourceName) MUST CONTAIN { imageObject :: dn } MAY CONTAIN { manager:: dn, provider:: dn, technician:: dn, description:: cis, documentation:: cis }

The Directory Information Tree l Directory entries organized into tree u Called Directory Information Tree (DIT) u Subtrees can be distributed or replicated l Position in tree uniquely names entry l Each object is uniquely determined by its distinguished name (DN) u List of unique attribute names and values along path from root of DIT to object, e.g.:

MDS Data Model Carl Steve Switch Ethernet Ian Gregor Steve Warren sunny hot IBM SP dark cold LAN WAN USC/ISI ANL/MCS c=US o=globus o=USCo=ANL ou=MCSou=ISI nn=WAN cn=Ian cn=Gregor cn=Warren cn=Steve nn=SP-switch nn=SP-ether nn=MCS-lan hn=sp1.mcs.anl.gov hn=spN.mcs.anl.gov hn=cold.mcs… hn=dark.mcs… cn=Carl cn=Steve … … … … Physical Structure Directory Information Tree <hn= dark.mcs.anl.gov, ou= MCS, o = Argonne National Laboratory, o = Globus, c = US> Distinguished Name

MDS Tools l Web-based browsers and displays u MDS Object Class Browser u MDS Explorer l Various APIs and search tools l Translators from “Globus Object Definition Language” u Commented LDIF u LDAP schema definition language u HTML

MDS Object Class Browser

MDS Access/Update Commands l LDAP defines a set of standard commands ldapsearch, ldapmodify, ldapdelete, etc. l We also define MDS-specific commands u grid-info-search, grid-info-create, grid-info- update, grid-info-remove u Routines to ensure data consistency and to insert metadata l APIs are defined for C, Java, etc. ldap_search_s, ldap_modify_s, ….

Searching an LDAP Database grid-info-search [options] filter [attributes] l Default grid-info-search l Default grid-info-search options -h mds.globus.orgMDS server -p 389 MDS port -b “o=Globus, c=US” search start point -T 30 LDAP query timeout -s sub scope = subtree alternatives: base : lookup this entry one: lookup immediate children

grid-info-search: “Filter” l Filters allow selection of object based on relational operators (=, ~=, =) u grid-info-search “cputype=*” l Compound filters can be construct with Boolean operations: (&, |, !) u grid-info-search “(&(cputype=*)(cpuload1<=1.0))” u grid-info-search “(&(hn~=sdsc.edu)(latency<=10))” l Hints: u white space is significant u use -L for LDIF format required

Example 1: grid-info-search “(mn~=sdsc.edu)” cn=sp097.sdsc.edu-loadleveler, ou=SDSC, o=NPACI, o=Globus, c=US objectclass=GlobusResourceManager cn=sp097.sdsc.edu-loadleveler mn=sp097.sdsc.edu-loadleveler hn=sp097.sdsc.edu contact=sp097.sdsc.edu:754:/C=US/O=Globus/O=NPACI/OU=SDSC/ \ CN=sp097.sdsc.edu-loadleveler apiversion=0.1 apitype=loadleveler managedresources=hn=sp097.sdsc.edu, ou=SDSC, o=NPACI, \ o=Globus, c=US gramversion=1.53 gramversiondate=1998/06/1921:17:23 gramsecurity=ssleay freenodes=49 totalnodes=117 lastupdate=Sat Jun 27 18:23:34 GMT 1998 scheduledjob=none

Example 2: grid-info-search -L “(sw=Globus)” dn: sw=Globus, hn=host.domain.edu, o=My Organization, o=Globus, c=US sw: Globus objectclass: GlobusSoftware releasemajor: 1 releaseminor: 1 releasepatch: 0 configuration: --prefix=/cpc/globus/service/sun4-sparc2 \ --with-ssl-path=/cpc/ssl/sun4-sparc2 configuration: --prefix=/cpc/globus/tools/sun4-sparc2 \ --with-ssl-path=/cpc/ssl/sun4-sparc2 installprefix: /cpc/globus/ serviceprefix: /cpc/globus/service toolsprefix: /cpc/globus/tools deployprefix: /opt/globus/ userid: globus objectname: sw=Globus, hn=host.domain.edu, o=My Organization, \ o=Globus, c=US lastupdate: Wed Jan 20, 06:06:13 GMT 1999

grid-info-search: “Attributes” l Projections on the data objects are performed by supplying a list of attributes l Retrieve the DN for all objects in the MDS: % grid-info-search -L “(objectclass=*)” dn dn: o=Globus, c=US dn: o=University of Southern California, o=Globus, c=US dn: ou=MCS, o=Argonne National Laboratory, o=Globus, c=US dn: o=NASA Ames, o=Globus, c=US dn: ou=SDSC, o=NPACI, o=Globus, c=US

Multiple Attribute Selection l % grid-info-search -L “(objectclass=*)” dn hn u Returns the distinguished name (dn) and hostname (hn) of all objects u Objects without hn fields are still listed u DNs are always listed dn: o=CalTech, o=Globus, c=US dn: hn=neptune.cacr.caltech.edu, o=CalTech, o=Globus, c=US hn: neptune.isi.edu dn: ou=SDSC, o=NPACI, o=Globus, c=US dn: o=University of Southern California, o=Globus, c=US

Efficient Lookups l Naïve searches retrieve lots of information % grid-info-search “(objectclass=*)” | grep contact l Whenever possible, reduce search domain u Specify a search base (-b) % grid-info-search -b “o=NASA Ames, o=Globus, C=US” u Specify the scope of the search (-s) options: base, one, and sub l Narrow the amount of objects selected, i.e., use specialized filters l Specify which attributes you want

Authentication to MDS l Authentication is required to perform certain operations (e.g., write operations) l Each site has a Directory Manager u cn=Directory Manager, o=Organization, c=US l Users registered with the MDS have a DN u cn=Jane Doe, o=Organization, c=US % grid-info-search -D “cn=Jane Doe, o=Organization, c=US” \ -w

Updating MDS Entries l To update an existing database entry: grid-info-modify -D "cn=Directory Manager, o=Globus, c=US” \ -w -f sample.ldif dn: hn=tuva.mcs.anl.gov, ou=MCS, o=Argonne National Laboratory, o=Globus, c=US cpuload1: 3.11 cpuload5: 2.64 cpuload15: 2.57 l Metadata is inserted by grid-info-update grid-info-update -D "cn=Directory Manager, o=Globus, c=US” \ -w -f sample.cldif

Example: Discovering CPU Load l Retrieve CPU load fields of compute resources grid-info-search -L “(objectclass=GlobusComputeResource)” \ dn cpuload1 cpuload5 cpuload15 dn: hn=lemon.mcs.anl.gov, ou=MCS, o=Argonne National Laboratory, o=Globus, c=US cpuload1: 0.48 cpuload5: 0.20 cpuload15: 0.03 dn: hn=tuva.mcs.anl.gov, ou=MCS, o=Argonne National Laboratory, o=Globus, c=US cpuload1: 3.11 cpuload5: 2.64 cpuload15: 2.57

Exercise 3 Extended Exercises l Explore the MDS via u MDS object code Browser u MDS Navigator u Globus View l Write a set of MDS/LDAP queries % grid-info-search “hn~=isi.edu”

MDS Search Exercises 1. List all hosts that have a “lsf” jobmanager type. 2. List all hosts that have a CPU load greater than List all hosts with 16 or more CPUs. 4. Determine the current versions of Globus installed at Argonne. 5. Determine the deployment directory on flash.isi.edu. 6. Determine the bandwidth between pitcairn.mcs.anl.gov and bolas.isi.edu.

MDS Search Answers (1) 1. List all hosts that have a “lsf” gatekeeper. grid-info-search “apitype=lsf” hostname 2. List all hosts that have a CPU load greater than 5. grid-info-search “cpuload1>=5” hostname 3. List all hosts with 16 or more CPUs. grid-info-search “cpucount>=16” hostname 4. Determine the current versions of Globus installed at Argonne. grid-info-search \ -b ‘o=Argonne National Laboratory, o=Globus, c=US’ \ ‘sw=Globus’ releasemajor releaseminor releasepatch

MDS Search Answers (2) 5. Determine the deployment directory on flash.isi.edu. grid-info-search \ ‘(&(objectclass=*ResourceManager)(hn=flash.isi.edu))’ \ deploydir 6. Determine the bandwidth between pitcairn.mcs.anl.gov and bolas.isi.edu. grid-info-search \ “(|(&(sourcehostname=pitcairn.mcs.anl.gov) \ (destinationhostname=bolas.isi.edu)) \ (&(sourcehostname=bolas.isi.edu) \ (destinationhostname=pitcairn.mcs.anl.gov)))” bandwidth

Summary l MDS provides the information needed to perform dynamic resource discovery and configuration u Critical component of resource brokers l MDS is base on existing directory service standards (LDAPv3)

Changes from 1.0 to 1.1 l Tools are renamed globus-mds-{search,add,delete,modify} became grid-info-{search,add,delete,modify} l Configurable LDAP search timeout (-T)