FastX is a program for connecting to the HPC systems with a GUI desktop environment. It is similar to /wiki/spaces/hpcdocs/pages/76514725 connections but is newer and a little more robust when using Duo 2 factor authentication. Please see the FastX documentation site for detailed information on how to use FastX. FastX will send an automatic authentication request to your registered device if using the Duo app. Otherwise it will make a phone call to your registered number. Unlike No Machine though there is a much longer time out so it is more forgiving of slow push response times or the latency of a phone call for authentication. Another benefit that FastX has over No Machine is that you can close a remote desktop session but as long as the FastX program and the connection to the server was not disconnected the underlying ssh session is still active. This means that sessions can be started and stopped on the same server without triggering additional authentication requests from Duo.
Install FastX2
You can download the FastX2 client from the FastX - ITS Help Desk - Information Technology Services at The University of Iowa page. You will need to sign in with your HawID and password. On the next page that opens up you will see buttons to download a client. Select the one that is appropriate for your system.
Connecting to HPC systems
To connect to the HPC systems, you will need to create entries for the hosts. To create a new entry click on the green + button of the FastX toolbar. This will open up a connection editor.
FastX2 |
---|
Be sure to set the User field to your HawkID. Then click on the Save button. Once this is established the server connection will appear in the connection list.
FastX2 |
---|
Double click on the connection entry to establish an ssh connection. You will be prompted for a password if you are not using a key and Duo will autopush an authentication request to your default device with the Duo app or a phone call to your Duo registered phone number. The screen will now look like the following:
FastX2 |
---|
Once the Duo authentication has been approved click on the plus sign in the top-right to start a new session. This will bring up a menu with some common session options.
FastX2 |
---|
Select the one that you would like to use and it will start up in a new window. When you are finished with a session you can log out of it as normal. This will leave an ssh session open to the server so that any further sessions on that server will not need to go through the Duo authentication. To disconnect from the server completely, either exit FastX or right-click on the server name and select Disconnect.
Resuming sessions
Sessions can be resumed if they are not terminated when the FastX program is closed. This means that you can disconnect from a server but leave the session running and reconnect to it later. In this scenario, the back end ssh connection to the server has to be established so this will require Duo authentication. But once the ssh connection is up FastX will find any existing connections on the server. What is important to keep in mind here is that there is more than one login node for the HPC system, and that they are selected in a round robin manner, so that a connection to the HPC system will resolve to one of the available login nodes. This is important to remember when trying to reconnect to sessions as your new connection will need to land on the same host as the session that you want. If you do this frequently you may want to create explicit connections for each login node.
- argon-login-1.hpc.uiowa.edu
- argon-login-2.hpc.uiowa.edu
We kindly ask that you please terminate any sessions that you no longer need as they do use resources.
FastX Desktop Connection Issues
When connecting to Argon with FastX version 2 to open a Desktop such as MATE session, sometime you get an error saying "cannot connect to the bus session". This happens particularly if you have installed Anaconda to work with Jupyter on the cluster. Anaconda changes the .bashrc file with the PATH settings and causes the wrong dbus programs to be used. There is a fix available for this particular problem.
Change your PATH variable in .bashrc FROM:
export PATH="/Users/YOURHAWKID/anaconda2/bin:$PATH”
TO:
export PATH="$PATH:/Users/YOURHAWKID/anaconda2/bin”
The "normal" PATH setting must be before the anaconda directory in $PATH.