MDS 2.4 Test Suite

This document presents the following:

  • A summary of test procedure steps that can be used to verify proper MDS 2.4 operation.
  • A step-by-step description of the test procedures, including script and command use and resulting output.
  • Additional information on test functionality and on installation and configuration of MDS 2.4.

Test Procedure Summary

The test procedure describes the following types of testing for MDS 2.4:

  • Server operation: 
    • Is the server up and running and responding to queries?
  • Accuracy of Data:
    • Is MDS returning accurate data?
    • For static data (e.g., number of processors), the accuracy of the data returned will be obvious.
    • For dynamic data (e.g., amount of available memory), there may not be an exact correct answer, but the data should be reasonable, and within an obvious range.
  • Load testing:
    • How does the server react to many queries over an extended period of time?
  • Concurrency testing:
    • How does the server react to many simultaneous queries over an extended period of time?

A basic test and a recurring query test are available to verify the operation of MDS 2.4.  The test procedure uses the following eight steps:

  1. Install MDS.

  2. Set up GRIS providers for the test environment.

  3. Set up MDS for authenticated access.

  4. Start MDS.

  5. Run the basic test script.

  6. View and evaluate the basic test script output.

  7. Run the recurring query script.

  8. Evaluate the results of executing the recurring query script.

These steps are described in detail in the following sections.

1.  Install MDS.

MDS 2.4 should be downloaded and installed as described in MDS 2.4 Installation and Configuration.

Pointers to additional documentation on the installation, configuration, and administration of MDS 2.4 can be found in the Additional Information section later in this document.

 

2.  Set up GRIS providers for the test environment.

For this test suite, it is recommended that you use the default MDS configuration described below.  Testing done in this configuration is only to verify the basic operation of MDS.  If you want to design and test more complex directory architecture, you need a hierarchical GIIS, as described in the Creating a Hierarchical GIIS page.

Default Configuration

The installation and setup of MDS by default registers one GRIS to one GIIS in one slapd server on port 2135.  The default MDS installation creates the following two configuration files:

${GLOBUS_LOCATION}/etc/grid-info-slapd.conf
${GLOBUS_LOCATION}/etc/grid-info-resource-register.conf

The contents of these files are as follows:

${GLOBUS_LOCATION}/etc/grid-info-slapd.conf

database:    gris
suffix:      mds-vo-name=local, o=grid

database:    giis
suffix:      mds-vo-name=site, o=grid

${GLOBUS_LOCATION}/etc/grid-info-resource-register.conf

dn:          mds-vo-op-name=register,mds-vo-name=site, o=grid
reghn:       hostname
regport:     2135
hn:          hostname
port:        2135
rootdn:      mds-vo-name=local, o=grid

In the grid-info-resource-register.conf file above, note that the value of hostname must be the same for both the reghn: and hn: parameters.

Testing on Existing Core Platforms

MDS 2.4 includes core GRIS provider probes for Linux, Solaris, Irix, AIX, and TRu64.  For these platforms, testing should be done using the core providers to check for accuracy of data.  Use the default configuration described above.

Testing on Other Platforms

For platforms other than Linux, Solaris, Irix, AIX, and Tru64, there are four GRIS provider probes designed specifically for testing MDS on platforms for which platform-specific core GRIS providers do not yet exist.  This allows for basic functionality testing of MDS on any Unix-based platform. These non-platform-specific provider probes are: grid-info-cpu-none, grid-info-mem-none, grid-info-net-none, and grid-info-fs-none.

To set up MDS for testing on a platform without platform-specific core providers, edit the grid-info-resource-ldif.conf file located in the GLOBUS_LOCATION/etc directory.  Using the example in Appendix A, MDS Testing Without Platform-Specific Core GRIS Providers, change the  dn:, path:, and args: parameters for your particular installation.

3.  Set up MDS for authenticated access.

