Single machine (B) running the OMII container with the GridSAM Web Service deployed. Jobs are launched onto a Condor Pool (C). The OMII container (B) is available to the Internet. User holding a certificate trusted by the OMII container (B) can submit jobs over the internet to the GridSAM instance running on the OMII container (B).
If Host (B) is a Condor submission host, the GridSAM service can submit the job locally to the pool (although the jobs can be executed remotely depending on the pool setup).
If Host (B) is not a Condor submission host, the SSH variation allows a host (C) that is a Condor submission host to be used by (B) to submit jobs. (B) can submit jobs under an alternative user similar to the SSH Forking scenario.
You must have the Condor system v6.4, v6.6 or v6.7 installed on the submission host. The user running the OMII container (or the user used in the SSH variant) must be able to launch jobs onto the Condor pool.
<?xml version="1.0" encoding="UTF-8"?> <module id="jobmanager.ssh" version="1.0.0"> <!-- dependent modules --> <sub-module descriptor="org/icenigrid/gridsam/resource/config/common.xml"/> <sub-module descriptor="org/icenigrid/gridsam/resource/config/shell.xml"/> <sub-module descriptor="org/icenigrid/gridsam/resource/config/condor.xml"/> <sub-module descriptor="org/icenigrid/gridsam/resource/config/embedded.xml"/> <sub-module descriptor="database.xml"/> <sub-module descriptor="authorisation.xml"/> <!-- override the factory defaults here --> <contribution configuration-id="hivemind.ApplicationDefaults"> <!-- condor command location --> <default symbol="condor.CondorSubmitCommand" value="/usr/local/condor/bin/condor_submit"/> <default symbol="condor.CondorRmCommand" value="/usr/local/condor/bin/condor_rm"/> <!-- log file for monitoring job status --> <default symbol="condor.CondorLogFile" value="/tmp/condor.log"/> <!-- the location of the tail command --> <default symbol="condor.TailCommand" value="tail"/> <!-- the default location of the classad generation script WEB-INF/classes/classad.groovy --> <default symbol="condor.ScriptResource" value="classad.groovy"/> </contribution> <!-- uncomment the following to use ssh-based shell --> <!-- <sub-module descriptor="org/icenigrid/gridsam/resource/config/ssh.xml"/> <contribution configuration-id="ssh.ShellConfig"> <Server host="localhost" user="${user.name}"> <PublicKeyAuthentication keyfile="${user.home}/.ssh/id_rsa" passphrase=""/> </Server> </contribution> --> </module>
<Server host="[hostname of (C)]" user="[username to connect as]"> <PublicKeyAuthentication keyfile="$[RSA keyfile for public key authentication]" passphrase="${passphrase for unlocking the keyfile}"? /> | <PasswordAuthentication password="$[password to access (C)]" /> </Server>