ERIS Remote Linux Desktop on SciC Linux Clusters

Notice:

Three new grx machines are available now grx20, grx22, and grx23 their URLs will follow grx##.partners.org. Do not use the 'research' part of the hostname. If you see the connection screen black please click and scroll up so the login screen shows up.  (05-04-2023)

Installation

Install the NoMachine Enterprise Client application for your operating system (Mac, Windows, Linux)  from the NoMachine download page or, if you have a MAC, you can find it on the PEAS self-service. NoMachine is also available for the iPad in the Apple iOS App Store.

We recommend you do not install the full NoMachine application directly from the NoMachine website because it includes a desktop sharing component in addition to the client needed to connect to SciC Linux Clusters. If you are already using the NoMachine application for desktop sharing the client included in that package can be used to connect to SciC Linux Clusters.

Setting Up Connection Details (one time only)

  • If working remotely, ensure a VPN connection
  • Start the NoMachine application
  • Click on the "New" button to add a connection
  • Leave "Protocol" set to "NX" and press "Continue"
  • Enter the selected server name in the "Host" field and press "Continue". If you still do not know which host you can connect please check first SciC Linux Clusters RemoteDesktopApp
  • Select "Password" on the Authentication panel and press "Continue"
  • Select "Don't use a proxy" on the Proxy panel and press "Continue"
  • To complete the connection setup, press "Done" on the Save As panel, changing the connection name if desired
  • Notes:
    • The settings above are suitable for connection from the Mass General Brigham computer network and over VPN
    • If connecting via the "ssh.research.partners.org" gateway, you may instead use the SSH protocol on Port 22, with the advanced option "Use the System login".
  • Both NX and SSH protocols are supported, we recommend leaving this option set to "NX". The NX protocol gives better performance when working with video and 3D graphical applications
  • Press "Continue"

Connecting to the Virtual Desktop

If you have just completed "Setting up Connection Details" (above) the NoMachine window will already be open, otherwise start the NoMachine application and click on the icon for the saved connection to the ERIS HPC virtual desktop server

  • Select the connection created earlier from the connection list, and press "Connect"
    • On the very first connection, you will be prompted to verify the certificate fingerprint - press "Yes"
  • Enter your Mass General Brigham username and password on the login panel
    • Tip: If "All Desktops" is indicated in the orange bar, click on this and change to "My Desktops" to filter out other users' desktops from the view
  • To resume an existing session:
    • Click on the entry for that session
    • Press "Connect"
  • To start a new session:
    • Press the "New Desktop" button
    • select "Create a new virtual desktop"
      • Tick the "Save this setting in the connection file" option to bypass this step in future
    • Press "Continue"
    • Informational dialogs will appear - press Ok to continue

After completing these steps, a Linux desktop should appear

Disconnecting

When you are done working on the remote desktop, you can either log out or disconnect

  • if you plan to return later to continue work in the session, activate the menu, click the "Connection" button and press "Disconnect"
  • if you are done with this session or don't plan to resume work in the next week, select log out from the "System" menu in the top, left-hand corner of the desktop.  This closes the desktop and frees a slot for other users.

Access, and Policies

Once you have carefully read this article and selected the remote desktop server to connect, you can then continue with the NoMachine installation on Remote Linux Desktop on SciC Linux Clusters using the NoMachine Enterprise Client.

A number of Remote Desktop servers are attached to the Scientific Computing (SciC) Linux Clusters for use as remote workstations in the cluster environment. The Remote Desktop service is ideal for using graphical applications such as Freesurfer, RStudio, or a Genome Browser with data stored on the SciC Linux Clusters. The Firefox web browser is available for web-based applications or data transfer to and from external collaborators for example with https://transfer.partners.org or the Aspera Browser Plugin.  Various other graphical tools and software development applications are also installed.

You can connect to a SciC Linux Clusters Remote Desktop from a Mac computer, Windows and Linux PCs, and Apple iPads. Other mobile devices will be supported in the future.


Gaining Access

An account on the SciC Linux Clusters is required for access to the remote desktop. If you do not yet have an account, complete the Cluster application form

Note that the server name to use for NoMachine remote desktop is different from the server name to use for SSH to ERISOne or ERISTwo; erisone.partners.org and eristwo.partners.org only accept SSH logins, not remote desktop connections. 

Once you have a SciC Linux Clusters account, visit the RemoteDesktopApp to select the server you will connect to, if you have any questions please email Scientific Computing.  Continue on this page, reading the Guidelines and Policies section, then find the installation and connection information below.

 

Navigating the RemoteDesktopApp

You can select the server you want to connect to on the RemoteDesktopApp. At the top of the page, you can toggle between available servers on ERISOne or ERISTwo. 

On the RemoteDesktopApp, you will see icons such as the one below:

Here are some things to take note of when choosing your server:

  • The color of the icon indicates the server's availability. Please select your server accordingly.

    • Green - there are currently many open licenses on this server
    • Yellow - many licenses are currently in use, but there are still some openings on this server
    • Red - there are currently no available licenses on this server
    • Black - this server is out of service
  •  At the top of each server option is the name of the server (i.e. "GRX04").
  • Below the name of the server, you will see a fraction. This indicates (Licenses in use)/(Total Licenses). You will want to choose servers that still have available licenses.
  • Next, you will find the server link (i.e. "grx04.research.partners.org") this is what you will use as "Host" when connecting to the remote desktop.
  • Lastly, you can see the most recent date and time that the status of the servers was updated.

 