To be able to perform authenticated (security-enabled) queries, you need to set up MDS as follows:

  • Set the environment.

    Set GLOBUS_LOCATION to the location of your Toolkit installation.  Then source your environment corresponding to the type of shell you are using.
     

  • Obtain necessary certificates.

    You need a user certificate and the server requires an LDAP server certificate.  You obtain these certificates with the grid-cert-request command.

    To obtain a user certificate, enter:

    grid-cert-request

    The user certificate will reside in $HOME/.globus/usercert.pem.

    To obtain an LDAP server certificate, enter grid-cert-request in the following form:

    grid-cert-request -service ldap -host my.host.fqdn

    where -service ldap specifies that certificate be created for the LDAP server, and -host my.host.fqdn specifies the fully qualified domain name of the host that will run the LDAP server.  The server certificate will reside in /etc/grid-security/ldap/ldapcert.pem.
     

  • Obtain a proxy for authenticated access.

    You obtain a proxy with the grid-proxy-init command.
     

  • Start MDS and verify authenticated access.

    Start MDS as described in Step 4 below, then enter the following security-enabled query to output the details of all objects on the GRIS:

    grid-info-search -b "mds-vo-name=local, o=grid"

Refer to the MDS 2.4 User’s Guide (the MDS Security Setup Procedures section of Chapter 5, MDS Security Configuration) for more details on the above procedures.  Refer to the Globus Toolkit 2.4 Installation Instructions for more details on obtaining a user certificate.

4.  Start MDS.

Start MDS via the following command:

${GLOBUS_LOCATION}/sbin/globus-mds start

Note that for backward compatibility with MDS 2.1, the SXXgris start command continues to work in MDS 2.4.

5.  Run the basic test script.

The basic test script is used to verify that MDS is running correctly and that both the local GRIS and GIIS respond properly to queries.  The script is called "mds-self-test".  It performs four queries using the grid-info-search command.

The queries are as described below.

  • Two anonymous (anonymous flag set; without SASL) queries, as follows:

        grid-info-search -x -b "mds-vo-name=local, o=grid"
     grid-info-search -x -b "mds-vo-name=site, o=grid"

The first command above tests the GRIS; the second command tests the GIIS.  (The -x argument in the above commands turns on anonymous binding.)

  • Two security-enabled (with SASL) queries, as follows:

        grid-info-search -b "mds-vo-name=local, o=grid"
        grid-info-search -b "mds-vo-name=site, o=grid"

The first command above tests the GRIS; the second command tests the GIIS.

6.  View and evaluate the basic test script output.

In this example, we are testing the local GRIS and then the local GIIS for accuracy of data.

Testing the Local GRIS

Enter the grid-info-search command as follows to generate a local GRIS query of all objects:

grid-info-search -x -b "mds-vo-name=local, o=grid"

The output from this command appears in Appendix B, Basic Test Script Output.

The output in Appendix B shows values returned from all valid GRIS objects based on the current schema.  For static data such as CPU and processor types, the accuracy of the data returned will be obvious.  For dynamic data such as virtual memory and file system space, the accuracy of the data returned should be within what appears to be a reasonable order of magnitude.

Testing the Local GIIS  

Enter the grid-info-search command as follows to generate a local GIIS query of all GRIS's registered to the local GIIS:

grid-info-search -x -b "mds-vo-name=site, o=grid"

By default, the local GRIS instance is registered to the local GIIS instance.  However, if you specify additional registration targets for the local GRIS and/or GIIS in the grid-info-resource-register.conf file and want to test that registration is functioning correctly at the target site, issue the following grid-info-search command:

grid-info-search -x -b -h [hostname] -p [port] "mds-vo-name=site, o=grid"

In this case, set the hostname and port arguments to the match the registration target's hostname and port specified in the grid-info-resource-register.conf file.

The output from the above command shows values returned from all valid GIIS objects based on the current schema.  For the default local setup, the contents of the local GRIS data cache is returned.  In that case, the output is essentially the same as that shown in Appendix B, with the differences shown below.

The beginning of the output shows:

GIIS Data

grid-info-search -x -b "mds-vo-name=site,o=grid" 
version: 2

# dc-user.isi.edu, site, Grid

The end of the output shows:

# site, Grid
dn: Mds-Vo-name=site, o=Grid
objectClass: GlobusStub

7.  Run the recurring query script.

The recurring query script can be used to verify MDS operation with multiple queries, for both load testing and concurrency testing.

Load Testing

An additional test script called "mds-load-test" is available.  This script can be used to execute an LDAP query multiple times. 

Run the mds-load-test script with the following command:

mds-load-test [-batches N] [-queries M] [-- search options...]

where:

-batches N -queries M

Means that the client binds N times to the server and issues M queries during that bound session.

This script is sequential, and you are expected to run multiple instances of it if you want concurrent query load.  See Concurrency Testing below.

For example:

