Connecting to Triton

Videos

Videos of this topic may be available from one of our kickstart course playlists: 2023, 2022 Summer, 2022 February, 2021 Summer, 2021 February.

The traditional way of interacting with a cluster is via the command line in a shell in a terminal, and Secure Shell (ssh) is the most common way of doing that. To learn more command line basics, see our shell crash course.

Abstract

  • When connecting to a cluster, our goal is to get a command-line terminal that provides a base for the rest of our work.

  • The standard way of connecting is via ssh, but Open OnDemand and Jupyter provide graphical environments that are useful for interactive work.

  • SSH host name is triton.aalto.fi

Method

Description

From where?

ssh

Standard way of connecting via command line. Hostname is triton.aalto.fi. More info.

>Linux/Mac: ssh USERNAME@triton.aalto.fi

>Windows: WSL+Linux/Mac instructions or use Powershell, which works very similar to linux shell.

Connections only from Aalto networks (VPN, most wired, internal servers, eduroam, aalto only if using an Aalto-managed laptop, but not aalto open). kosh.aalto.fi is a good proxy host if you are outside: ssh -J USERNAME@kosh.aalto.fi USERNAME@triton.aalto.fi

VDI

“Virtual desktop interface”, https://vdi.aalto.fi, from there you have to ssh to Triton (previous row) and can run graphical programs via SSH. More info.

Whole internet

Jupyter

https://jupyter.triton.aalto.fi provides the Jupyter interface directly on Triton (including command line). Get a terminal with “New → Other → Terminal”. More info.

Whole internet

Open OnDemand

https://ood.triton.aalto.fi, Web-based interface to the cluster. Includes shell access and data transfer. “Triton Shell Access” for the terminal. More info.

VPN and Aalto networks

VSCode

Available via OpenOnDemand (row above). Desktop-based “Remote SSH” allows running on Triton (which is OK, but don’t use it for large computation). More info.

Same as SSH above

Kickstart course preparation

Are you here for a SciComp KickStart course? You just need to make sure you have an account and then be able to get to a terminal (as seen in the picture below) by any of the means here, and you don’t need to worry about anything else. Everything else, we do tomorrow.

Local differences

The way you connect will be different in every site, but you should be able to get a terminal somehow.

Schematic of cluster with current discussion points highlighted; see caption or rest of lesson.

We are working to get access to the login node. This is the gateway to all the rest of the cluster.

Getting an account

Triton uses Aalto accounts, but your account must be activated first.

The terminal

This is what you want by the end of this page: the command line terminal. Take the first option that works, or the one that’s comfortable to you. However, it’s good to get ssh working someday, since it is very useful. Later, in Using the cluster from a shell, will explain more about how to actually use it.

Image of terminal with two commands ran: ``whoami`` and ``hostname``

Image of a terminal - this is what you want after this page. You’ll see more about this means in Using the cluster from a shell. Don’t worry about what the commands mean, but you can probably figure out.

Connecting via ssh

ssh is one of the most fundamental programs of remote connections: by using it well, you can really control almost anything from from anywhere. It is not only used for connecting to the cluster, but also for data transfer. It’s worth making yourself comfortable with its use.

All Linux distributions come with an ssh client, so you don’t need to do anything. To use graphical applications, use the standard -X option, nothing extra needed.:

$ ssh triton.aalto.fi
## OR, if your username is different:
$ ssh USERNAME@triton.aalto.fi

If you are from outside the Aalto networks, use the ProxyJump option (-J) in modern OpenSSH:

$ ssh -J kosh.aalto.fi triton.aalto.fi
## OR, if your username is different:
$ ssh -J USERNAME@kosh.aalto.fi USERNAME@triton.aalto.fi

## If you do not have the -J option:
$ ssh kosh.aalto.fi
$ ssh triton.aalto.fi

When connecting, you can verify the ssh key fingerprints which will ensure security.

See the advanced ssh information to learn how to log in without a password, automatically save your username and more. It really will save you time.

Aalto: Change your shell to bash

Only needed if you shell isn’t already bash. If echo $SHELL reports /bin/bash, then you are already using bash.

The thing you are interacting with when you type is the shell - the layer around the operating system. bash is the most common shell, but the Aalto default shell used to be zsh (which is more powerful in some ways, but harder to teach with). Depending on when you joined Aalto, your default might already be bash. We recommend that you check and change your shell to bash.

You can determine if your shell is bash by running echo $SHELL. Does it say /bin/bash?

If not, ssh to kosh.aalto.fi and run chsh -s /bin/bash. It may take 15 minutes to update, and you will need to log in again.

Connecting via Open onDemand

See also

Open OnDemand

OOD (Open onDemand) is a web-based user interface to Triton, including shell access, and data transfer, and a number of other applications that utilize graphical user interfaces. Read more from its guide. The Triton shell access app will get you the terminal that you need for basic work and the rest of these tutorials.

It is only available from Aalto networks and VPN. Go to https://ood.triton.aalto.fi and login with your Aalto account.

Connecting via JupyterHub

See also

Jupyter

Jupyter is a web-based way of doing computing. But what some people forget is that it has a full-featured terminal and console included.

Go to https://jupyter.triton.aalto.fi (not .cs.aalto.fi) and log in. Select “Slurm 5 day, 2G” and start.

To start a terminal, click File→New→Terminal - this is the shell you need. If you need to edit text files, you can also do that through JupyterLab (note: change to the right directory before creating a new file!).

Warning: the JupyterHub shell runs on a compute node, not a login node. Some software is missing so some things don’t work. Try ssh triton.aalto.fi from the Jupyter shell to connect to the login node. To learn more about Jupyterlab, you need to read up elsewhere, there are plenty of tutorials.

Connecting via the Virtual Desktop Interface

If you go to https://vdi.aalto.fi, you can access a cloud-based Aalto Linux workstation. HTML access works from everywhere, or download the “VMWare Horizon Client” for a better connection. Start a Ubuntu desktop (you get Aalto Ubuntu). From there, you have to use the normal Linux ssh instructions to connect to Triton (via the Terminal application) using the instructions you see above: ssh triton.aalto.fi.

Exercises

If you are in the kickstart course, Connecting-1 is required for the rest of the course.

Connecting-1: Connect to Triton

Connect to Triton, and get a terminal by one of the options above. Type the command hostname to verify that you are on Triton. Run whoami to verify your username.

Connecting-2: (optional) Test a few command line programs

Check the uptime and load of the login node: uptime and htop (q to quit - if htop is not available, then top works almost as well). What else can you learn about the node? (You’ll learn more about these in Using the cluster from a shell, this is just a preview to fill some time.)

Connecting-3: (optional, Aalto only) Check your default shell

Check what your default shell is: run echo $SHELL. If it doesn’t say /bin/bash, go ahead and change your shell to bash if it’s not yet (see the expandable box above).

This $SHELL syntax is an environment variable and a pattern you will see in the future.

See also

What’s next?

The next tutorial is about using the terminal.