This slide set was from a talk I gave on June 13, 2013 at Windsor Hackforge (hackf.org).
It's aimed at current or aspiring software developers who are interested in learning about cloud computing in general, and how to get up and running on Amazon's AWS Platform.
Whether you're new to virtualization and cloud services, or already familiar with the concepts and looking to ramp up quickly on the AWS service stack, there will be some useful information for you in this presentation.
2. p42systems.com
Agenda
• Introduction to key concepts: virtualization
and cloud computing
• Introduction to core AWS services
• Demo: provisioning a new virtual machine
(VM)
Saturday, June 15, 13
3. p42systems.com
What is “the cloud” anyway?
• Means different things to
different people
• On demand resources
• Used mostly for servers
(web, database, application)
• Possible to run a desktop
environment
CPU
RAM Disk
Network
FOR RENT
Saturday, June 15, 13
4. p42systems.com
What can you do with it?
• Try out a new app in a clean, isolated environment
• Test an upgrade before doing it in production
• Development, staging and testing environments
• Run production servers (web, database, etc)
• Load testing without impacting production
• Access important software / data from anywhere
Saturday, June 15, 13
5. p42systems.com
What is aVirtual Machine?
CPU Disk Memory Video Sound
Keyboard
& Mouse
Hypervisor
Operating System Operating System
Saturday, June 15, 13
6. p42systems.com
Virtual Servers - Recap
• An operating system (Windows, Linux)
• Multiple “instances” on shared hardware
• EachVM is logically isolated from others
• Connected via network (also virtual!)
Saturday, June 15, 13
8. p42systems.com
Why Amazon?
• High seasonal resource peaks (Christmas)
• Lots of idle capacity for most of year
• Why not rent it out?
• Scale Out strategy is a cheaper way to run
high-demand software
Saturday, June 15, 13
10. p42systems.com
Elastic Computing Cloud (EC2)
• Virtual Servers: Linux or Windows
• Micro: 1 CPU, < 1 GB memory
• Huge: 32 CPU, > 1TB memory
• Fire upVMs on demand
• Many purpose-specific instance types:
High CPU, GPU, High Memory
Saturday, June 15, 13
11. p42systems.com
Geared for High Availability
• Not perfect uptime, better than most
• Built on cheap/commodity hardware
• Redundancy built into software layer
• Cheaper than hardware redundancy
• Most outages are human-caused anyway!
Saturday, June 15, 13
12. p42systems.com
Regions & Availability Zones
• VMs are deployed in regions
• Each region has multiple availability zones
• Data is stored in multiple availability zones
within a single region
• Developer is still responsible for multi-site
architecture (alternative: Heroku)
Saturday, June 15, 13
13. p42systems.com
Scale Up or Scale Out
• Scale up - Mount yourVM image on more
powerful hardware
• Scale out - Run multipleVMs with
Elastic Load Balancer (EBS)
Saturday, June 15, 13
14. p42systems.com
Amazon Machine Image (AMI)
• Preconfigured server environments
• “Virtual Appliance”
• Examples: LAMP server, Squid Proxy, Drupal
• Many free ones available, some require
additional charges - “software rental”
• Create your own AMIs
Saturday, June 15, 13
15. p42systems.com
Storage Considerations
• Be careful which AMIs you choose
• Ephemeral storage - data destroyed on
termination of instance
• Elastic Block Store (EBS) - persistent
storage, backed by S3
Saturday, June 15, 13
16. p42systems.com
But we’ve gotVMware!
• Can work just as well as a cloud service
• You are pre-buying capacity, whether you
need it or not
• Potential to impact productionVMs
(i.e. load testing, bandwidth constraints)
• Capacity constraints appear sooner than
most expect
Saturday, June 15, 13
17. p42systems.com
Programmatic Management
• Application Programming Interfaces (APIs)
• Manage your entire AWS infrastructure
programmatically
• Respond automatically to changes in
demand (scale out, scale back)
Saturday, June 15, 13
18. p42systems.com
Free Usage Tier
• 750 hours / month (24h x 31d) for 1 year
• Micro instance only
• Doesn’t have to be 1VM! Could be 10!
• Tip: Shut downVMs when not in use
Saturday, June 15, 13
19. p42systems.com
Costs
• Pay-as-you-go model
• Minimum charge: 1 hour
• Range from 1.9c per hour to $$$
• Prices lowered regularly
• Most services have a free usage tier
Saturday, June 15, 13