0% found this document useful (0 votes)
37 views

AWS Guide

An AWS EC2 instance is launched using the free tier. Anaconda and Jupyter Notebook are installed to allow linear regression modeling and analysis. Ordinary Least Squares and Ridge regression code examples are provided to demonstrate linear regression techniques in Python using scikit-learn.

Uploaded by

Giovani Alamini
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views

AWS Guide

An AWS EC2 instance is launched using the free tier. Anaconda and Jupyter Notebook are installed to allow linear regression modeling and analysis. Ordinary Least Squares and Ridge regression code examples are provided to demonstrate linear regression techniques in Python using scikit-learn.

Uploaded by

Giovani Alamini
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Welcome

to our walkthrough of
Setting up an AWS EC2 Instance
What is an EC2 Instance: An EC2 Instance is a virtual server in
Amazon’s Elastic Compute Cloud – EC2 – for running
applications on AWS infrastructure.

Part 1: Sign up, Set up and Connect

You need to sign up if you haven’t registered yet with AWS (and you can absolutely use
the free tier!) so head on over to https://aws.amazon.com/ec2/ to get started.

You can select the top right to sign


in to the console. This will allow you
to sign in or set up an account if you
do not have one.
Once you sign in or register you will log into the console on AWS and see the following:

Here you can select the launch a virtual machine with EC2 option (you can see my
recently visited services EC2) When you click on that option it will navigate you to a list of
instances for step 1.

Step 1: Choose an Amazon Machine Image


You will see a list of options open up and we are going to choose the Ubuntu Server, #5
in the list. Please find:

Now we have to go through the steps to finish the setup and to customize the instance. You
can follow along through each part. Since we are operating on the free tier we will be
operating with the services offered for that tier in Step 2: Choose an Instance Type:

Step 2: Choose an Instance Type


Amazon EC2 provides a wide selection of instance types optimized to fit different use
cases. Instances are virtual servers that can run applications. They have varying
combinations of CPU, memory, storage, and networking capacity, and give you felixibility
to choose the appropiate mix of resources for your applications.

We can now click on the next button (bottom right hand corner) we will move to

Step 3: Configure Instance Details


Here we can leave everything for the purpose of our tutorial on the default settings. Let’s
move on to the next step.

Step 4: Add Storage


The instance has a 30GB limit but for the purpose of our project we won’t need to use
all 30. Let’s use 16GB. The default size is 8 and you can change it to 16 by simply
entering 16 under the options for Size (GiB). When you are done setting the storage
move on to the next step.
Step 5: Add Tags
For the tags it’s not a requirement to establish any tags so you don’t have to assign them
but it may help you manage your instances on Amazon but if you would like more
information about tags please see here:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html?
icmpid=docs_ec2_console

Step 6: Configure Security Group


This option allows you to assign a security group to the AWS EC2 instance. One of key
pieces of information here is establishing the Source or the IP addresses that are allowed to
connect to the instance. I recommend listening to the warning by Amazon that states:

You can change the source to My IP so that it uses your IP and doesn’t allow all IP
addresses to access your instance.

Almost there!

Step 7: Review
Creation of the .pem file. This is important so please follow the following instructions before
launching the instance.

Create a new key pair which will download a file (make sure you download the key pair) as
it’s used to access the instance. Save this file and make sure it’s in a secure location as it will
needed each time to connect. You can create a folder so that it makes navigating to the
.pem file easier. In the walkthrough video I created a folder that I can navigate/CD to in the
future in the terminal so that the .pem when connecting.

I have a key pair created and named it awsec2-test. You can give it the name that you would
like but again save the file in a location that you can navigate to as you will need to be in
that location to access the instance.
Once you have the key pair downloaded, you can launch the instance. It will navigate
you to our next step.

Step 8: Review Instance Launch


Here you can review the steps that we went through to set up the instance. If everything
looks acceptable we can click Launch. Give the instance a moment to start after launching it.
It will bring you after launch to a page such as:

