← Back to Home

Cloud Assignment 0

Purdue University CS35100 Spring 2026

Due January 23rd 11:59PM

0. Overview

The goal of this assignment is to prepare your AWS account for cloud assignment submissions, and ensure the assignment autograder can access your cloud resources. It will be short, and simple.

We recommend you create a new AWS account to take advantage of AWS's Free Tier. The cloud assignments have been designed to avoid any charges to your account by restricting resource usage within these limits, but we must warn you to be careful when working on these assignments, Purdue is not responsible for any charges to your account from user error.

1. Autograder setup

To allow instructors to grade your work and ensure authenticity of your submissions, we require read-only access to your AWS account. Follow the steps below to set up access.

  1. Navigate to IAM (Identity and Access Management) in your AWS account.
  2. Go to the Users tab.
  3. Create a new user:
  4. Set up an access key for this user
  5. Include the access key and secret key in your submission, along with your account ID (found in "Account Settings")

Ensure that this account remains unchanged until the course concludes. Afterwards, you can remove it. Note: If the keys are no longer accessible, we will not be able to grade your assignments.

Now create an empty file called "credentials", and populate it with:

credentials
[default]
aws_access_key_id = <access key id you just generated>
aws_secret_access_key = <secret access key you just generated>

Please remove any quotation marks surround the values. Safekeep this file, you will use it for all assignment submissions during the semester.

Now you can submit this file to CA0 on Gradescope. At this point, you should pass test cases 1.1, 1.2, and 1.3. Each time you resubmit, the autograder will go through the current configuration of your AWS account, showing you your progress in the assignment.

As you work on the assignment, you can use the Gradescope autograder to make sure that you complete all the objectives. Because part of the cloud engineering experience is to navigate the documentation and do your own research, we will not guide you through each command, as you can easily figure them out by consulting relevant sources, such as this one. Moreover, this gives you more freedom in how you approach the problem, and as long as your solution passes all the test cases you'll receive full credit.

2. AWS Budget setup

We're going to set up an AWS Budget that will alert you if you get any charges.

  1. Navigate to the Billing feature in AWS's Billing and Cost Management Service.
  2. Click "Create Budget"
  3. Select "Use a template" then "Zero spend budget"
  4. Add your email to the "Email recipients" text area.
  5. Click "Create budget"

At this point, you should now pass test 2.1.

3. EC2

EC2 is a solution for creating and managing virtual machines (VMs) from AWS. It allows you to configure a VM according to your specifications, as well as connect it to other AWS services. In this part, you will create, or "spin up", a VM, and configure its SSH server.

3.1 Create EC2 virtual machine

For this part of the assignment, you are required to have a virtual machine named "ca0" running. It should be configured with the Amazon Linux operating system. You also need to configure it with the AWS free tier in mind.

Note: the AWS free tier for EC2 changed on July 15, 2025. If your account was created after July 15, 2025 use the t3.micro free tier instance. If your account was created before July 15, 2025, use the t2.micro EC2 instance to be free tier eligible.

3.2 Connect to the VM

Use ssh and the secret key obtained in the previous step. You might find ssh -i useful.

3.3 Add autograding access to the VM

Inside the VM go to the /home/ec2-user/.ssh/authorized_keys file and append the following key for use by the autograder:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAORDoNEnPakX83lU2uUDnMWQm4L4ytchU3Mi80Uw+H7

At this point, you should pass test cases 3.1 and 3.2.

4. Teardown

Make sure that you remove all resources you created after obtaining a full score on Gradescope. Pay particular attention to the fact that the free tier includes running instances. After you stop the instance, you are no longer charged usage or data transfer fees for it. However, you will still be billed for associated Elastic IP addresses and EBS volumes. Make sure to terminate (delete) any instances instead of stopping.