Guidelines and Policies

As this is a shared service, please be considerate of other users. 

  • Sessions can be kept open overnight and over weekends but always save open files before disconnecting
  • For longer periods of inactivity please terminate the session to free resources for other users
  • Only have sessions running on one remote desktop at any time
  • Sessions that have been idle for 2 weeks will be terminated without notice
    • A session is idle if
      • two weeks have passed since the last connection
      • it does not have a running interactive session on the cluster
      • is not using CPU for processing
  • Typical uses for Remote Desktop servers involve graphical applications that are not computationally intensive
    • Using web-based applications such as the Integrated Genome Browser to visualize data stored on the cluster
    • Writing code using Integrated Development Environments such as Eclipse, Matlab GUI, and RStudio during the testing and development phases
    • Having a persistent desktop from which to launch graphical interactive sessions on cluster nodes
  • Wherever possible, computationally intensive or large memory workloads should be submitted to the cluster, with resource reservation in a regular manner, either to an interactive or batch session
  • Certain computationally intensive tasks should be run directly on the Remote Desktop nodes
    • Examples are
      • software that is installed on the Remote Desktop nodes but not the cluster. Examples are:
        • RStudio

    • In these situations, set a memory limit before launching the application and use "nice" out of consideration for other users. Other commands to set bounds on resource consumption are "ionice" and "numactl"
    • To launch "RStudio" after setting a 10GB memory cap and nice value of 10, for example, open a Terminal window (from the "Applications" menu, select "System Tools" and "Terminal") and type at the $ prompts:
ulimit -v 10000000
nice -n 10 /usr/lib/rstudio/bin/rstudio

Client Software Installation and Connection Information

The NoMachine client is recommended for all users, see Connecting to SciC Linux Clusters HPC Remote Desktop using NoMachine Enterprise Client for details.


Server SSH Key Fingerprints

When first connecting to a remote desktop server, the client program will prompt to accept the server SSH key fingerprint. 


Hints and Tips

Customizing the Gnome Desktop

  • For a more familiar File Explorer type interface, open the file browser (Places → Home Folder). From the "Edit" menu choose "Preferences" and then enable "Always open in browser windows" under the "Behavior" tab
  • Drag and drop commonly used application icons from the "Applications" menu to the "Gnome Panel" (gray bar) across the top of the screen
  • If the fonts appear too small, set the display resolution to "96 dots per inch" from "System → Preferences → Appearance", then selecting the "Fonts" tab and clicking on the "Details..." button in the lower right

Periodically clear desktop temp data

Temporary files generated by the remote desktop can slow down our backup systems and fill up your home directory quota.  Empty the "Recycle Bin" and clear web-browser caches frequently.

Fixing Gnome applet errors

If you experience problems loading parts of the gnome desktop and have modified the .bashrc file in your home directory, try backing up and replacing that file with the default version at /etc/skel/.bashrc .  Loading dynamic libraries associated with certain scientific software at login time can sometimes render the remote desktop environment unusable.

Matlab Keyboard shortcuts

Matlab assigns functions to keyboard shortcuts (such as ALT+TAB) which may cause those key presses to not perform as expected in a remote desktop environment.  You can re-define Matlab keyboard shortcuts so that they don't conflict with keystrokes you use for other purposes (such as switching between windows) in the Matlab Preferences, under "Keyboard -> Shortcuts". The Matlab preferences are reached from the "Home" tab, then the "environment" drop-down menu, and "Preferences".

 

Usage Tips

Menu Options

Activate the menu inside a remote desktop session by

  • clicking in the top right-hand corner (a "page-peel" activates when the mouse cursor hovers in the top right corner)
  • pressing the menu hot-key, which is
    • "control+option+0" [zero, not capital o] on a Mac
    • "Ctrl+Alt+0" on a PC

Screen Size / Display Resolution

  • To match the screen size of the virtual desktop to that of your computer
    • On Mac OS X: press "control+option+0", then press the "Display" button followed by "Remote Resize Screen".  If this does not work, try pressing the "Fullscreen" button twice

Odd Mouse behavior when connecting from MacOS X

Occasionally the Window Manager in the Linux remote desktop can enter a state where mouse clicks are not processed as expected. For example, a click on the application "File" menu may result in the application window moving, instead of opening the file menu.  A work-around if this occurs is to use "Command+TAB" to switch back to the Mac OS computer, open and then exit the "Launchpad" view, then return to the remote desktop using "Command+TAB".  At this point mouse-clicks will be processed as normal in the remote window.

Screen Saver

The screen saver in gnome-shell can be escaped to the login screen by hitting the 'esc' or 'space' buttons

VirtualGL 3D Rendering

The NoMachine Virtual desktops are currently configured to render using SDL (software).
If 3D rendering (not processing) is necessary, NoMachine's VGLrun scripts can be used. Info coming soon below 

Go to KB0027948 in the IS Service Desk