Introduction
SSH
A An SSH solution works with a "main" JobScheduler Master that uses SSH to execute commands directly on “other” remote machines as shown in the following diagram:
...
Follow the links on our Agentless Scheduling page for more detailed information.
JobScheduler Agents
A JobScheduler Universal Agent is basically a JobScheduler platform independent Java based “thin client” that is directed by a “main” JobScheduler Master. The JobScheduler Universal Agent is installed on the remote machine. It cannot work on its own and has no database – , it receives commands and saves workflow information over the main JobScheduler, executes tasks and returns the execution history and logs to the JobScheduler Master.
A typical Main JobScheduler - Agent situation is shown presented in the following diagram:
...
Comparison of SSH and JobScheduler Agent usage
SSH solutions are more flexible in configuration but with working with agents Agents allows our JITL jobs to be executed, real-time logging and allow operating system independent API jobs to be run.
The most important features of each solution are summarized in the following table:
Feature | SSH | JobScheduler Agent | |||
---|---|---|---|---|---|
1 | Execute jobs with different user IDs | yes | noyes | ||
Configure jobs centrally | yes | 2 | Central job configuration | yes | yes |
3 | Internal API jobs availableProvide API jobs, see JITL Jobs by topic, see API Interface | no | yes | ||
4 | Real Provide real time log | no | yes | ||
Control termination of tasks, see How to Terminate Tasks | no | yes | |||
Distribute job load | no | yes | |||
Fail-over for high availability, see Agent Cluster | no | yes | |||
Run | 5 | Runs without installation | yes | no | |
Run on all operating systems | 6 | Operating system independent | no | yes (only API jobs) |
Please note the following:
- Mixed operation of SSH and JobScheduler Agents is possible.
- Further that the addressing of the server on which the job should be run in both procedures is different. Jobs to be executed by an a JobScheduler Agent are assigned through the "process class" to one node (a JobScheduler instance on a server), an authentication is not provided - Process Classes and the jobs run under the user ID and the privileges of the JobScheduler instanceAgent.
- SSH jobs have parameters to define the server as well as the authentication.
- SSH jobs require a minimum of 32MB main memory per job execution for a JVM to be loaded. Consider memory consumption for higher number of parallel SSH jobs.
- SSH can be used under Windows with copSSH (http://www.itefix.no/i2/copssh), an openSSH implementation. An alternative would be PSexec (http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx) though without SSH. We have knowledge of an installation in which a central JobScheduler controls 700 servers via psexec., or similar products. Windows environments provide limited support for SSH, see Limitations when using SSH jobs for Windows.
See also
- See How to execute Jobs and Orders from with Remote JobScheduler Instances? for further information and job examples.
- The documentation of the SSH job is available at: http://www.sos-berlin.com/doc/jobdoc/SOSSSHJob2JSAdapter.xml .
- The documentation of the source code is at: SOSSSHJob2JSAdapter.
...