18-746 Storage Systems (Fall 2021): FAQ

FAQs will be posted here. Keep checking this page.


The lectures for this class will be delivered through Zoom. We will post recordings of the lectures which will be accessible with your Andrew credentials for the duration of the semester. As per our course policy, downloading the lecture recordings is prohibited. Office hours will also be held via Zoom. See below for more information.

Please follow the steps below to set up your Zoom account and your Zoom client. Do this well ahead of the lecture time and office hours, and if you face difficulties, post on Piazza or email us at the course mailing list for help.

Setting up your Zoom account

Setting up your Zoom Desktop Client

Zoom lectures: The Zoom link for lectures is available on Canvas under the 'Home' tab. You must be authenticated to your CMU Zoom account to join. Please make sure you have followed our instructions to ensure that Zoom is properly installed and configured on your system, and use the course mailing list or Piazza to resolve any issues.

Recordings: After the lecture we will be posting lecture recordings through Canvas, under the 'Panopto Recordings' tab. As per our course policy, downloading, screen-capturing, or making a local copy in any other way of the lecture recordings is prohibited. If you cannot see the slides during the lecture, please work with us thru Piazza to fix that.

Office Hours: To provide one-on-one time with the course TAs during Office Hours, we will need you to join a queue to ask your question. We will be using Office Hours Queue (OHQ) to form a queue, and Zoom for your interaction with the TAs. Please read the following instructions carefully.
  1. Submit your question on https://cmu.ohqueue.com/ (Queue: 18-746)
  2. Join the waiting room via Zoom. The link is available through the Home page on Canvas
  3. Set your name in the Zoom profile to match your name in the "Office Hour Queue"

Tips for productive office hours


Gen.Q1: The project does not compile and I cannot run any tests.

Please follow the direction in the “Using Amazon Web Services” section to spin up an AWS instance with the development environment.
The project setup should work within the AWS instance that we provided for the project, and you should have no expectation that it will work anywhere else. If you are trying to run it anywhere else, it probably won’t work and, even if it does, you must ensure your code works in the AWS instance as the instructors will use it to grade your work.

Gen.Q2: What is the autolab website for 746?

The autolab website is autolab.pdl.cmu.edu.

Gen.Q3: Do we get any grace days? How many?

You have a total of three grace days (i.e., unpenalized late days) for the entire semester. Each checkpoint has a due date and an end date. Grace days can be used to avoid late penalties for submissions past the due date. No submissions are accepted after the end date.

Gen.Q4: How many submissions do we have per checkpoint? Autolab shows infinite submissions remaining.

You are allowed 25 submissions per checkpoint. Any additional submission after the first 25 submissions will incur a penalty of 10% of that checkpoint grade. Autolab shows infinite submissions because we do not impose a hard limit, but rather have a penalty per submission. You can easily check the number of submissions you have already made by scrolling down the checkpoint-submission page, as well as looking at your handin history via 'View Handin History' on the left panel.

Gen.Q5: Will we be graded on code quality for the checkpoints? Do we have a code style guideline?

You should always keep your code in good style, which is generally the requirement of CMU courses (and all jobs in the real world). The style for checkpoints will be inspected and graded after the entire project is completed. In general, you should follow 15213 guidelines for code style.

Exceptions to the 15213 guidelines:

Gen.Q6: What is the password for the user account in the AWS instance? I want to install a package.

We do not provide sudo permission for students in the project VM. There are ways to install packages without root privileges if needed. If you insist on using third party tools or library in your code, you adopt any risk of your code not working when it is submitted to Autolab. Please make sure it will pass the tests on Autolab, so that you are not surprised by your score.

Gen.Q7: How can we find out more about a particular aspect of the lab?

Have you carefully read the handout? :)

Gen.Q8: I can’t access to the course materials on the web page (“Access forbidden”).

Course materials are only accessible within the CMU network. You need to use CMU’s VPN services when accessing from off-campus.

Using Amazon Web Services (AWS)

Read the following guide before starting on any project development, and make sure your AWS account is working.
You must ensure your code works in the AWS instance as the instructors will use it to grade your work.

