Getting Started
Access to the Lotus cluster is provided through the Linux command line. You will need a working knowledge of Linux commands to get started. If you are new to the Linux operating system, you will probably want to start with the Getting Started with Linux section below.
Is this Right for Me?
The Lotus cluster can help with two general use cases:
parallel programs that are specifically designed to run a single program on multiple computers. A parallel program will be launched on multiple computers that will work and communicate together to solve a given problem. Parallel programs are usually written using a communications framework like the Message Passing Interface (MPI) and are specially designed for running on clusters.
sequential programs that can be run on a Linux system and use a single processor and don’t have any special need for parallelization. The advantage of running sequential programs on a cluster is in high-throughput computing, i.e. a researcher can run 100 different experiments simultaneously, even though each run is independent.
If you would like to discuss your computational needs and have questions about how to adapt your research computing workflow to the cluster environment, please contact the cluster coordinator, Dr. Brian Larkins (larkinsb@rhodes.edu).
Requesting an Account
The Lotus HPC Cluster is available for Rhodes faculty, students, and staff to use for research or classroom projects. Rhodes users may request access by completing the following form. Once your account has been activated, you will be notified:
Rhodes HPC Cluster Access Request Form
External Users
Collaborators and researchers at other institutions can access the system through a sponsored account. You must have a Rhodes faculty or staff member sponsor your access. The Rhodes sponsor should complete this form to request a sponsored account.
Accessing the System
The cluster can accessed directly from campus networks. Off-campus users must use a VPN or virtual desktop to use the system.
For on campus users:
Locate your computers terminal window. (See Using the Terminal for more information)
From your terminal window at the prompt , type the following (not including the $ and replacing the “userid” with your username) to log in!
$ ssh userid@lotus.arc.rhodes.edu
Your userid should be the username in your Rhodes email. For example, if your Rhodes ID is doej-21@rhodes.edu, in the terminal you would type:
$ ssh doej-21@lotus.arc.rhodes.edu
You will prompted for your password, which will be your regular Rhodes One Login password.
For off campus users:
Off-campus users are not permitted to directly SSH into the cluster. You can either use a virtual private network (VPN) or a virtual desktop computer to access the system. A virtual desktop will be faster to get going but is more complicated to transfer data in and out of the system. Using a VPN requires provisioning and a client download, but permits a more traditional SSH workflow.
VPN Setup
Fill out this form to begin the process of receiving access: Off Campus VPN Access Form
Only continue with the following steps once you have received access and you are off campus.
Follow these instructions for installing the VPN client on your machine.
Virtual Desktop Access
To use a virtual desktop machine, navigate to https://desktops.rhodes.edu/ and login with your normal Rhodes credentials. From the desktop, launch the PuTTY application. Create a new connection to lotus.rhodes.edu
along with your userid and password.
If you are having trouble logging into the cluster contact help@rhodes.edu for assistance.
Getting Started with Linux
Using the Terminal
Unless you are using a virtual desktop to access the cluster, you will need to use a terminal program on your desktop/laptop. Using a terminal program will depend on which operating system you use and your specific needs. If you are unsure, the simplest solutions are presented first.
MacOS X
Mac OS comes with the Terminal app, which is located in /Applications/Utilities
(or you can search for it). This is fine for basic use.
Users may wish to use a more extensible terminal, such as iTerm2. This is a free download and enables better integration with command-line workflows.
Once you have your terminal installed and up and running, you can SSH to the machine as described above.
Windows
Windows users have several options to access remote machines using SSH.
The simplest solution is to enable this functionality directly in Windows 10.
You can also download the PuTTY application and use it if you prefer a graphical client.
If you would like to add Linux tools to your local system, you can install Windows Subsystem for Linux (WSL) and use the WSL terminal/SSH client to access the cluster.
Linux
Most Linux distributions ship with terminal software and an SSH client. Consult your system documentation for details.
Command Line / Shell
When you SSH into the cluster and are logged in, you will be at a command-line prompt, called the shell. You will need to some some basic text commands to switch directories, create folders, rename files, edit files, run programs, etc.
Rather than try to cover such a large subject in this guide, we provide links to tutorials for using the shell. While you don’t need to complete the entire tutorials, you should at least be familiar with the basics of using the shell.
http://linuxcommand.org/lc3_learning_the_shell.php Recommend sections 1-5.
http://www.ee.surrey.ac.uk/Teaching/Unix/ Recommend sections 1-5.
Editing Files
While you can do a lot of things with the shell, you will likely need to create and edit text files at some point in order to run software on the cluster system. To do this, you will need to use a text editor program to create/edit/save text files. There are two commonly used editors:
Nano
Nano is a simple text editor, designed to be easy to use. The screen typically displays common editor operations on the bottom, which minimizes the need to memory key combinations. You can master nano in just a few minutes with the help of a short tutorial.
VIM
Vim is a powerful text editor that has features like syntax highlighting, spell checking, auto-indentation, and much more. The learning curve for Vim can be steep, but it can be a great time saver in the long run. The simplest way to learn vim is to type vimtutor
at the shell prompt. This will walk you through the basics of the editor, from within the editor. You may also wish to follow a web-based vim tutorial.
Getting Rid of SSH Passwords (Securely)
The Secure Shell (SSH) can be setup with public-key encryption to eliminate the need for typing your password in when you access the cluster system. To configure this you will need to:
generate a public and private key pair on your local computer
copy your public key to the HPC cluster machine
tell your local machine the key pass phrase (once per boot)
use SSH and SCP securely without needing to type your password every time
The general process is described here: Passwordless SSH using public-private key pairs
Parts of this process depend on your operating system:
Mac OS X: https://rderik.com/blog/understanding-ssh-keys-and-using-keychain-to-manage-passphrase-on-macos/
Windows (Powershell): Key-based authentication in OpenSSH for Windows
Windows (PuTTY): How to install and use puttygen to create new key pairs and change passphrases. Installing keys on server, managing SSH keys.
Linux/Windows (WSL): Ssh-agent single sign-on configuration, agent forwarding & agent protocol