Updated 2022-08-08
Enable Port Forwarding with 3rd Party SSH Apps¶
Starting a VNC Session¶
- To start a remote VNC session, run the command
pace-vnc-job -q <QUEUENAME>
, where <QUEUENAME> should be replaced with the queue to which you wish to submit your job- By default, this will start a VNC job on 1 node, with 1 processor and 1 GB of memory, for 1 hour
- Important: If you are using Phoenix or Firebird clusters, you must include the
-A
flag followed by your account name:pace-vnc-job -q <QUEUENAME> -A <ACCOUNTNAME>
- Run
pace-quota
to see available accounts / to find your accountname
- Run
- If the requested resources need to be modified, use the standard
qsub
options:-l
can be used to set resource requests such as nodes, ppn, walltime, mem, pmem, etc.-N
can be used to set a custom name for the job-j
can be used to set the output flags (e.g.-j oe
)-o
can be used to set the output file path
- For example, to run a 4 hour VNC session with access to 2 nodes and 4 ppn, we could run the command
pace-vnc-job -q inferno -A myAccount -l nodes=2:ppn=4,walltime=4:00:00
- You can also specify a custom resolution for your VNC session to match your local resolution
- By default, all VNC sessions are run with a resolution of 1024x768
- To specify a different resolution, use the
--geometry
option - For example, to run a VNC session with a resolution of 1680x1050, the command would be
pace-vnc-job -q <QUEUENAME> -A myAccount --geometry=1680x1050
,
where <QUEUENAME> is replaced by the queue in which the job should be run
- The script will print output to the screen as the job is started
Tip
The script will not allow you to run a VNC session without a session password. If ~/.vnc/passwd does not exist, run vncpasswd and enter a session password. You will need this password to connect your VNC viewer client to your remote session.
- The next steps to take are based on your specific 3rd party SSH app. Please visit your app's section below:
Start a Jupyter Notebook Session¶
- Starting a Jupyter Notebook session is very similar to starting a VNC session, simply run the comand
pace-jupyter-notebook -q <QUEUENAME>
, where <QUEUENAME> should be replaced with the queue to which you wish to submit your job- Important: If you are using Phoenix or Firebird clusters, you must include the
-A
flag followed by your account name:pace-jupyter-notebook -q <QUEUENAME> -A <ACCOUNTNAME>
- Important: If you are using Phoenix or Firebird clusters, you must include the
- The defaults and resource request options are the same for
pace-jupyter-notebook
as they are forpace-vnc-job
, so please refer to the section above for explanations on how to request specific resources - The next steps to be taken are based on your specific 3rd party SSH app. Please visit your app's section below
Note
The instructions written in each of the sections below are targeted towards VNC sessions, but can be easily modified to run a Jupyter Notebook session instead. Instead of connecting your VNC viewer, simply paste the url provided in step 3) on the instructions displayed after running pace-jupyter-notebook
into your web browser and hit enter.
PuTTY¶
- Click the PuTTY icon in the top left of the window
- When the options box pops up, select
Change Settings...
- This will pull up a dialog box titled
PuTTY Reconfiguration
- Click on the plus box next to
SSH
under theConnection
category, and then click onTunnels
- In the
Source port
box, enter the 4 digit number before the first colon in the address from step 2) displayed in the terminal - In the
Destination
box, enter the rest of address that comes after the first colon - Make sure that the
Local
andAuto
options are filled in, and then hitAdd
- This should add an address to the
Forwarded ports:
box above
- You can now hit
Apply
, and all that's left is to connect your VNC viewer as per step 3) displayed in the terminal
Xshell¶
- Click the
Properties
button (or press Alt + p) to pull up theDefault Session Properties
dialog box - Click on
Tunneling
under theSSH
section of theConnection
category
- Click
Add
to pull up theForwarding Rule
dialog box - The
Listening Host
box should be set to localhost by default. If it is not, please manually set it to localhost. - In the
Listening Port
box, enter the 4 digit number before the first colon in the address from step 2) displayed in the terminal - In the
Destination Host
box, enter the rest of the address before the second colon - In the
Destination Port
box, enter the 4 digit number after the second colon in the address - After doing all of these, click
OK
- Click
OK
again when you are returned to theDefault Session Properties
dialog box - You can now connect your VNC viewer as per step 3) displayed in the terminal
MobaXterm¶
- Click on the
Tunneling
button next toMultiExec
andPackages
- Click on
New SSH tunnel
- Make sure that the
Local port forwarding
bubble in the top of the new window is filled in - In the
<Remote server>
section, enter the compute node identifier found between the two semicolons in step 2) from the instructions in the terminal - In the
<Remote port>
section, enter the 4 digit number found before the first semicolon and after the second semicolon - In the
<Forwarded port>
section, do the same as above, enter the 4 digit number found before the first semicolon and after the second semicolon - In the
<SSH server>
section, enter the address of the headnode you are currently on (this should be the full address including the.pace.gatech.edu
at the end). You can find the name of the headnode you are currently on by looking at the text formatted[<username>@<headnode> ~]$
in the terminal. - In the
<SSH login>
section, enter your GT username - In the
<SSH port>
section, enter 22 - Click
Save
to return to theMobaSSHTunnel
window
- Click
Start all tunnels
or the start button under theStart/stop
column - Enter your GT password when prompted and click
OK
- You may choose whatever option you prefer when a window pops up asking whether you'd like to save your password
- You can now connect your VNC viewer as per step 3) displayed in the terminal