mds-load-test -batches 2 -queries 3 -- -x -h `hostname` -p 2155 -b "mds-vo-name=local, o=grid"

The above command executes an ldapsearch against the local GRIS.  It binds to the server twice and issues three queries per bind, for a total of six instances: two times for a total of three iterations, resulting in a total of six queries being executed.

Concurrency Testing

The following is a script to launch mds-load-test in separate shells simultaneously.  This script causes mds-load-test to issue the same all-objects (*) query 1000 times in one LDAP bind, then repeat this 5000 times, doing so in three concurrently executing subshells.

# /bin/sh

sh ./mds-load-test -batches 5000 -queries 1000 -- -x -p 2135 -b "mds-vo-name=site,o=grid"
sh ./mds-load-test -batches 5000 -queries 1000 -- -x -p 2135 -b

 

8.  Evaluate the results of executing the recurring query script.

The recurring query script is provided as a convenience to enable load and concurrency testing of MDS with a large number of queries.  The output generated by the mds-load-test script is similar to that produced by the basic test script described above, though the output may be quite large if thousands of queries are being run.  It is not necessary to log and review or spot check this output for data accuracy.  The recommended way to determine data accuracy is to separately run the basic test script while load and concurrency testing is going on, and then review the results. 

Additional Information

This section describes the syntax for the grid-info-search command and additional documentation for MDS 2.4.

Syntax for grid-info-search

grid-info-search [options]

where options are as follows:

-config file
Specifies a different configuration file to obtain MDS defaults.
Note that this option overrides the variables set in the user’s environment and previously listed command line options.

-mdshost host (-h)
Is the host name on which the MDS server is running.  The default is $GRID_INFO_HOST.

-mdsport port (-p)
Is the port number on which the MDS server is running.  The default is port $GRID_INFO_PORT.

-anonymous (-x)
Uses anonymous binding instead of GSSAPI.

-mdsbasedn branch-point (-b)
Is the base location in DIT from which to start the search.  The default is "${GRID_INFO_BASEDN}".

-s scope
Specifies the scope of the search.  scope can be base (base dn level), one (base dn level plus one level down) or sub (all from base dn level and down).

giisregistrationstatus
Specifies that the status of machines registered to a GIIS or from which a GIIS is getting data be returned from the search.  This option requires the –b and –s base options on the command for querying from the default server (as defined in the grid-info.conf file).  The –h and –p options are required for querying from other servers.

"attribute"
Specifies a single attribute to be returned from the search, such as MdsCpu.

"filter"
Sets an attribute relationship to a value for the search:
"(attribute=value)"
"(attribute>=value)"
"(attribute<=value)"
"(attribute~=value)"

"(attribute=*)"    Searches for the presence of an item.
"(attribute=*a)"   Searches for a substring item.

-mdstimeout seconds (-T)
Is the amount of time (in seconds) one should allow to wait on an MDS request.  The default is $GRID_INFO_TIMEOUT.

Additional MDS 2.4 Documentation

See the following documents for specific information on the installation and configuration of MDS 2.4:

Note that MDS 2.4 Installation and Configuration includes a description of a basic test query to a GRIS and GIIS.

See the MDS 2.4 User's Guide for details on querying MDS with the grid-info-search command.

The appendixes below are provided to show the following example material to further illustrate the test procedures:
  • Configuration file content for testing with non-platform-specific core GRIS providers.
  • Sample basic test script output.

 

Appendix A.  MDS Testing Without Platform-Specific Core GRIS Providers

There are four GRIS provider probes designed specifically for testing MDS on platforms for which platform-specific core GRIS providers do not yet exist.  This allows for basic functionality testing of MDS on any Unix-based platform.  These non-platform-specific provider probes are: grid-info-cpu-none, grid-info-mem-none, grid-info-net-none, and grid-info-fs-none.

To set up MDS for testing on a platform without platform-specific core providers, edit the grid-info-resource-ldif.conf file located in the GLOBUS_LOCATION/etc directory.  Using the example below, change the  dn:, path:, and args: parameters for your particular installation.

