Using ssh with qrsh

By default, the Grid Engine command qrsh will use standard remote mechanisms (rsh/rlogin) to establish interactive sessions.

  • qrsh by itself will use rlogin

  • qrsh with a command will establish a rsh connection.

To enable the rsh/rlogin mechanism, special rsh and rlogin binaries are provided with Grid Engine (found in $SGE_ROOT/utilbin/$ARCH). In addition, to have full accounting and process control for interactive jobs, an extended rshd comes with Grid Engine.

As an alternative, Grid Engine can be configured to use ssh instead to start interactive jobs.
 

Advantages of using ssh:

  • secure connection

  • no need to have suid root programs installed (rsh and rlogin have to be suid root)

  • much larger number of running sessions per host (not limited by port number < 1024)

  • compression (if lots of data pushed through STDIN/STDOUT)

  • possibility to attach a tty to remotely executed commands (ssh option -t)

Disadvantages:

  • Lack of complete accounting

  • lack of process control (reprioritization)

How to setup ssh for qrsh:

Have ssh working, all keys created ...

Set the parameters rsh_daemon and rlogin_daemon in your cluster configuration to ssh:

If you have execution hosts with different architectures that have different paths to ssh, you will have to make these settings for each execution host individualy (qconf -mconf host), else you can change the global cluster configuration (qconf -mconf).

Set the parameters rsh_command and rlogin_command in your cluster configuration to ssh:

If you have submit hosts with different architectures that have different paths to ssh, you will have to make these settings for each submit host individualy (qconf -mconf host), else you can change the global cluster configuration (qconf -mconf).