This wiki is obsolete, see the NorduGrid web pages for up to date information.

Testing/EMIR

From NorduGrid
Jump to navigationJump to search

EMIR, EMIRD and ARC-CE integration test

############################
#####Server configuration###
############################
#Scheme could either be http or https if running on a secure mode
registry.scheme=https
registry.hostname=zam052v04.zam.kfa-juelich.de
#or
#registry.hostname=testbed-emi5.grid.upjs.sk
registry.port=54321

#########################################
#####EMIR Server Topology configuration##
#########################################
#Indicating whether the registry node is global. If set
#to true then it will ignore the registry.parent.url property
#registry.global.enable=true

#List of URLs for the list of InfoProviders. This URL(s) is/are
#important for the connection into the global network.
#registry.global.providerlist=http://emiregistry.server.url/EMIR.list
#or
#registry.global.providerlist=<url1>/EMIR_A.list, <url2>/EMIR_B.list

#It determines the number of neighbors as a function of the actual
#number of member nodes of the network.
#default value is 2
#registry.global.sparsity=2

#Retry specifies how many times communication to GSR have to 
#fail/timeout to start treating it as unavailable.
#default value is 5
#registry.global.retry=5

#Period for checking the entries in the soft state database and 
#strip the expired entries (but still keep them).
#default value is 12 (hours)
#registry.global.etvalid=12

#Period for checking the entries in the soft state database and 
#remove the expired entries.
#default value is 24 (hours)
#registry.global.etremove=24

#parent dsr configuration
#registry.parent.url=http://localhost:9000

############################
####Service Record Filter###
############################
#This property scans the incoming registration requests and 
#filter out the matched Service records, defined in the input filters
#file
#
#registry.filters.input=conf/inputfilters
#
#Restrict the amount of service records sent to the parent registry node 
#would be defined in the output filters file
#
#registry.filters.output=conf/outputfilters

#General container filters, are defined as comma separated fully qualified class names  
#registry.filters.request=pkg.Class1,pkg.Class2
#
#registry.filters.response=pkg.Class1,pkg.Class2

#Maximum lease duration for the services
# default value is 365, should be defined in days and the minimum value is 1
registry.expiry.maximum=1

#default value, if the incoming registration is missing the expiration
registry.expiry.default=1

############################
####MongoDB configuration###
############################
mongodb.hostname=localhost
mongodb.port=27017
mongodb.dbname=emiregistry
mongodb.colname=services

# Database name should be set by-default to 'registry'
# mongodb.dbname=emiregistry

# Collection name should be set by-default to 'service' 
# mongodb.colname=services

# MongoDB authentication information
#mongodb.username=user
#mongodb.password=pwd

##############################
#### Logging configuration ###
##############################
logger.conf.path=conf/log4j.properties


############################
#####   Security  ##########
############################
#The security will be enabled automatically if "registry.scheme" field is set to "https"

###### Authentication ######
registry.ssl.keystore=certs/demo-server.p12
registry.ssl.keytype=pkcs12
registry.ssl.keypass=*****

registry.ssl.truststore=certs/eugridpma.jks
registry.ssl.truststorepass=*****
registry.ssl.truststoretype=jks

registry.ssl.clientauthentication=true

###### Authorisation #######
#There are two alternatives to authorize the EMIR clients
# I.  Access Control List (ACL)
# II. XACML Policies
#
#Note: Use anyone of the above mechanism by commenting out the respective properties - default mechanism: ACL

# I. Access Control List (ACL)
registry.acl.file=conf/emir.acl

# II. XACML Policies
# Authorisation attribute source configuration
# 
# EMIR maps the identity of the Grid user (e.g. 
# her certificate or distinguished name) to attributes
# (like role).
#
# This property is a space separated list of attribute 
# source names, which are then configured in detail below.
# The named attribute sources are queried in the given order.
#
#registry.security.attributes.order=  FILE

#
# configuration of the 'FILE' attribute source
#
#registry.security.attributes.FILE.class=eu.emi.dsr.aip.FileAttributeSource
# path to the mapfile
#registry.security.attributes.FILE.file=conf/users/testUdb-strict.xml
# how to match entries: strict or regexp
#registry.security.attributes.FILE.matching=strict

# Enable/disable authorisation. Server should running on https with
# valid client and server certificates, see 'Authentication' 
# properties above 
#registry.security.accesscontrol=true

