###################################
Accessing Amazon Web Services (AWS)
###################################
To run the interactive activities for this JEDI Academy, each padawan will be granted the use of a dedicated virtual computer in the Amazon cloud. Specifically, we will launch an EC2 (Elastic Compute Cloud) instance through Amazon Web Services (`AWS `_) for each participant in the Academy. And, this is where you will be running JEDI. Throughout the documentation, we will refer to this as your AWS instance, or equivalently, your AWS node.
This document explains how to access your AWS node throughout the duration of the Academy. Feel free to return to it each day when is time to engage in each activity.
Some users may be tempted to run the activities on their own laptop or workstation or on an HPC platform if they have access to `JEDI Environment modules `_. However, we discourage this. The use of AWS instances and Singularity containers allows us to provide a uniform computing environment for all so that we can focus on learning the JEDI code without the distraction of platform-related debugging.
So, please use your AWS node to do all the academy activities. The only exception is Friday afternoon, when instructors (JEDI masters) will be available to provide guidance on how you can run JEDI on the platform of your choice.
So, to participate in the activities, you will need two things:
1. The ip address of your AWS node
2. A password to allow you to log into it
See the table below for the first item. The password will be provided during the first activity on Monday (:doc:`Getting Started `). **Write them down**: these will not change over the course of the Academy so you will need them every day.
.. note::
**Write down your password. Bookmark your Jupyter URL**.
Though you can access your AWS node directly through ``ssh`` if you wish, we have set up a web interface to each of the nodes by means of
`JupyterLab `_. We recommend that you use the web interface because this provides a number of attractive features, including the ability to navigate the directory tree, open new terminals, transfer files, and most importantly, to conveniently display graphics.
So, to access your AWS node, open a web browser and navigate to this URL:
.. code-block:: bash
http://:8080
Enter your password at the prompt. You should bookmark this link because, again, it will not change - it will be yours for the entire Academy.
Important: The AWS EC2 instances (and their associated JupyterLab URLs) will only be active in the afternoons during the week of the Academy. We will create the instances on Monday so the links below will not work before then. Then, each night of the Academy (Monday-Thursday), we will shut the instances down overnight as a cost-saving measure. However, all data will be saved so you can pick up the next day precisely where you left off. Then, after our last activity on Friday afternoon, we will permanently terminate all instances.
.. note::
**If you ever wish to leave your node up longer (for example, one evening to complete a particular activity), just make arrangements with a JEDI Master (Mark).**
Now, to log into your cloud computing instance, merely select the appropriate URL from the Table above and enter the password at the prompt.
You should now see the default JupyterLab interface, which includes a directory tree displayed as an interactive (i.e. clickable) menu on the left and a large display area. At the top of the display area you should see several tabs. One is labeled ``Console 1``. This is a Jupyter python console, capable of interpreting python commands. Another tab is labeled ``ubuntu`` with a local ip address. This is an ``ssh`` terminal, running bash. From here you have access to the linux command line. This is where we will be doing most of our work.
For more tips on how to work with the Jupyter interface, see :doc:`the first activity on Monday `.
If you are unable to link to the web interface, you can access the node directly through ssh, as mentioned above. To follow this method, you first need to acquire the ``academy-virginia.pem`` file from a JEDI master which contains an ssh key for authentication. Then you should use the ``-Y`` option to ssh to set up X forwarding as follows (remember that your username is ``ubuntu``):
.. code::
ssh -i academy-virginia.pem -Y ubuntu@
Then you can use the linux ``feh`` application to display image files over the internet (this application is available both inside and outside the Singularity container). Or, you can ``scp`` the files to your local machine (using the same ``pem`` file for authentication) and view them locally.
AWS node assignments
--------------------
========== =============== =======================
First Name Last Name AWS Node ip address
========== =============== =======================
Samantha Baker 18.212.43.54
Glenn Crighton 18.213.5.3
Quang Nguyen 18.235.216.118
Mike Puskar 23.22.99.195
Reid Strickler 3.210.25.216
Jackie Williams 3.211.239.57
Soyung Ha 3.215.250.158
Andrew Lorenc 3.226.35.84
Roger Saunders 3.234.59.8
Samantha Pullen 34.195.127.111
Chawn Harlow 34.196.154.112
Brett Candy 34.197.60.200
Stefano Migliorini 34.200.34.9
Ruth Taylor 34.225.202.34
Fabien Carminati 34.230.212.39
James Hocking 34.232.125.181
Heather Lawrence 34.234.26.113
Bob Tubbs 34.235.65.82
James Cotton 52.20.41.214
Neill Bowler 52.201.91.85
Owen Lewis 52.201.98.60
Lee Hawkness-Smith 52.203.223.48
Graeme Kelly 52.22.122.188
Jo Waller 52.72.6.48
Adam Martins 52.87.131.140
Breo Gomez 54.161.211.30
Pete Francis 54.162.197.7
Adam Maycock 54.163.246.75
Jorge Bornemann 54.165.60.21
Marco Milan 54.166.190.221
Daniel Lea 54.208.156.171
Toby Searle 54.225.161.106
Susan Sun 54.227.160.240
David Rundle 54.237.155.226
August Weinbren 54.242.241.227
Carwyn Pelley 54.91.92.7
Kristin Raykova 67.202.32.245
Claude Gibert variable
Oliver Lomax variable
Steven Sandbach variable
========== =============== =======================
...
Contact Mark Miesch (miesch@ucar.edu) if you have any problems or questions.