Getting Started on Cloud Computing

In this workshop we will get you started working with remote computers running in the cloud. The remote computer we work with will be controlled using a command-line interface, and therefore we will give a brief introduction on working with the command-line, also called a shell. The most common shell is the Unix shell, which is part of Mac OS and Linux out of the box, and can be added to Windows via the Windows Subsystem for Linux. After we connect to a remote server via the secure shell protocol SSH, we go through part of a workshop on using the shell in a High-Performance Computing Content. Then we discuss how to prepare your own programs written in Python, R or Java such that they can be easily executed from the shell. Finally, we discuss how we can make sure programs that take long to run keep running when we disconnect, and how we can schedule a program to run at particular times.

Schedule

Setup How to prepare for the lesson
00:00 1. What is Cloud Computing What is cloud computing and how can I use it?
What are common cloud services available?
00:10 2. Setting up a machine in the cloud How do I create and configure a virtual machine I can control
How can I clean up my virtual machine when I’m done with it
00:20 3. Connecting to a remote system How do I open a terminal?
How do I connect to a remote computer?
00:30 4. Moving around and looking at things How do I navigate and look around the system?
00:50 5. Writing and reading files How do I create/edit text files?
How do I move/copy/delete files?
01:10 6. (Option 1 - Python) Run your own code How do I run Python programs?
What options do I have to pass data to my programs?
01:40 7. (Option 2 - R) Run your own code How do I run R programs?
What options do I have to pass data to my programs?
01:40 8. (Option 3 - Java) Run your own code How do I run Java Programs?
What options do I have to pass data to my programs?
01:40 9. Long running and scheduled programs How do I prevent that programs stop running if I disconnect
How can I schedule a program to be executed at certain times
02:00 10. System Management and Installation How do I manage a Virtual Machine
How I can I install missing software on a Linux Virtual Machine
02:10 11. (BONUS) Wildcards and pipes How can I run a command on multiple files at once?
Is there an easy way of saving a command’s output?
02:10 12. (BONUS) Scripts, variables, and loops How do I turn a set of commands into a program?
02:10 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.