Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Note

FastX2 is now supported on HPC Systems. Benefits of FastX2 over FastX1:

  • Much faster.
  • Better session handling.
  • Registered on the server side so no need to register the license server on the client.
  • Does not require the VPN for access.

We encourage everyone to migrate to FastX2.

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.

...

You can download the FastX2 client from the ITS software download page. After signing in with your HawkID find the FastX link and click on it. On the next page that opens up you will see buttons to download a client. Select the one that is appropriate for your system.

Image Removed

 

 

...


...

HPC Systems recommends installing FastX2 instead of FastX1.
Note
Info

FastX3 is available on Argon login nodes in addition to FastX2. The download of the FastX3 client can be gotten from the same place as the FastX2 client, or directly from StarNet at https://www.starnet.com/download/fastx-client


Anchor
fastx2
fastx2
Install FastX2

You can download the FastX2 client from the ITS software download page. After signing in with your HawkID find the FastX link and click on itthe 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.

Image Removed

Notice that there is also a listing of the license server and port. Take note of these as they will have to be entered after the FastX1 program is installed. The license information is not needed for FastX2. You will need to connect to a VPN for off-campus access if using FastX1. Since FastX2 is licensed on the server side the client does not require the VPN. However, if off-campus be sure to use port 40 in the connection settings. Unless you already have access to the Engineering VPN use the UI Anywhere VPN service.

Register license for FastX1

Before you run FastX, you need to select the license server. From the Help menu, select Register. The License Activation dialogue box asks for the Activation Key. Use the arrow to the right of Activation Key to select License Server. Complete the License Server information as shown. Hostname: itsnt1396.iowa.uiowa.edu and Port: 5053. Click OK.

Image Removed  Image Removed

Image Added


Anchor
configure
configure
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
FastX1Image RemovedImage Removed

Image Added

Be sure to set the User field to your HawkID. If connecting to Helium then replace 'neon' with 'helium' in the dialog. Then click on the Save button. Once this is established the server connection will appear in the connection list.

FastX2
FastX1Image RemovedImage Removed

...

Image Added


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 registerd registered phone number. The screen will now look like the following:

FastX2
FastX1Image RemovedImage Removed

 

...

Image Added



Once the Duo authentication has been approved click on the Start the plus sign in the top-right to start a new session field. This  This will bring up a menu with some common session options.

FastX2
FastX1Image RemovedImage Removed

 

Image Added


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.

...

Sessions can be resumed if they are not terminated when the FastX program is closed. Note that FastX sessions are dependent on an ssh connection to the server but are actually distinct. This means that you can disconnect from a server but leave the session running and reconnect to it later. In this scenario, the backend back end ssh connection to the server has to be established new 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 are is more than one login node per for the HPC system. Neon has 2 login nodes and Helium has 3. In each case they are round robin resolved , and that they are selected in a round robin manner, so that a connection to neon.hpc.uiowa.edu the HPC system will resolve to either neon-login-1.hpc.uiowa.edu or neon-login-2.hpc.eduone 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.

  • Neonneonargon-login-13.hpc.uiowa.edu
  • neonargon-login-24.hpc.uiowa.edu
  • Heliumhelium-1argon-login-5.hpc.uiowa.edu
  • helium-2.hpc.uiowa.edu
  • helium-3argon-login-6.hpc.uiowa.edu

We kindly ask that you please terminate any sessions that you no longer need as they do use resources.

Anchor
FastX Desktop Connection Issues
FastX Desktop Connection Issues
FastX Desktop Connection Issues

When connecting to Argon with FastX version 2 (or later) to open a graphical desktop session such as MATE or KDE, you might get an error, such as:

Code Block
The command "mate-session" exited

or:

Code Block
Could not connect to session bus: Failed to connect to socket

This can occur if you install Anaconda in your home account and select "yes" for the installer to initialize Anaconda with conda init. That option modifies your ~/.bashrc so Anaconda is conveniently configured every time you log in, but the modification also causes graphical sessions to use dbus software supplied in Anaconda, which prevents them from starting. To solve this problem, first check which version of conda you have by running 'conda --version'.

Info

Note that only new sessions you start after making the following changes will be free of the problem; you should discard any existing FastX sessions.

Prior to 4.6.0, edit your ~/.bashrc file to comment out all the lines in the "conda initialize" section. In future sessions, when you want to use Anaconda at your command prompt or in a job script, you'll first need to initialize conda. For example, if your Anaconda3 installation uses its installer's default path, use the following command to make conda available:

Code Block
exec "$($HOME/anaconda3/bin/conda shell.bash hook)"

If your conda version is 4.6.0 or newer, the previous method still works, but a better method is available. Instead of commenting out the "conda initialize" section in your ~/.bashrc file, configure conda not to automatically activate the base environment:

Code Block
conda config --set auto_activate_base false

In future sessions (including jobs), you can use 'conda activate' to load any environment you specify.