release notes | Book: 1.9.5, 1.9.12 (opt, FHS), 2.11 (FHS), 2.12 (FHS), 2.13 (FHS), 2.14 (FHS), | Wiki | Q&A black_bg
Web: Multi-page, Single page | PDF: A4-size, Letter-size | eBook: epub black_bg

Publishing information from the info-provider

By default BDII obtains fresh information by querying GIP. To allow BDII to obtain the GLUE information, you must tell GIP where to find this information. This is achieved by either copying the above script into the directory /opt/glite/etc/gip/provider/

[root] # cp /opt/d-cache/libexec/infoProvider/info-based-infoProvider.sh \
/opt/glite/etc/gip/provider/

or by symbolically linking the script in there:

[root] # ln -s /opt/d-cache/libexec/infoProvider/info-based-infoProvider.sh
/opt/glite/etc/gip/provider/

If GIP (available in the glite-info-generic RPM package) and BDII are installed, and the BDII daemons are running, then you will see the information appear in BDII after a short delay; by default, this is 60 seconds.

You can verify the information is present with the query:

[root] # ldapsearch -LLL -x -H ldap://<dcache-host>:2170 \
-b o=grid
dn: o=grid
objectClass: organization
o: grid

dn: Mds-Vo-name=local,o=grid
objectClass: Mds
Mds-Vo-name: local

dn: Mds-Vo-name=resource,o=grid
objectClass: Mds
Mds-Vo-name: resource

dn: GlueSEUniqueID=dcache-host.example.org,Mds-Vo-name=resource,o=grid
GlueSEStatus: Production
objectClass: GlueSETop
objectClass: GlueSE
objectClass: GlueKey
objectClass: GlueSchemaVersion
GlueSETotalNearlineSize: 2000
GlueSEArchitecture: tape
GlueSEName: SRM-DEVEL
GlueSchemaVersionMinor: 3
GlueSEUsedNearlineSize: 0
GlueChunkKey: GlueSEUniqueID=dcache-host.example.org
GlueForeignKey: GlueSiteUniqueID=EXAMPLE-SITE
GlueSchemaVersionMajor: 1
GlueSEImplementationName: dCache
GlueSEUniqueID: dcache-host.example.org
GlueSETotalOnlineSize: 4832
GlueSESizeTotal: 4832
GlueSESizeFree: 4832
GlueSEUsedOnlineSize: 0
GlueSEImplementationVersion: 1.9.5-16 (ns=Chimera)

dn: GlueSALocalID=tape-atlas,GlueSEUniqueID=dcache-host.example.org,Mds-Vo-name=reso
 urce,o=grid
GlueSATotalNearlineSize: 1000
objectClass: GlueSATop
objectClass: GlueSA
objectClass: GlueSAAccessControlBase
objectClass: GlueSAState
objectClass: GlueSchemaVersion
objectClass: GlueKey
GlueSAExpirationMode: neverExpire
GlueChunkKey: GlueSEUniqueID=dcache-host.example.org
GlueSAReservedOnlineSize: 0
GlueSACapability: InstalledOnlineCapacity=0
GlueSACapability: InstalledNearlineCapacity=1000
GlueSchemaVersionMinor: 3
GlueSAUsedNearlineSize: 0
GlueSAName: Tapes for ATLAS
GlueSAUsedOnlineSize: 0
GlueSAFreeOnlineSize: 0
GlueSAFreeNearlineSize: 1000
GlueSAReservedNearlineSize: 1000
GlueSchemaVersionMajor: 1
GlueSAAccessControlBaseRule: VO:atlas
GlueSALocalID: tape-atlas

There are likely many further objects defined.  These
objects have been omitted for brevity.

Don’t use localhost

It’s tempting to use localhost as the hostname in the ldapsearch command above. Unfortunately, for some versions of BDII this will not work. Recent versions of BDII bind to the ethernet device (e.g., eth0). Typically, localhost is associated with the loopback device (lo), so the LDAP server part of BDII will not hear the connection request and the query will fail.

You should be able to compare this output with the output from running the info-provider script manually. If the info-provider output includes LDAP objects that are absent in the BDII output then there is a problem somewhere. The BDII log file will likely explain why this object was not accepted; for example, due to a badly formatted attribute.

Unfortunately, the order of the LDAP objects and the order of the attributes within the object (other than the distinguished name, DN, which must be first) are not required to be in any particular order. Because of this one cannot use the diff command to look for changes.