# generate CPU inventory (hidden cache) every 12 hours
dn: Mds-Device-Group-name=processors, Mds-Host-hn=hostname.isi.edu, Mds-Vo-name=local, o=grid
objectclass: GlobusTop
objectclass: GlobusActiveObject
objectclass: GlobusActiveSearch
type: exec
path: /scratch/globus/globus-install/libexec
base: grid-info-cpu-none
args: -noobjs
cachetime: 43200
timelimit: 20
sizelimit: 1
# generate memory info every minute
dn: Mds-Device-Group-name=memory, Mds-Host-hn=hostname.isi.edu, Mds-Vo-name=local, o=grid
objectclass: GlobusTop
objectclass: GlobusActiveObject
objectclass: GlobusActiveSearch
type: exec
path: /scratch/globus/globus-install/libexec
base: grid-info-mem-none
args: -devclassobj -devobjs -dn Mds-Host-hn=hostname.isi.edu,Mds-Vo-name=local,o=grid -validto-secs 60 -k\
eepto-secs 60
cachetime: 60
timelimit: 10
sizelimit: 3 
 
# generate network info every 15 minutes
dn: Mds-Device-Group-name=networks, Mds-Host-hn=hostname.isi.edu, Mds-Vo-name=local, o=grid
objectclass: GlobusTop
objectclass: GlobusActiveObject
objectclass: GlobusActiveSearch
type: exec
path: /scratch/globus/globus-install/libexec
base: grid-info-net-none
args: -devclassobj -devobjs -dn Mds-Host-hn=hostname.isi.edu,Mds-Vo-name=local,o=grid -validto-secs 900 -\
keepto-secs 900
cachetime: 900
timelimit: 20
sizelimit: 20
# generate GRIS info every 12 hours
dn: Mds-Software-deployment=MDS GRIS, Mds-Host-hn=hostname.isi.edu, Mds-Vo-name=local, o=grid
objectclass: GlobusTop
objectclass: GlobusActiveObject
objectclass: GlobusActiveSearch
type: exec
path: /scratch/globus/globus-install/libexec
base: grid-info-net-none
args:
cachetime: 43200
timelimit: 20
sizelimit: 1

Appendix B.  Basic Test Script Output

Here is example output from a local GRIS query of all objects:

GRIS data

grid-info-search -x -b "mds-vo-name=local,o=grid"

version: 2

#
# filter: (objectclass=*)
# requesting: ALL
#

# dc-user.isi.edu, local, grid
dn: Mds-Host-hn=dc-user.isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsComputer
objectClass: MdsComputerTotal
objectClass: MdsCpu
objectClass: MdsCpuCache
objectClass: MdsCpuFree
objectClass: MdsCpuSmp
objectClass: MdsCpuTotal
objectClass: MdsCpuTotalFree
objectClass: MdsFsTotal
objectClass: MdsHost
objectClass: MdsMemoryRamTotal
objectClass: MdsMemoryVmTotal
objectClass: MdsNet
objectClass: MdsNetTotal
objectClass: MdsOs
Mds-Computer-isa: IA32
Mds-Computer-platform: i686
Mds-Computer-Total-nodeCount: 1
Mds-Cpu-Cache-l2kB: 256
Mds-Cpu-features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmo
 v pat pse36 mmx fxsr sse
Mds-Cpu-Free-15minX100: 200
Mds-Cpu-Free-1minX100: 200
Mds-Cpu-Free-5minX100: 200
Mds-Cpu-model: Pentium III (Coppermine)
Mds-Cpu-Smp-size: 2
Mds-Cpu-speedMHz: 997
Mds-Cpu-Total-count: 2
Mds-Cpu-Total-Free-15minX100: 200
Mds-Cpu-Total-Free-1minX100: 200
Mds-Cpu-Total-Free-5minX100: 200
Mds-Cpu-vendor: GenuineIntel
Mds-Cpu-version: 6.8.6
Mds-Fs-freeMB: 13602
Mds-Fs-freeMB: 16
Mds-Fs-freeMB: 22293
Mds-Fs-sizeMB: 15785
Mds-Fs-sizeMB: 26
Mds-Fs-sizeMB: 52071
Mds-Fs-Total-count: 3
Mds-Fs-Total-freeMB: 35911
Mds-Fs-Total-sizeMB: 67882
Mds-Host-hn: dc-user.isi.edu
Mds-keepto: 200110122238.40Z
Mds-Memory-Ram-freeMB: 399
Mds-Memory-Ram-sizeMB: 499
Mds-Memory-Ram-Total-freeMB: 399
Mds-Memory-Ram-Total-sizeMB: 499
Mds-Memory-Vm-freeMB: 1533
Mds-Memory-Vm-sizeMB: 1537
Mds-Memory-Vm-Total-freeMB: 1533
Mds-Memory-Vm-Total-sizeMB: 1537
Mds-Net-addr: 127.0.0.1
Mds-Net-addr: 128.9.64.178
Mds-Net-name: eth0
Mds-Net-name: lo
Mds-Net-netaddr: 127.0.0.0/8
Mds-Net-netaddr: 128.9.64.0/20
Mds-Net-Total-count: 2
Mds-Os-name: Linux
Mds-Os-release: 2.4.2-SGI_XFS_1.0smp
Mds-validfrom: 200110122238.40Z
Mds-validto: 200110122238.40Z

