Tags:
,
view all tags
%TOC% ---+ WMS Test Plan ---++ Unit tests N/A ---++ Deployment tests ---+++ Repository The EMI-1 RC4 repository can be found under: <pre><pre>http://emisoft.web.cern.ch/emisoft/dist/EMI/1/RC4/sl5/x86_64 </pre> </pre> Other repositories: * epel.repo * lcg-CA.repo * sl.repo * sl-security.repo ---+++ Installation test First of all, install the yum-protectbase rpm: <pre>yum install yum-protectbase.noarch </pre> Then proceed with the installation of the CA certificates by issuing: <pre>yum install ca-policy-egi-core</pre> Install the WMS metapackage: <pre>yum install emi-wms</pre> Configure the WMS: <verbatim>/opt/glite/yaim/bin/yaim -c -s site-info.def -n WMS </verbatim> ---+++ Update test N/A ---++ Functionality tests ---+++ Features/Scenarios to be tested ---++++ YAIM-WMS Configuration Testing * Installation and configuration starting from a cleaning machine (i.e. only OS) * Update and configuration from a previous version ---++++ WMS Job Submission/GetOutput Testing Submit a job to the WMS service and when finished retrieve the output. Test job submission with the following type of jobs: Bunch #1: submission of normal jobs. Test 1.1: Test this JDL: [ Executable = "/bin/echo"; Arguments = "Hello"; StdOutput = "out.log"; StdError = "err.log"; InputSandbox = {"Test.sh"}; OutputSandbox = {"out.log", "err.log"}; requirements = RegExp("cream.*", other.GlueCEUniqueID);; AllowZippedISB = false; rank=0; myproxyserver="myproxy.cnaf.infn.it"; RetryCount = 0; ShallowRetryCount = 1; ] Test 1.10 submit a job with an empty file in ISB ---+++++ Normal Job * Test submission of _normal jobs_ with different options and situation [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_submit_sh][Implemented]] * Test the complete cycle with the two types of CEs: lcg and Cream [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_job_cycle_sh][Implemented]] More different jdls can added in the future. ---+++++ Perusal job Job perusal is the ability to view output from a job while it is running. [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_perusal_sh][Implemented]] ---+++++ DAG job Directed Acyclic Graphs (a set of jobs where the input/output/execution of one of more jobs may depend on one or more other jobs). * Try with JDL: <verbatim> [ type = "dag"; DefaultNodeShallowRetryCount = 3; nodes = [ nodeA = [ node_type = "edg-jdl"; file ="jdl/arg.jdl" ; ]; nodeB = [ node_type = "edg-jdl"; file ="jdl/arg.jdl" ; ]; nodeC = [ node_type = "edg-jdl"; file ="jdl/arg.jdl" ; ]; dependencies = { { nodeA, nodeB }, { nodeA, nodeC } } ]; ] </verbatim> * When dag finishes retrieve the output files * Check the final status of the dag (all nodes and parent should be "Cleared") More different jdls can added in the future. ---+++++ Parametric Job Multiple jobs with one parametrized description. [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_job_parametric_sh][Implemented]] ---+++++ Collection Job Multiple jobs with a common description. There are two ways to submit collection: you can create a single jdl with all the jdls of nodes or you can submit all the jdls stored in a directory (bulk submission) * Submit a jdl like this one: <verbatim> [ nodes = { [ file="jdl/arg.jdl"; ], [ executable="/bin/env"; ShallowRetryCount = 0; RetryCount = 0; Stdoutput = "file.out" ; StdError = "file.err" ; OutputSandbox ={ "file.out" ,"file.err"} ; FuzzyRank = true; ], [ NodeName="nodeA"; executable="/bin/ls" ; Stdoutput = "file.out" ; OutputSandbox ={ "file.out"} ; ] }; Type = "Collection" ; requirements = other.GlueCEStateStatus == "Production" ; rank = -other.GlueCEStateEstimatedResponseTime ; ] </verbatim> * When collection finishes retrieve the output files * Check the final status of the collectionall nodes and parent should be "Cleared") * To test bulk submission use option "--collection" of glite-wms-job-submit command. * When collection finishes retrieve the output files * Check the final status of the collection (all nodes and parent should be "Cleared") More different jdls can added in the future. ---+++++ Parallel Job Jobs that can be running in one or more cpus in parallel. * Submit a jdl like this one: <verbatim> [ Executable = "cpi"; CpuNumber = 2; Stdoutput = "cpi.out" ; StdError = "cpi.err" ; OutputSandbox = { "cpi.out" ,"cpi.err"} ; InputSandbox = { "exe/cpi" }; FuzzyRank = true; usertags = [ exe = "cpi" ]; ] </verbatim> * When job finishes retrieve the output files * Check the final status of the job ---++++ Delegation Explicit delegation, automatic delegation ---++++ Brokerinfo ---++++ WMS Job shallow and deep re-submission There two type of resubmission; the first is defined _deep_ occurs when the user's job has stardted running on the WN and then the job itself or the WMS !JobWrapper has failed. The second one is called _shallow_ and occurs when the WMS !JobWrapper has failed before starting the actual user's job. [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_job_resubmit_sh][Implemented]] ---++++ Replanning MaxReplansCount in glite_wms.conf ---++++ WMS Job List-match Testing ---+++++ Without data Test job-list-command and its option [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_list_match_sh][Implemented]] ---+++++ With data * You need to register a file on an SE, then submit a jdl like this one (as !InputData put the lfn(s) registered before): <verbatim> ########################################### # JDL with Data Requirements # ########################################### Executable = "calc-pi.sh"; Arguments = "1000"; StdOutput = "std.out"; StdError = "std.err"; Prologue = "prologue.sh"; InputSandbox = {"calc-pi.sh", "fileA", "fileB","prologue.sh"}; OutputSandbox = {"std.out", "std.err","out-PI.txt","out-e.txt"}; Requirements = true; DataRequirements = { [ DataCatalogType = "DLI"; DataCatalog = "http://lfcserver.cnaf.infn.it:8085"; InputData = {"lfn:/grid/infngrid/cesini/PI_1M.txt","lfn:/grid/infngrid/cesini/e-2M.txt"}; ] }; DataAccessProtocol = "gsiftp";</verbatim> </verbatim> * Then try a list-match, the listed CEs should be the ones "close" to the used SE ---++++ WMS Job Cancel Testing Test the cancellation of these type of jobs (final status should be cleared): ---+++++ Normal job Submit and cancel a normal job [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_cancel_sh][Implementd]] ---+++++ DAG job Submit a dag job and then cancel it (the _parent_) ---+++++ Collection Submit a collection job and then cancel it (the _parent_) ---+++++ Node of a collection Submit a collection job and then some of its nodes ---++++ Others ---+++++ Delegation Testing Test the delegation command and its options [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_delegate_proxy_s][Implementd]] ---+++++ Job-info Testing Test the job-info command and its options [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_info_sh][Implementd]] ---+++++ Logging-info Testing Test the logging-info command and its options [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_logging_info_sh][Implemented]] ---+++++ Job Status Testing Test the job-status commend and its options [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_command_job_status_sh][Implemented]] ---+++++ !Prologue and Epilogue jobs In the jdl you can specify two attributes _prologue_ and _epilogue_ which are scripts that are execute respectively before and after the user's job. [[https://twiki.cnaf.infn.it/twiki/bin/view/EgeeJra1It/WMSWorkPlan#WMS_prologue_epilogue_sh][Implemented]] ---++ Performance tests ---+++ Collection of 1000 nodes Submit a collection of 1000 nodes. ---+++ Stress test This could be an example of stress test * 2880 collections each of 20 jobs * One collection every 60 seconds * Four users * Use LCG-CEs and CREAM-CEs (with different batch systems) * Use automatic-delegation * The job is a "sleep random(672)" * Resubmission is enabled * Enable proxy renewal ---++ Regression tests [[http://wiki.italiangrid.org/twiki/bin/view/WMS/RegressionTest][Complete list of Rfc tests]]
Edit
|
Attach
|
PDF
|
H
istory
:
r18
|
r4
<
r3
<
r2
<
r1
|
B
acklinks
|
V
iew topic
|
More topic actions...
Topic revision: r1 - 2011-07-13
-
AlessioGianelle
Home
Site map
CEMon web
CREAM web
Cloud web
Cyclops web
DGAS web
EgeeJra1It web
Gows web
GridOversight web
IGIPortal web
IGIRelease web
MPI web
Main web
MarcheCloud web
MarcheCloudPilotaCNAF web
Middleware web
Operations web
Sandbox web
Security web
SiteAdminCorner web
TWiki web
Training web
UserSupport web
VOMS web
WMS web
WMSMonitor web
WeNMR web
WMS Web
Create New Topic
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Edit
Attach
Copyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback