Quickstart Guide: GIS, Grid Information Service Gregor von Laszewski (gregor@mcs.anl.gov) Argonne National Laboratory, Argonne, IL 60439, U.S.A. Abstract This quickstart guide is a suggestion for a chapter in the quickstart guide written and edited by NASA. It adresses the very basic features of GIS that are relevant for users that like to query information. 1 Summary of Chapter The GIS is a service that allows to store information about the state of the grid infrastructure. In this quick guide we focus on gathering information from the GIS through queries, and GIS-browsers. 2 Terminology GIS is a service that allows to store information about the state of the grid infrastructure. One of its services is to publish information via LDAP (lightweight directory access protocol). The GIS information service has the ability to function as awhite pages directory and yellow pages directory. Their functionality is best described with a simple example: White Pages: similar to a phone book, retrieve the information associated with a particular name. Such a name is called in LDAP terminology distinguished name. Each entry in the directory has exactly one distinguished name, which is, as one can guess, distinguishable from any other name. Examples for such lookups are the retrieval of an IP number or the amount of memory associated with a particular machine. Yellow Pages: similar to the yellow pages, a list of categorized entities can be returned form the directory. Such categories are defined by, so called, objectclasses. Examples, for such categories are a list of all computers or people. Search Constraints: a powerful extension to the white and yellow page function of the directory is the ability to augment the lookups with sophisticated boolean search filters. We will describe examples demonstrating these modes for selected tools later in this document. Information about the MDS (including an extensive list of objectclasses) can be obtained from http://www.globus.org/mds. 3 Tools Thus it is possible to utilize the a large number of commercial and free tools for retrieving information. As part of the Grid infrastructure, some specialized tools are available that allow to access information from LDAP directories. This tools are grid-info-search, a tool to retrieve information from the command line; CGI-browser, a cgi browser to retrieve information through http queries; Java-Browser, a Java application that allows to browse the directory in graphical form. We will describe each of the tools in the next sections. 3.1 grid-info-search The shell command grid-info-search allows to perform searches on the GIS server based on search filters that conform to LDAP searches as specified in RFC.. . The command line options are: grid-info-search [ options ] [attributes] where some options are -help Displays this message -version Displays the current version number -config file Specifies a different configuration file to obtain MDS defaults. Note that the option overrides the variables set in the users environment and previously listed command line options. -h host The host name on which the MDS server is running (defaults to mds11.globus.org). -p port The port number on which the MDS server is running (defaults to 391). -b branch-point Location in the DIT from which to start the search (defaults to ``o=Globus, c=US''). -T seconds The amount of time (in seconds) one should allow to wait on an GIS request (defaults to 30). -s scope Specify the scope of the search. The possible values of scope are base, one, or sub to specify respectively a base object, one-level, or subtree search. The default is sub. grid-info-search also supports the full set of flags that are defined in the LDAPv3 standard. We refer to the ldapsearch manual page for a full description of all available options. The output format is very simple and can easily be parsed. It is in the following form: Distinguished Name (DN) attributename=value attributename=value attributename=value If one or more entries are found, that meet the search filter constraint, each entry is written to standard output and separated with a single blank line. The returned attributes can be restricted while listing them at the end of the shell command. Search filters are specified in polish notation where & is the boolean and operator and | is the boolean or operator. It is a good practice to restrict the searches to objectclasses of interest in order to minimize the duration it takes for a query to return. As a general rule of thumb: the more precise the query the shorter the response time. Sample Queries. 1. grid-info-search -help lists the options to the grid-info-search command. 2. grid-info-search -b ``o=Argonne National Laboratory, o= Globus, c=US'' ``(objectclass=GlobusComputeResource)'' dn lists the all distinguished names of the compute resources that are stored in the directory under Argonne National Laboratory. 3. grid-info-search -b ``o=Argonne National Laboratory, o= Globus, c=US'' ``(objectclass=GlobusComputeResource)'' lists the distinguished names and all attributes of all compute resources the are stored in the directory under Argonne National Laboratory. 4. grid-info-search -b ``o=Argonne National Laboratory, o= Globus, c=US'' ``(&(objectclass=GlobusComputeResource)(ostype=irix))'' dn lists the distinguished names of all compute resources the are stored in the directory under Argonne National Laboratory and have an attribute ostype with a value equal to irix. 4 CGI Browser The GIS CGI Browser is a Perl script that allows to browse the contents of the GIS through web browsers. The information is returned in html. The browser can be accessed from http://www.globus.org/mds. Nevertheless, the possibility exists to customize the access via options that can be set while specifying the URL. The URL of the browser is http://www-isi.globus.org/cgi/mdslevel.cgi?base:o=Globus,c=US;port:391. Since it is possible to modify the base and the port it is possible to customize the browser accordingly. 5 Java Browser A Java application that allows browsing of arbitrary LDAP directories is available as additional download from http://www.globus.org/mds. Extensive documentation and installation instructions to this browser is included. 6 LDAP in the community Since the GIS uses LDAP, it is possible to use a variety of application interfaces to communicate with the actual LDAP server. This software independence is one of the important features that make LDAP an ideal candidate for a very diverse compute environment as used in the Grid. The application interfaces available to access the MDS directly are for example: sh: shell scripts from the University of Michigan and Netscape. Perl: perldap, ldapperl, Net::LDAPapi Java: Java APIs are available from Netscape and Sun (http://java.sun.com/products/jndi). C: A C API can be found from Netscape and from OpenLdap/University of Michigan References 1. The MDS web page is maintained at http://www.globus.org/mds. 2. A Directory Service for Configuring High-Performance Distributed Computations. S. Fitzgerald, I. Foster, C. Kesselman, G. von Laszewski, W. Smith, S. Tuecke. Proc. 6th IEEE Symp. on High-Performance Distributed Computing, pg. 365-375, 1997. Describes the Metacomputing Directory Service used to maintain information about Globus components. ftp://ftp.globus.org/pub/globus/papers/hpdc97-mds.ps.gz or ftp://ftp.globus.org/pub/globus/papers/hpdc97-mds.pdf