In the bottom right hand corner click the blue button for View Instances. Here you will find the
instances that you set up (I have a few already and if this is your first you will only see one). For
example you can see instances running and terminated. When you are ready to connect to
your instance click on the box next to the name of the instance you have running and then
click on connect.

Again click on the selector for the name and it will open the option to connect. This will open
up a list of directions and instructions on how to connect.
Now we are ready to connect using the directions that AWS EC2 provides.
Since i’m using the Mac OS I will be operating in the terminal using SSH. If you are on Linux
you can use the SSH option and on Windows you can see the use of Putty (click the link in the
instructions for using PuTTY). Now we can open up a terminal and navigate to the location
that the .pem file is in. I stored my .pem in a folder, so I will CD there.

Once you are located in the directory of the .pem file you can use the instructions from
Connect to Your Instance. You can copy and paste in the terminal the example as it will work
in most cases. Yours will be different depending on the names and settings but copy the
example from your output message. Mine is:
Navigate back to the terminal and paste the command in and run it. You can authenticate it
if it has the message pop up for ECDSA but typing in yes. If you have any connectivity
issues, check the IP/security settings that you used.

If a public key error displays as in the video use the connect directions, specifically step 3:
3. Use the chmod 400 awsec2-test.pem command in the terminal and then re-run the ssh
connection.

With that you will be connected to the Ubuntu AWS EC2 Instance. Great Job!

Part 2: Anaconda, Jupyter and Regression

Since we have our EC2 instance connected we have to treat it as a brand new OS to run
our linear regression and we will use Anaconda to install the required packages along with
Jupyter notebooks.

Step 1: Install Anaconda


Run the wget command and Anaconda distribution to download. We are using a
Linux/Ubuntu OS and 64 bit so we will use:
wget https://repo.continuum.io/archive/Anaconda3-5.1.0-Linux-x86_64.sh
You can also find other versions here as well for reference:
https://repo.continuum.io/archive/index.html

Step 2: After the download please run:


bash Anaconda3-5.1.0-Linux-x86_64.sh

This will bring up the license information and options along with the installation path along
with prepending the installation path to the bash file.

You do not need to install VS code for the purpose of this tutorial. You can enter clear in the
terminal to remove the information so that you have a clean terminal.

Step 3: We need to use the following command due to a possible


conflict with javascript:
jupyter notebook --no-browser –port=8888

Step 4: Open a new terminal and run the following:


*Note that the awsec2-test is the pem file created and the direction of ubuntu@ec2-etc is
from the directions specified to connect to your instance, so it will be different but look
something like the example and info in #4 below:

ssh -i awsec2-test -L 8000:localhost:8888 ubuntu@ec2–54–172–178–44.compute-1.amazonaws.com


Step 5: Open a Jupyter notebook in the browser
Open a browser and navigate to the following directions:

localhost:8000

Navigate back to the terminal where you can find the token information (the first and
original terminal that we were operating from). Use the token information to log into your
Jupyter notebook.

Congratulations! You are now working in a Jupyter notebook and can run the
regression code below!

To help understand linear regression further from:


http://scikit-learn.org/stable/modules/linear_model.html

"LinearRegression fits a linear model with coefficients to minimize the


http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Linea
rRegression.html#sklearn.linear_model.LinearRegression

residual sum of squares between the observed responses in the dataset, and the responses
predicted by the linear approximation. Mathematically it solves a problem of the form:

OLS – Ordinary Least Squares code:

from sklearn import linear_model


reg = linear_model.LinearRegression() reg.fit ([[0, 0], [1, 1], [2, 2]], [0, 1, 2])
reg.coef_

Ridge regression code:

from sklearn import linear_model


reg = linear_model.Ridge (alpha = .5) reg.fit ([[0, 0], [0, 0], [1, 1]], [0, .1, 1]) reg.coef_
reg.intercept_

http://scikit-learn.org/stable/modules/linear_model.html

You might also like