Getting Started with AWS Adam Glick
Jan 15, 2015
Getting Started with AWS
Adam Glick
Agenda:
• Fundamental pillars of the AWS cloud
• The typical cloud user progression
• Getting started walk-thru
• Q&A
Fundamentals of the AWS Cloud
Global Presence Complete Set
of Services
Instant Access
to Resources Low Cost IT
Flexibility
Productive
What is Available from AWS
AWS Global Infrastructure
Application Services
Networking
Deployment & Administration
Database Storage Compute
Typical Startup Growth Cycle
Colocation
Server room
Cloud $
$
Create Share Deploy Scale up Scale out Manage & Optimize
Server PC
Shortcut
Elastic Beanstalk
• Supports common platforms:
• Java, Ruby, Python, PHP, Node.js, .Net
• Automatic deployment; upload and go.
• No infrastructure planning needed; handles: load
balancing, virtual machines, databases,
monitoring, etc.
• Resources are automatically allocated
• Scales automatically (horizontally)
Free tier
• Includes most of the AWS services
• Available for all new account
• Good for one year from the day the account is created
• Everything we show today can be done within the free
tier
• More details at http://aws.amazon.com/free
FREE
Let’s Get Started:
We’ll learn how to: – Set up an AWS account
– Create your SSH keys (used to log into your instances)
– Create a security group (firewall)
– Start an EC2 instance (virtual machine)
– Connect to your EC2 instance
– Create a CloudWatch alarm to email you if your server is under heavy load
– Take a snapshot (backup) of your instance and restore it
– Use S3 (Internet connected storage)
Sign Up
• Sign up though https://aws.amazon.com
• You need a CC
• There will be a phone verification
Demo Signing Up for AWS
Creating your SSH Key
• SSH stands for Secure Shell
• SSH keys are used for secured access to EC2 (Linux)
• SSH keys avoid password weaknesses
• Can import your own or use AWS created keys
Demo Creating SSH Keys
Creating a Security Group
• Security Groups are firewalls for your instances
• By default, the Security Group blocks everything
• Choose which protocols & ports are open – Can use port ranges (e.g. 22-24)
• Choose which addresses the ports are open to – Uses CIDR rules for IP address access
– (use /32 for allowing a single address)
Demo Creating a Security Group
Start a New Instance
• Instances are virtual machines running in the cloud
• You have full control of the instance and can install
any software that you choose
• In this process, you define what kind of machine you
want (processing power, HD space, etc.)
• You will need: – A Key Pair to connect to your instance via SSH
– A Security Group to put your instance in
Demo Starting an EC2 Instance
Select Choose one or more of your existing Security groups
Connecting to EC2 Instances
• SSH is used to connect to Linux – There is a Java-based terminal available in the EC2 Console
– Linux/OSX: Terminal
– Windows: PuTTY
– Note: If you are using an Linux distribution that has a GUI, you can use a remote GUI tool like VNC
• Remote Desktop is used to connect to Windows – Windows: MSTSC (Microsoft Terminal Services Client)
– Linux/OSX: 2X client
– Note: you can also use Remote PowerShell or a 3rd party shell extension with Windows.
Connecting to a Linux Instance (from Linux/OSX)
• Open a terminal window
• ssh -i {ssh private key location} ec2-
user@{public DNS name}
Connecting to a Linux Instance (from Windows)
• Download/Install PuTTY – http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
• Convert .pem file to .ppk with puttygen
• Create a connection in PuTTY
Connecting to a Windows Instance (from Windows)
• Open a Remote Desktop connection
• Windows + r or start and then the “run” option
• mstsc /v:{EC2 instance public DNS Name}
Demo Connecting to a Linux EC2 Instance
from Windows
Demo Connecting to a Linux EC2 Instance
CloudWatch
• CloudWatch provides monitoring information for your EC2 instances
• CloudWatch allows you to specify actions to take when a condition is met – Example 1: Send an email when CPU Utilization >80% for 5
minutes
– Example 2: Add another machine to an Auto-Scaling Group if Average Disk Read IOPS across an Auto-Scaling Group exceeds 500
– Example 3: Remove a machine from an Auto-Scaling Group if Network input drops below 2,000 Bytes
Demo Creating a CloudWatch Alarm
Additional Information
• CloudWatch works with Auto-Scaling
• When you have defined an Auto-Scaling Group,
CloudWatch Alarms can be used to increase
and decrease the resources in the Auto-Scaling
Group.
Elastic Block Storage
• Elastic Block Storage (EBS) is block level
storage for EC2 instances (think HDD)
• EBS volumes can be removed and re-attached
• Custom volume sizes from 1TB – 1 GB (RAID
for larger)
• Use Provisioned IOPS for predictable I/O
Demo Backing up an EBS volume
Restoring a Snapshot / Creating an AMI
• AMIs are Amazon Machine Images
• AMIs are bootable versions of a snapshot (backup)
• AMIs are private, but you can choose to share them
with others
Demo Creating an AMI / Restoring a Snapshot
S3
• S3 is Amazon’s Simple Storage Service
• Store and retrieve almost any amount of data – 1 Byte to 5 Terabytes
• Highly scalable
• Highly durable – Regular S3 has 99.999999999% durability
– Reduced Redundancy Storage (RRS) offers 99.99% durability at discount
• Encryption available – At rest and for ingest/delivery
• Storage is isolated by region
• Object level permissions
• Easily Accessible – Web (HTTP/HTTPS)
– P2P (BitTorrent)
– APIs (REST & SOAP)
Demo Using S3
Summary
• We covered: – Signing up (and in) with AWS
– Creating SSH Keys (not needed for Windows)
– Configuring a Security Group (setting firewall rules)
– Creating an EC2 instance
– Connecting to an EC2 instance
– Creating a snapshot of your instance (Taking a backup)
– Restoring a snapshot of your instance (Creating an AMI)
– Setting a CloudWatch Alarm
– Creating an S3 bucket, uploading a file, & making the file public
Thank You!
Interested to Learn More?
Sign up for the next webinar in the series at:
http://aws.amazon.com/about-aws/events/
Questions?
Also engage with us at:
Twitter: @AWSCloud
Forums: https://forums.aws.amazon.com