ssh
. The UI list is available here. You can find more information about the GRID-CSIC infrastructure in the following twiki.
attribute = value;
The simple language is sensitive to blank characters and tabs. It is important to take into account that neither blank characters nor tabs should follow the semicolon at the end of a line (i.e. ;
). Literal strings are enclosed in double quotes. To include double quotes a backslash must be used (i.e.: Arguments = "\"run\" 10"). The same is applied for special characters: \&
(for &
) o \\\&
(for \&
). To conclude, single quotes ('
) are not allowed. Comments must be preceded by #
, // or /*
and */
.
Attribute | Mandatory? | Meaning | Example |
---|---|---|---|
Executable | Yes | Specify executable | Executable = "test.sh"; |
Arguments | No | Supply arguments to the executable | Arguments = "run 10"; |
StdOutput | Yes | Specify standard output | StdOutput = "std.out"; |
StdError | Yes | Specify standard error | StdError = "std.err"; |
StdInput | No | Specify standard input | StdInput = "std.in"; |
InputSandbox | No | Transfer input files from UI to WN (through WMS) | InputSandbox = {"test.sh","std.in"}; |
OutputSandbox | No | Transfer output files from WN to UI (through WMS) | OutputSandbox = {"std.out","std.err"}; |
Environment | No | Extend the environment | Environment = {"CMS_PATH=$HOME/cms","CMS_DB=$CMS_PATH/cmdb"}; |
Requirements | No | Imposing Constraints on the CE | Requirements = other.GlueCEInfoLRMSType == "PBS"; |
Rank | No | Apply a weight to select CE | Rank = other.GlueCEStateFreeCPUs; |
PerusalFileEnable | No | Enable job perusal | PerusalFileEnable = true; |
PerusalTimeInterval | No | Specify the frequency that specified files are copied to WMS machine (in seconds) | PerusalTimeInterval = 30; |
VirtualOrganisation | No | Define the Virtual Organization (VO) | VirtualOrganisation = "ific"; |
ShallowRetryCount | No | In case of Grid error, retry the job X times | ShallowRetryCount = 3; |
*
).
chmod +x
) by the initial script specified as the Executable in the JDL file (the chmod +x operation is done automatically for this script).
Requirements = other.GlueCEUniqueID == "ce02.ific.uv.es:2119/jobmanager-pbs-infinibandShort";The
other.
prefix is used to indicate that the GlueCEUniqueID
attribute refers to the CE characteristics (its ID in particular) and not to those of the job. If other.
is not specified, then the default self.
is assumed, indicating that the attribute refers to the job characteristics description.Requirements = other.GlueCEInfoHostName == "ce02.ific.uv.es" && other.GlueCEStateFreeCPUs > 10;which ANDs in the requirement that there are at least 10 free CPUs on this specific CE. By default the system always ANDs in
other.
requirement: Requirements = other.GlueCEStateStatus == "Production" ;A requirement can be negated:
Requirements = (!other.GlueCEInfoTotalCPUs < 10);
Requirements = Member("ScientificSL",other.GlueHostOperatingSystemName);The Member function is satisfied if the first argument is a member of its second argument (a list). Functions can be also ANDed:
Requirements = Member("ScientificSL",other.GlueHostOperatingSystemName) && Member("SL",other.GlueHostOperatingSystemVersion) && Member("5.3",other.GlueHostOperatingSystemRelease);
Requirements = RegExp("ce02.ific.uv.es", other.GlueCEInfoHostName);
Requirements = anyMatch(other.storage.CloseSEs,target.GlueSAStateAvailableSpace > 204800);
Rank = other.GlueCEStateFreeCPUs;But other definitions are possible. The next one is a more complex expression:
Rank = ( other.GlueCEStateWaitingJobs == 0 ? other.GlueCEStateFreeCPUs : -other.GlueCEStateWaitingJobs);In this case, the number of waiting jobs in a CE is used if this number is not null. The minus sign is used so that the rank decreases as the number of waiting jobs gets higher. If there are not waiting jobs, then the number of free CPUs is used.
Executable = "/bin/echo"; Arguments = "Hello World"; StdOutput = "stdout.log"; StdError = "stderr.log"; OutputSandbox = {"stdout.log","stderr.log"};
voms-proxy-init -voms ific
voms-proxy-init -voms ific -valid 24:00To increase it even more, (by default 7 days), the following command can be used:
voms-proxy-init -voms ific myproxy-init -d -n -s lcg2proxy.ific.uv.esthen, you have to include the attribute
MyProxyServer="lcg2proxy.ific.uv.es"
to the corresponding JDL file.
export LFC_HOST=lfc02.ific.uv.es export LFC_HOME=/grid/ific/
glite-wms-job-*
. Here, a summary of the most important commands will be presented though you can use advance commands. All of them are discussed in Workload Management section from the gLite User Guide.