# processors, dc-user.isi.edu, local, grid
dn: Mds-Device-Group-name=processors, Mds-Host-hn=dc-user.isi.edu,Mds-Vo-name=
 local,o=grid
objectClass: MdsCpu
objectClass: MdsCpuSmp
objectClass: MdsCpuTotal
objectClass: MdsCpuCache
objectClass: MdsCpuFree
objectClass: MdsCpuTotalFree
objectClass: MdsDeviceGroup
Mds-Device-Group-name: processors
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z
Mds-Cpu-Cache-l2kB: 256
Mds-Cpu-features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmo
 v pat pse36 mmx fxsr sse
Mds-Cpu-Free-15minX100: 199
Mds-Cpu-Free-1minX100: 198
Mds-Cpu-Free-5minX100: 198
Mds-Cpu-model: Pentium III (Coppermine)
Mds-Cpu-Smp-size: 2
Mds-Cpu-speedMHz: 997
Mds-Cpu-Total-count: 2
Mds-Cpu-Total-Free-15minX100: 199
Mds-Cpu-Total-Free-1minX100: 198
Mds-Cpu-Total-Free-5minX100: 198
Mds-Cpu-vendor: GenuineIntel
Mds-Cpu-version: 6.8.6

# cpu 0, processors, dc-user.isi.edu, local, grid
dn: Mds-device-name=cpu 0, Mds-Device-Group-name=processors, Mds-Host-hn=dc-us
 er.isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsCpu
objectClass: MdsCpuCache
Mds-Device-name: cpu 0
Mds-Cpu-vendor: GenuineIntel
Mds-Cpu-model: Pentium III (Coppermine)
Mds-Cpu-version: 6.8.6
Mds-Cpu-features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmo
 v pat pse36 mmx fxsr sse
Mds-Cpu-speedMHz: 997
Mds-Cpu-Cache-l2kB: 256
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z

# cpu 1, processors, dc-user.isi.edu, local, grid
dn: Mds-device-name=cpu 1, Mds-Device-Group-name=processors, Mds-Host-hn=dc-us
 er.isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsCpu
objectClass: MdsCpuCache
Mds-Device-name: cpu 1
Mds-Cpu-vendor: GenuineIntel
Mds-Cpu-model: Pentium III (Coppermine)
Mds-Cpu-version: 6.8.6
Mds-Cpu-features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmo
 v pat pse36 mmx fxsr sse
Mds-Cpu-speedMHz: 997
Mds-Cpu-Cache-l2kB: 256
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z

# memory, dc-user.isi.edu, local, grid
dn: Mds-Device-Group-name=memory, Mds-Host-hn=dc-user.isi.edu,Mds-Vo-name=loca
 l,o=grid
objectClass: MdsMemoryRamTotal
objectClass: MdsMemoryVmTotal
objectClass: MdsDeviceGroup
Mds-Device-Group-name: memory
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z
Mds-Memory-Ram-Total-sizeMB: 499
Mds-Memory-Ram-Total-freeMB: 399
Mds-Memory-Vm-Total-sizeMB: 1537
Mds-Memory-Vm-Total-freeMB: 1533
Mds-Memory-Ram-sizeMB: 499
Mds-Memory-Ram-freeMB: 399
Mds-Memory-Vm-sizeMB: 1537
Mds-Memory-Vm-freeMB: 1533

# physical memory, memory, dc-user.isi.edu, local, grid
dn: Mds-Device-name=physical memory, Mds-Device-Group-name=memory, Mds-Host-hn
 =dc-user.isi.edu,Mds-Vo-name=local,o=grid
objectClass: Mds
objectClass: MdsDevice
objectClass: MdsMemoryRam
Mds-Device-name: physical memory
Mds-Memory-Ram-sizeMB: 499
Mds-Memory-Ram-freeMB: 399
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z

