Introduction to EC2
Upcoming SlideShare
Loading in...5

Introduction to EC2



General high level overview of Amazon EC2, reviewing pricing

General high level overview of Amazon EC2, reviewing pricing



Total Views
Views on SlideShare
Embed Views



2 Embeds 9 8 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Introduction to EC2 Introduction to EC2 Presentation Transcript

    • Introduction to ec2
      Mark Squires II – RAMP51
      Charlotte ALT.NET
      Target Audience: Senior Developers/Architects
    • Amazon Web Services
      Provider of scalable infrastructure services
      Core Cloud Services
      Elastic Compute Cloud (EC2)
      Push/Pull Messaging (SQS/SNS)
      Simple Data Service (SDB)
      Durable Storage (S3)
    • My Favorite Thing About AWS
      What I love most about AWS is it’s the only service I pay for monthly that routinely sends me emails with good news.
      Its always one of two possible emails
      We have lowered our prices
      We have added features
    • Not in this powerpoint
      Information about non EC2 services
      Security groups
      Snapshots,or AMI’s
      However, we can talk about some of these things. I just wanted to prevent a 200 slide deck.
    • AWS Platform Overview
      Courtesy of Mike Culver at AWS. (Approved Usage By AWS)
      This is actually outdated, as there is a 5th region now in Japan
    • What is EC2?
      Primarily Ec2 is the service that will provide you with a virtual instance that you can remote into (RDP/SSH)
      Create an instance
      Create a machine image
      Create a load balancer
      Create snap shots of your disks
      Create static ip address
      Ability to swap drives and ip addresses between instances
      Ability to use SSL Termination at the load balancer
      Ability to define intricate security groups and firewall rules between security groups and for external CIDR blocks
      Ability to monitor instances and create alerts
      Ability to load balance across multiple physical data centers
      Ec2 does some other things too that are out of the scope of this presentation.
    • Components of EC2
      Elastic Block Store (EBS) – storage
      EBS Snapshotting
      Amazon CloudWatch – monitoring
      Amazon Machine Images
      Auto Scaling – horizontal scaling
      Elastic Load Balancing
      Virtual Private Cloud – vpn bridge
      Elastic IP Address
      High Performance Compute Clusters
      VMWare Image Import
    • Designed Expecting to Fail
      The cloud is NOT designed to prevent failure, but to anticipate failure
      While nearly any application can be deployed to EC2 the best applications for EC2 have already been designed expecting failures
    • Non-Committal
      No long term commitments required
      Free to play the field
      Mix and Match cloud services and cloud providers
    • What you get?
      The price of an instance is based on attributes of the type of instance you created.
      Windows costs more than Linux. (Amazon kindly includes the cost of your windows license in the price)
      More memory, more CPU drive up the hourly cost
    • What’s included?
      When you buy an instance you are renting:
      A fixed allotment of CPU measured in Elastic Compute Units (ECUs)
      A fixed allotment of Memory (RAM)
      Some instance types offer a fixed allotment of temporary ephemeral storage
    • Instance Type Classes
      t1.micro(*up to 2 ECU)
      m1.small(1 ECU)
      m1.large(2 ECU * 2 core)
      m1.xlarge(2 ECU * 4 core)
      High Memory
      m2.xlarge(3.25 ECU * 2 core)
      m2.2xlarge(3.25 ECU * 4 core)
      m2.4xlarge(3.25 ECU * 8 core)
      • High Compute
      • c1.medium
      • c1.xlarge
      • Cluster Compute
      • cc1.4xlarge
      • Cluster GPU
      • cg1.4xlarge
      *t1.micro is burstable, you share
      the CPU with others and get any
      unused cpu Cycles when needed
      Nodes in yellow are 32-bit, other are 64-bit
    • Geez. What does it cost?
      There is a sea of pricing options making it very flexible.
      You can get very creative in how you manage these costs.
      There are three major pricing schemes for an EC2 instance.
      On-Demand Pricing
      Reserved Pricing
      Spot Pricing
    • It’s Priced Hourly
      These prices are only for one particular instance size, the T1.MICRO which is the smallest & cheapest instance type
      The pricing plans are not only different in pricing, but also have differences in instance availability
    • An Instance Hour
      Each hour or partial hour you are using any EC2 Instance counts as an “Instance Hour” you are billed by the instance hour
    • On Demand Pricing
      Request an instance on demand and use it until you are done with it
      More expensive than other pricing options from an hourly perspective
      Contingent on Capacity, if AWS has no available capacity for the instance type in the availability zone that you requested, you will get an “out of capacity” error.
    • Reserved Pricing Plan
      Requires a 1 year or 3 year commitment and a corresponding commitment fee
      Can’t be used on SQL Server Standard instances
      Usually saves ~30-55% for instances that are run continually (24x7)
      Guarantees you that an instance for your reservation type in the AZ of your reservation will always be available upon your request
    • UnderstandingReserved Pricing
      Reserved Pricing Doesn’t buy you another instance
      Assume you use a Linux t1.micro instance 24x7 for an entire year ON-DEMAND. You are paying for 24*365=8760 instance hours @ $0.02
      $175.20 per year
      If you buy a “1 Year Reservation” for a Linux t1.micro instance, you have simply bought the right to pay $0.007 per hour for ~8760 instance hours during the next year instead of $0.02 per hour.
      It doesn’t apply to any particular ec2 instance, it’s more of a billing discount, the 1 year reservation you just purchased will be automatically apply to one of your existing instances that match the reservation criteria
      It does however guarantee that at least one type of this instance will be available for your use whenever you need it
    • Spot Pricing
      How Amazon monetizes all it’s available resources
      Works like the stock market
      More Demand = Higher Price
      Bid based model, people who Bid more will steal resources from the person with the lowest bid
      Should only be used to host applications that have tolerance for being randomly shut down without notice
      Usually the cheapest pricing, but not always
    • ASP.NET on EC2
      Easily load balance your ASP.NET app using an EC2 Elastic Load Balancer
      SQL Server can be costly unless your application can run on SQL Server Express
      RAMP51 is currently running multiple websites using
      1 – ELB (to allow easy horizontal scaling)
      1 - t1.micro
      1 - m1.small (hosting SQL express)
      1 – db.m1.small MySQL RDS Instance
      1 – Simple DB Database
    • Creative Cost Savings
      Horizontal scaling up of application tiers during peak hours and down during slow hours, reducing instance hours to be paid for; via Auto Scaling groups or Spot Instance Tier Blooming (I made this term up I think)
      Spot Instance Tier Blooming
      Blooming your web tier with extra instance based on spot pricing, for example (add as many t1.micro instances to my web tier as I can get for $0.10/hr during the hours of 9am est – 5pm est
      Not sure any applications exist yet that will do this but its an idea I’ve been pondering
    • More Cost Savings
      Using MySql via Amazon RDS
      Using SimpleDB Service
      Using a SQL Azure instance from your EC2 Instance (haven’t tested latency of this)
      Moving web assets onto S3/CloudFront reducing bandwidth costs and load on instances
    • Instance Management
      All instances have basicCloudWatch monitoring which monitors IO, CPU, Memory
      Detailed monitoring is available which monitors at a higher interval than basic
      AWS is driven by a powerful set of APIs so you either need to write code or use a tool to manage your AWS resources
    • Major Tools Available
      ElasticFox – Firefox plugin, which I happen to prefer for most tasks
      Open source, but it appears Amazon stopped updating it mid 2010
      There is probably some space for another open source version aside from elastic fox
      Amazon Web Console – supports a lot of management functions
      Does more than elasticfox
      Useful for many services not just EC2
      Command Line Tools available for all services. The command line tools are usually the first to support new features.
    • Auto Scaling
      EC2 offers the ability for you to automatically scale a group of services up and down based on a metric
      For example, you have an auto-scaling group that has 2 instances serving web requests
      You could define an auto-scaling rule such as: if the avg. CPU usage exceed 85% for longer than 5 minutes add 2 more instances, and when the avg. CPU drops below 50% for more than 20 minutes shut down two instances
      There are a wide variety of configurations you can create that can leverage a number of metrics
    • Demonstration
      Auto-Scaling an ASP.NET App that writes to Simple DB for shared data access
    • Setting up CMD Tools
      IAM Tools
      EC2 Tools
      ELB Tools
    • Useful Links
      EC2 Overview
      EC2 Pricing
      AWS Blog
      AWS SDK for .NET
    • Contact Info
      Mark Squires