ATP - VO TOPOLOGY FEEDS
INTRODUCTION
The
ATP VO feeds are XML files used by the LHC VOs to define which are the services that they support (from the list of services defined by
GOCDB
and
RSV
). At the same time, these feeds are used to define groups of services from the VO perspective. The groups will be used in the future to query the DB and extract the list of services that correspond to each of them. Groups can be Clouds or Tiers, for instance, or what a VO considers as a Site (a group of services mapped to a specific name).
EXAMPLE OF XML FEED
Check this file as an example of a VO feed:
atp_vo_feed_example.xml
XML ELEMENTS
The different elements defining the XML schema are:
-
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="atp_vo_feed_validator.xsd">
- Marks the beginning of the XML file and the XSD file that defines the XML schema
-
<title>ATLAS VO topology for SAM/Nagios</title>
- Just a title for the VO feed.
-
<description>Groups of services defined by ATLAS VO to be used by the SAM/Nagios monitoring infrastructure</description>
- A description of the VO feed.
-
<feed_responsible name="Wile Coyote" dn="/DC=ch/DC=cern/OU=Org Units/OU=Users/CN=wco/CN=497/CN=Wile E Coyote"/>
- Defines who is the person responsible for the content. The DN (certificate Distinguished Name) is an optional
attribute.
-
<last_update>2010-03-20T15:25:10Z</last_update>
- The complete date plus hours and minutes in W3C format when the information was updated for the last time.
-
<vo>cms</vo>
- The VO name that defines these groups of services.
-
<atp_site name="Australia-ATLAS" infrast="EGEE">
- Defines a real site, as it appears defined in GOCDB for services in the EGEE infrastructure or RSV for
the ones defined in the OSG infrastructure. And for each of these sites we will define the services that
we want to include in one or more VO groups.
-
<service hostname="agh3.atlas.unimelb.edu.au" flavour="SRM" endpoint="srm://agh3.atlas.unimelb.edu.au:8446/srm/managerv2">
- A service is identified by a hostname and a flavour. A flavour is any service type defined in GOCDB or RSV
-
<spacetoken base_path="SFN=/dpm/atlas.unimelb.edu.au/home/atlas/atlasdatadisk/" name="DATADISK"/>
- For SRM services, you can optionally define one or more spacetokens, with attributes 'base_path' and 'name'.
-
<group name="CA" type="ATLAS_Cloud"/>
- Finally, for each service defined, we specify to which groups it belongs. A group is defined by two
attributes: 'name' and 'type'. Under one group 'type' we can define many group 'name's in a parent-child
hierarchy. This can be helpful to query the ATP and retrieve all the groups (services and sites) defined
under one single 'type' attribute. The groups can also be defined outside the <service> element, but
inside the <atp_site> element. This means that all the services defined for that site belong to those groups.
XML SCHEMA DEFINITION (XSD) FILE
You can use the XSD file
atp_vo_feed_schema.xsd to validate the syntax of your XML VO feed before being consumed by the ATP.
VO FEEDS USING LATEST XSD FILE
- These are the new VO feeds supporting the XSD file:
HOW TO VALIDATE AN XML FEED
Using an SLC5 machine, you can use the xmlint command, like in this example:
xmllint --noout --schema ./atp_vo_feed_schema.xsd lhcb_topology_example.xml
Another way using python could be running the following command:
python validate_xml.py
For that you need to have the xsd file (attached to this twiki page) and your xml file in the same directory and specify the name of your xml file inside the validate_xml.py file.
The validate_xml.py file is also attached to this twiki page (but auto-renamed to .txt for security reasons)
Topic revision: r12 - 2011-03-03
- unknown