# Name of the xml file containing the User attributes
#registry.security.accesscontrol.config=true
#
# the XACML config file which contains the list of security policy files
#
#registry.security.accesscontrol.pdp.config=conf/xacml2.config

#
# the XACML PDP implementation class
#
#registry.security.accesscontrol.pdp=eu.unicore.uas.pdp.local.LocalHerasafPDP
#registry.security.accesscontrol.pdp=eu.emi.dsr.pdp.local.FlatFilePDP


############################
######### Jetty  ###########
############################
#Web server configuration, should be changed if the expected load is high
jetty.maxIdleTime=30000
jetty.maxIdleTime=10000
jetty.maxThreads=255
jetty.lowThreads=50

Integration tests:

configuration file modifications:
[grid-manager]
...
arex_mount_point="https://testbed-emi3.grid.upjs.sk:443/arex"

[registration/emir]
emirurls="https://zam052v04.zam.kfa-juelich.de:54321, https://localhost:60002"
      • init script:
# Installation
wget https://twiki.cern.ch/twiki/pub/EMI/EMI-2/emi-2-rc3-sl5.repo
sudo cp emi-2-rc3-sl5.repo /etc/yum.repos.d/
sudo yum update
sudo yum install nordugrid-arc-compute-element
#sudo yum install nordugrid-arc-arex    #It is part of the nordugrid-arc-compute-element metapackage.
#sudo yum install nordugrid-arc-aris    #It is part of the nordugrid-arc-compute-element metapackage.

#Configuration
wget http://svn.nordugrid.org/trac/nordugrid/export/24230/doc/trunk/examples/arc_computing_element.conf
sudo cp arc_computing_element.conf /etc/arc.conf

# Start
sudo /etc/init.d/gridftpd start
sudo /etc/init.d/grid-infosys start
sudo /etc/init.d/a-rex start
{"_id":{"$oid":"4f6ae07e84ae2b7f75817e9f"},
 "Service_Name":"ComputingService",
 "Service_Type":"org.nordugrid.execution.arex",
 "Service_Endpoint_URL":"https:\/\/testbed-emi3.grid.upjs.sk:443\/arex",
 "serviceOwner":"CN=ANONYMOUS,O=UNKNOWN,OU=UNKNOWN",
 "Service_CreationTime":{"$date":"2012-03-22T08:19:10.628Z"},
 "updateSince":{"$date":"2012-03-22T08:19:10.628Z"},
 "Service_ExpireOn":{"$date":"2012-03-27T07:19:10.629Z"}
}

or

<Service BaseType="Entity" CreationTime="2012-03-22T09:19:10.628+01:00">
    <ID>4f6ae07e84ae2b7f75817e9f</ID>
    <Name>ComputingService</Name>
    <Extensions/>
    <Type>org.nordugrid.execution.arex</Type>
    <Location><ID>4f6ae07e84ae2b7f75817e9f</ID></Location>
    <Endpoint BaseType="Entity" CreationTime="2012-03-22T09:19:10.628+01:00">
        <ID>4f6ae07e84ae2b7f75817e9f</ID>
        <Name>ComputingService</Name>
        <URL>https://testbed-emi3.grid.upjs.sk:443/arex</URL>
    </Endpoint>
</Service>
      • returned value:
{"_id":{"$oid":"4f855a0de4b054a66a3a35e5"},
 "Service_Name":"ComputingService",
 "Service_Type":"org.nordugrid.execution.arex",
 "Service_Endpoint_URL":"https:\/\/testbed-emi3.grid.upjs.sk:443\/arex",
 "Service_ExpireOn":{"$date":"2012-04-11T18:28:57.000Z"},
 "Service_CreationTime":{"$date":"2012-04-11T11:32:35.000Z"},
 "serviceOwner":"1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE",
 "updateSince":{"$date":"2012-04-11T17:02:52.263Z"}
}

or

<Service BaseType="Entity" CreationTime="2012-04-11T13:32:35.000+02:00">
    <ID>4f855a0de4b054a66a3a35e5</ID>
    <Name>ComputingService</Name>
    <Extensions/>
    <Type>org.nordugrid.execution.arex</Type>
    <Location>
        <ID>4f855a0de4b054a66a3a35e5</ID>
    </Location>
    <Endpoint BaseType="Entity" CreationTime="2012-04-11T13:32:35.000+02:00">
        <ID>4f855a0de4b054a66a3a35e5</ID>
        <Name>ComputingService</Name>
        <URL>https://testbed-emi3.grid.upjs.sk:443/arex</URL>
    </Endpoint>