aws.Q1: Setup and Billing

  1. Create an AWS account here if you don't have one already. Make sure you use your Andrew email address when you create your AWS account
  2. Once you have created your AWS account, please go ahead and join AWS Educate. To do that, click here and select "Join AWS Educate today", then "Apply for AWS Educate for Students". Join AWS Educate only if you have not done so previously for a different class. Designate that you are a student, and fill the form that comes up.
    Note: Some of you may also be taking the 15-619 (Cloud Computing) class concurrently, and your Andrew email might already be tied to it. If that’s the case, use a different email address (e.g., @cs.cmu.edu, @cmu.edu, @gmail) to create a new AWS account. You don't need to do so if you have taken 15-619 in a previous semester.
  3. If your account is new, it comes with 750 hours/month (for 12 months) of free instance time. You need to use the "Free-Tier" instances in order to take advantage of that promotion.
  4. If you need AWS credits for the course, enter your Andrew ID in this Google spreadsheet. If you are registered with the class we will be emailing you a $50 voucher. You can start using AWS without the voucher, since Amazon will not bill you until the end of the month.
  5. To monitor your billing and usage, sign in to your AWS account, click on the drop-down menu with your account name and click on "My Billing Dashboard".
Warning: Make sure to protect your AWS credentials! Do not share or expose them to others online. If your AWS account is compromised and unauthorized charges are made to your credit card, we will be unable to help.

aws.Q2: Starting your AWS instance

  1. Sign into your AWS account.
  2. Click on EC2 under "Compute Services" to be taken to the EC2 Dashboard.
  3. On the right corner of the top bar, click the second drop-down menu from the right to select the datacenter you will be using. Select "N. Virginia".
  4. In the sidebar on the left, click on "AMIs" under the "Images" group.
  5. Click on the drop-down menu under "Launch" and select "Public images".
  6. Use the bar to the right of the drop-down menu to search for '746-update10-devCopy'. Double-check that the image owner is '169965024155'. This is the VM image for the course. Use the refresh button at the top right if the image doesn't show up right away.
  7. Select the AMI, and click "Launch".
  8. Make sure the "t2.micro" instance type is selected (which is also Free-tier eligible, if you are using a new account that benefits from that promotion).
  9. Click "Review and Launch".
  10. On the next screen click "Launch".
  11. In the first drop-down menu select "Proceed without a key pair", and check the checkbox. To access the instance, you will need this key. (If you get "access forbidden" message, make sure that you are on campus and using CMU-secure wifi, or you are connected to CMU VPN.)
  12. Click "Launch Instances", and on the next screen click "View Instances"
  13. In the EC2 Dashboard Instances screen wait for your VM instance state to transition to "running", and the VM status checks to indicate "2/2 checks passed".
  14. Select your instance and check the 'Public DNS' column. Make a note of the machine's FQDN, which will be of the form X.compute-Y.amazonaws.com
  15. From your terminal, run:

    ssh -Y -i "path/to/746-student.pem" student@X.compute-Y.amazonaws.com

    • Make sure the path passed to the -i option points to the 746-student.pem key pair you downloaded from the course website
  16. Run the ssh command to connect to your instance!

aws.Q3: Securing your AWS instance

It is a good idea to change the key you use to login to your AWS instance, and stop using the 746-student.pem which the AWS template comes configured with. To do so, we provide a simple script: make_secret_key.sh which will generate a new key and use it to replace 746-student.pem on your instance. Note that if you terminate your instance and create it again from the template image, you will have to run this script again.

aws.Q4: Terminating your AWS instance

When you are done using your VM, you can stop it or terminate it. You can stop your VM by running the shutdown command from within Ubuntu, or using Actions → Instance State → Stop.

Be warned that when your VM is stopped it still consumes resources, which will lead to usage charges for EBS storage (and you may run out of your credit faster). Instead of stopping your VM, make sure to copy out your source code when you're done, and then terminate your instance. You can do that via Actions → Instance State → Terminate.

Last updated: 2021-09-08 01:51:11 -0400