# virtual memory, memory, dc-user.isi.edu, local, grid
dn: Mds-Device-name=virtual memory, Mds-Device-Group-name=memory, Mds-Host-hn=
 dc-user.isi.edu,Mds-Vo-name=local,o=grid
objectClass: Mds
objectClass: MdsDevice
objectClass: MdsMemoryVm
Mds-Device-name: virtual memory
Mds-Memory-Vm-sizeMB: 1537
Mds-Memory-Vm-freeMB: 1533
Mds-validfrom: 200110122238.41Z
Mds-validto: 200110122239.41Z
Mds-keepto: 200110122239.41Z

# filesystems, dc-user.isi.edu, local, grid
dn: Mds-Device-Group-name=filesystems, Mds-Host-hn=dc-user.isi.edu,Mds-Vo-name
 =local,o=grid
objectClass: MdsFsTotal
objectClass: MdsDeviceGroup
Mds-Device-Group-name: filesystems
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z
Mds-Fs-freeMB: 13602
Mds-Fs-freeMB: 16
Mds-Fs-freeMB: 22293
Mds-Fs-sizeMB: 15785
Mds-Fs-sizeMB: 26
Mds-Fs-sizeMB: 52071
Mds-Fs-Total-count: 3
Mds-Fs-Total-freeMB: 35911
Mds-Fs-Total-sizeMB: 67882

# /, filesystems, dc-user.isi.edu, local, grid
dn: Mds-Device-name=/, Mds-Device-Group-name=filesystems, Mds-Host-hn=dc-user.
 isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsFs
Mds-Device-name: /
Mds-Fs-sizeMB: 15785
Mds-Fs-freeMB: 13602
Mds-Fs-mount: /
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z

# /boot, filesystems, dc-user.isi.edu, local, grid
dn: Mds-Device-name=/boot, Mds-Device-Group-name=filesystems, Mds-Host-hn=dc-u
 ser.isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsFs
Mds-Device-name: /boot
Mds-Fs-sizeMB: 26
Mds-Fs-freeMB: 16
Mds-Fs-mount: /boot
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z

# /scratch, filesystems, dc-user.isi.edu, local, grid
dn: Mds-Device-name=/scratch, Mds-Device-Group-name=filesystems, Mds-Host-hn=d
 c-user.isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsFs
Mds-Device-name: /scratch
Mds-Fs-sizeMB: 52071
Mds-Fs-freeMB: 22293
Mds-Fs-mount: /scratch
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z

# networks, dc-user.isi.edu, local, grid
dn: Mds-Device-Group-name=networks, Mds-Host-hn=dc-user.isi.edu,Mds-Vo-name=lo
 cal,o=grid
objectClass: MdsNetTotal
objectClass: MdsNet
objectClass: MdsDeviceGroup
Mds-Device-Group-name: networks
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z
Mds-Net-addr: 127.0.0.1
Mds-Net-addr: 128.9.64.178
Mds-Net-name: eth0
Mds-Net-name: lo
Mds-Net-netaddr: 127.0.0.0/8
Mds-Net-netaddr: 128.9.64.0/20
Mds-Net-Total-count: 2

# eth0, networks, dc-user.isi.edu, local, grid
dn: Mds-Device-name=eth0, Mds-Device-Group-name=networks, Mds-Host-hn=dc-user.
 isi.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsNet
Mds-Device-name: eth0
Mds-Net-name: eth0
Mds-Net-netaddr: 128.9.64.0/20
Mds-Net-addr: 128.9.64.178
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z

# lo, networks, dc-user.isi.edu, local, grid
dn: Mds-Device-name=lo, Mds-Device-Group-name=networks, Mds-Host-hn=dc-user.is
 i.edu,Mds-Vo-name=local,o=grid
objectClass: MdsDevice
objectClass: MdsNet
Mds-Device-name: lo
Mds-Net-name: lo
Mds-Net-netaddr: 127.0.0.0/8
Mds-Net-addr: 127.0.0.1
Mds-validfrom: 200110122234.25Z
Mds-validto: 200110122249.25Z
Mds-keepto: 200110122249.25Z

# local, Grid
dn: Mds-Vo-name=local,o=Grid
objectClass: GlobusStub

# search result
search: 2
result: 0 Success

# numResponses: 15
# numEntries: 14