</Service>

configuration file modifications:
[grid-manager]
...
arex_mount_point="https://testbed-emi3_sl6.grid.upjs.sk:443/arex"


[registration/emir]
emirurls="https://testbed-emi5.grid.upjs.sk:54321, https://localhost:60002"
      • init script:
# Installation
wget https://twiki.cern.ch/twiki/pub/EMI/EMI-2/emi-2-rc4-sl6.repo
sudo cp emi-2-rc4-sl6.repo /etc/yum.repos.d/
sudo yum update
sudo yum install nordugrid-arc-compute-element
#sudo yum install nordugrid-arc-arex    #It is part of the nordugrid-arc-compute-element metapackage.
#sudo yum install nordugrid-arc-aris    #It is part of the nordugrid-arc-compute-element metapackage.

#Configuration
wget http://svn.nordugrid.org/trac/nordugrid/export/24230/doc/trunk/examples/arc_computing_element.conf
sudo cp arc_computing_element.conf /etc/arc.conf

# Start
sudo /etc/init.d/gridftpd start
sudo /etc/init.d/grid-infosys start
sudo /etc/init.d/a-rex start
{"_id":{"$oid":"4f6ae07e84ae2b7f75817e9f"},
 "Service_Name":"ComputingService",
 "Service_Type":"org.nordugrid.execution.arex",
 "Service_Endpoint_URL":"https:\/\/testbed-emi3_sl6.grid.upjs.sk:443\/arex",
 "serviceOwner":"CN=ANONYMOUS,O=UNKNOWN,OU=UNKNOWN",
 "Service_CreationTime":{"$date":"2012-03-22T08:19:10.628Z"},
 "updateSince":{"$date":"2012-03-22T08:19:10.628Z"},
 "Service_ExpireOn":{"$date":"2012-03-27T07:19:10.629Z"}
}

or

<Service BaseType="Entity" CreationTime="2012-03-22T09:19:10.628+01:00">
    <ID>4f6ae07e84ae2b7f75817e9f</ID>
    <Name>ComputingService</Name>
    <Extensions/>
    <Type>org.nordugrid.execution.arex</Type>
    <Location><ID>4f6ae07e84ae2b7f75817e9f</ID></Location>
    <Endpoint BaseType="Entity" CreationTime="2012-03-22T09:19:10.628+01:00">
        <ID>4f6ae07e84ae2b7f75817e9f</ID>
        <Name>ComputingService</Name>
        <URL>https://testbed-emi3_sl6.grid.upjs.sk:443/arex</URL>
    </Endpoint>
</Service>
      • returned value:
{"_id":"$oid":"4f8c0f7deg572fa66a3f8228"},
 "Service_Name":"ComputingService",
 "Service_Type":"org.nordugrid.execution.arex",
 "Service_Endpoint_URL":"https://testbed-emi3_sl6.grid.upjs.sk:443/arex",
 "serviceOwner":"1.2.840.113549.1.9.1=#1613656d69726567697374727940757365722e6575,CN=EMIRegistry-Demo-User,OU=JSC,O=Forschungszentrum Juelich GmbH,L=Juelich,C=DE",
 "Service_CreationTime":{"$date":"2012-04-16T15:40:29.000Z"},
 "updateSince":{"$date":"2012-04-27T06:19:20.119Z"},
 "Service_ExpireOn":{"$date":"2012-04-27T07:45:58.000Z"}
}

or

<Service BaseType="Entity" CreationTime="2012-04-16T15:40:29.000+02:00">
    <ID>4f8c0f7deg572fa66a3f8228</ID>
    <Name>ComputingService</Name>
    <Extensions/>
    <Type>org.nordugrid.execution.arex</Type>
    <Location>
        <ID>4f8c0f7deg572fa66a3f8228/ID>
    </Location>
    <Endpoint BaseType="Entity" CreationTime="2012-04-16T15:40:29.000+02:00">
        <ID>4f8c0f7deg572fa66a3f8228</ID>
        <Name>ComputingService</Name>
        <URL>https://testbed-emi3_sl6.grid.upjs.sk:443/arex</URL>
    </Endpoint>
</Service>

      • result: Passed