Creating and using VNC sessions on the UFS HPC

Introduction

Most applications that utilize/benefit from HPC resources are usually command-line applications and thus they can be accessed and used via a terminal application (See here). However, some applications require a Graphical User Interface (GUI). The UFS HPC provides a Virtual Network Computing (VNC) solution for these use cases.

Briefly, VNC is a technology which allows the user to remotely connect to a computer on a network and control it as thought they were sitting in front of the actual machine. TeamViewer is a popular example that utilizes this technology in the Windows ecosystem.

The general process for using VNC sessions on the UFS HPC can be summarized by the diagram below:

vnc process

This guide will show you how to submit a request to the UFS HPC to create and VNC session and how to subsequently connect to the created session using a variety of methods.

1. Creating a VNC session on the UFS HPC

Follow these steps to create a VNC session on the UFS HPC:

  1. Log into the UFS HPC

  2. Before requesting a VNC session, you need to choose a container that you wish to use. To view the available containers type:

    $ module avail containers
    

    This will print a fairly long list of available containers (and their versions). If you do not know which container you need, use the bioinformatics container.

  3. Load the container module (bioinformatics in this example):

    $ module load bioinformatics
    
  4. Make sure your container is present before executing qvnc by issuing the following command:

    $ module list
    

    If your chosen module is loaded, it be in the printed list:

    vnc module_avail

  5. Submit a VNC session request by executing qvnc:

    $ qvnc
    
  6. Follow the prompts on screen to specify the resources you need for the VNC session.

  7. If the requested resources are available, the job will be submitted and you will be given instructions on how to connect to the VNC session (detailed below).

2. Connecting to a VNC session on the UFS HPC

Once a VNC session is created on the UFS HPC the user can connect to the session using a VNC client (upon creating the session, instructions will be printed to the screen on how to connect to the session depending on the OS being used).

However, the easiest way to connect and use a VNC session is via a web browser and the Apache Guacamole instance hosted on the UFS HPC.

Follow these steps to connect to the VNC session created in Step 1 above:

  1. Open a web browser and go to: https://ui.hpc.ufs.ac.za/

  2. On the landing page, enter your UFS HPC credentials and click on the Login button: If your chosen module is loaded, it be in the printed list:

    vnc_guac_1

  3. Upon successful login, you should be presented with the home screen for Guacamole. Under All Connections look for the desktop_ entry:

    vnc_guac_2

  4. Click on the desktop_ entry. You should now have a desktop displayed in your web browser:

    vnc_guac_3

    Note that it may take a couple of minutes for the VNC session to be recognized by Guacamole, so an error dialog may appear when trying to connect to the session. Simply press the Retry button until it connects.

  5. To go back to the home screen in Guacamole or to disconnect from the session press Ctrl-Shift-Alt on your keyboard to activate the Guacamole overlay:

    vnc_guac_4

  6. On the overlay shown above, you may also transfer copied commands to and from your host computer and the VNC session.