Amazon Web Services

Document Sample
Amazon Web Services Powered By Docstoc
What is Cloud computing

 Cloud computing is a general term for anything that involves
 delivering hosted services over the Internet. These services are
 broadly divided into three categories: Infrastructure-as-a-
 Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-
 a-Service (SaaS). A cloud service has three distinct
 characteristics that differentiate it from traditional hosting. It is
 sold on demand, typically by the minute or the hour; it is elastic
 -- a user can have as much or as little of a service as they want
 at any given time; and the service is fully managed by the
      Types of Cloud :
   A cloud can be private or public. A public cloud sells services
    to anyone on the Internet. (Currently, Amazon Web Services is
    the largest public cloud provider).
   A private cloud is a proprietary network or a datacenter that
    supplies hosted services to a limited number of people. When
    a service provider uses public cloud resources to create their
    private cloud, the result is called a virtual private cloud.
   Private or public, the goal of cloud computing is to provide easy,
    scalable access to computing resources and IT services.
    requirements change.
      Introduction :

   Amazon Elastic Compute Cloud (Amazon EC2) is a web service that
    provides resizable compute capacity in the cloud.
   Amazon EC2’s simple web service interface allows you to obtain
    and configure capacity with minimal friction. It provides you with
    complete control of your computing resources and lets you run on
    Amazon’s proven computing environment.
   Amazon EC2 reduces the time required to obtain and boot new
    server instances to minutes, allowing you to quickly scale capacity,
    both up and down, as your computing requirements change.
   Amazon EC2 changes the economics of computing by allowing you
    to pay only for capacity that you actually use.
Overview of cloud computing including Google, Salesforce, Amazon, Microsoft,
Yahoo & Zoho

   Amazon Elastic Compute Cloud (also
    known as "EC2") is a commercial web
    service that allows customers to rent
    computers on which to run their own
    computer applications.
   A customer can create, launch, and
    terminate server instances as
    needed, paying by the hour for
    active servers, hence the term
   A customer can set up server
    instances in zones insulated from
    each other for most failure causes so
    that one may be a backup for the
    other and minimize down time
What is Amazon EC2
 Amazon EC2, S3 along with other components for a
  Cloud infrastructure
 EC2, provides a resizable compute capacity over
  the cloud using web services
 Designed to make web scale computing easier for

  various needs
Amazon EC2 service highlights
   Elastic
   Completely controlled
   Flexible
   Designed for use with Amazon Web services
   Reliable
   Secure
   Inexpensive
   On Demand instances
   Reserved instances
Amazon EC2 functionality
   Use webservices interface to launch instances with variety of
    operating systems, load them into your custom application
    environment, manage your network access permissions and run your
    image using as many few systems as you desire
   To use Amazon
       Create Amazon Machine Image
       Upload AMI into Amazon S3
       Use Amazon EC2 to configure network security and access
       Choose instance types and operating system. Start/terminate and
        monitor your instances using webservice api’s
       Determine whether you want to run in multiple locations, utilize static IP
        endpoints, or attach a persistent block storage for your instances
       Pay only for resources you consume, like instance hours and data transfer
Amazon EC2 Features
 Amazon Elastic Block store
 Multiple Locations

 Elastic IP Addresses

 Amazon Cloud Watch

 Auto scaling

 Elastic Load Balancing
    Features - EC2

   Amazon Elastic Block Store (EBS) offers persistent storage for
    Amazon EC2 instances. Amazon EBS volumes provide off-instance
    storage that persists independently from the life of an instance.
   Amazon EBS volumes are highly available, highly reliable volumes
    that can be attached to a running Amazon EC2 instance and are
    exposed as standard block devices.
   Amazon EBS volumes offer greatly improved durability over local
    Amazon EC2 instance stores, as Amazon EBS volumes are
    automatically replicated on the backend (in a single Availability
   Amazon EBS provides the ability to create point-in-time
    consistent snapshots of your volumes that are then stored in
    Amazon S3, and automatically replicated across multiple
    Availability Zones.These snapshots can be used as the starting
    point for new Amazon EBS volumes, and can protect your data for
    long term durability.
    Multiple Locations

   Amazon EC2 provides the ability to place instances in
    multiple locations.Amazon EC2 locations are composed of
    Regions and Availability Zones.
   Availability Zones are distinct locations that are
    engineered to be insulated from failures in other
    Availability Zones and provide inexpensive, low latency
    network connectivity to other Availability Zones in the
    same Region.
   By launching instances in separate Availability Zones, you
    can protect your applications from failure of a single
    location. Regions consist of one or more Availability Zones,
    are geographically dispersed, and will be in separate
    geographic areas or countries, Europe and USA.
    Elastic IP Addresses

   Elastic IP addresses are static IP addresses designed for dynamic
    cloud computing. An Elastic IP address is associated with your
    account not a particular instance, and you control that address
    until you choose to explicitly release it.
   Unlike traditional static IP addresses, however, Elastic IP
    addresses allow you to mask instance or Availability Zone failures
    by programmatically remapping your public IP addresses to any
    instance in your account.
   Rather than waiting on a data technician to reconfigure or
    replace your host, or waiting for DNS to propagate to all of your
    customers, Amazon EC2 enables you to engineer around
    problems with your instance or software by quickly remapping
    your Elastic IP address to a replacement instance.
Amazon CloudFront
   Amazon CloudFront is a web service for content delivery. It integrates
    with other Amazon Web Services to give developers and businesses an
    easy way to distribute content to end users with low latency, high data
    transfer speeds, and no commitments.
   Amazon CloudFront delivers your content using a global network of edge
    locations. Requests for your objects are automatically routed to the
    nearest edge location, so content is delivered with the best possible
   Amazon CloudFront works seamlessly with Amazon Simple Storage
    Service (Amazon S3) which durably stores the original, definitive
    versions of your files. Like other Amazon Web Services, there are no
    contracts or monthly commitments for using Amazon CloudFront – you
    pay only for as much or as little content as you actually deliver through
    the service.
Amazon CloudFront Functionality

 In Amazon CloudFront, your objects are organized into distributions. A distribution specifies the location of the
 original version of your objects. A distribution has a unique domain name (e.g. that you can use to reference your objects through the network of edge locations.

 To use Amazon CloudFront, you:

    Store the original versions of your files in an Amazon S3 bucket.

    Create a distribution to register that bucket with Amazon CloudFront through a simple API call.

 Use   your distribution’s domain name in your web pages or application. When end users request an object

 using this domain name, they are automatically routed to the nearest edge location for high performance

 delivery of your content.

    Pay only for the data transfer and requests that you actually use.
    Auto Scaling

   Auto Scaling allows you to automatically scale your Amazon
    EC2 capacity up or down according to conditions you
   With Auto Scaling, you can ensure that the number of
    Amazon EC2 instances you’re using scales up seamlessly
    during demand spikes to maintain performance, and scales
    down automatically during demand lulls to minimize costs.
    Auto Scaling is particularly well suited for applications
    that experience hourly, daily, or weekly variability in
    Amazon Simple Queue Service

   Amazon Simple Queue Service (SQS) provides access to the reliable
    messaging infrastructure used by Amazon. You can send and retrieve
    messages from anywhere using simple REST-based HTTP requests.
   You can create an unlimited number of queues and send an unlimited
    number of messages. The messages are stored by Amazon across
    multiple servers and data centers to provide the redundancy and
    reliability you need from a messaging system.Each message can contain
    up to 8KB of text data.
    The only Unicode characters that are legal in a message are #x9 | #xA |
    #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to
    #x10FFFF].Each queue can have a configurable visibility timeout, which
    is used to control access to the queue by multiple readers.Once an
    application reads a message from the queue, the message will not be
    visible to any other readers until the timeout period expires.
    AWS Management console

   A Web-based Interface to
    Manage Your Services.Access
    and manage Amazon’s
    growing suite of
    infrastructure web services
    through our new point-and-
    click, web-based user
    interface. The AWS
    Management Console gives
    you a quick, global picture of
    your cloud computing
    environment so that you can
    see what resources you’re
    operating and conveniently
    manage those resources.
AWS Dashboard

   The AWS Management
    Console provides a
    graphical user
    interface for Amazon
    EC2, Amazon Elastic
    MapReduce, and
    Amazon CloudFront,
    with additional
    Amazon infrastructure
Available instances - Cloud

   EC2 uses Xen virtualization.
    Each virtual machine, called
    an "instance", functions as a
    virtual private server in one
    of three sizes; small, large or
    extra large.
    sizes instances based on "EC2
    Compute Units" — the
    equivalent CPU capacity of
    physical hardware.One EC2
    Compute Unit equals 1.0-1.2
    GHz 2007 Opteron or 2007
    Xeon processor.
AMI -Amazon Machine Images

   An Amazon Machine Image (AMI)
    is simply a packaged-up
    environment that includes all
    the necessary bits to set up and
    boot your instance. Your AMIs
    are your unit of deployment. You
    might have just one AMI or you
    might compose your system out
    of several building block AMIs
    (e.g., webservers, appservers,
    and databases).Once you create
    a custom AMI, you will need to
    upload it to Amazon S3.
EBS – Elastic Block Store

   Amazon EBS volumes are
    created in a particular
    Availability Zone and can be
    from 1 GB to 1 TB in size. Once
    a volume is created, it can be
    attached to any Amazon EC2
    instance in the same Availability
    Zone. Once attached, it will
    appear as a mounted device
    similar to any hard drive or
    other block device. At that
    point, the instance can interact
    with the volume just as it would
    with a local drive, formatting it
    with a file system or installing
    applications on it directly.
    AWS -Security Group
   The Security Group defines
    which ports are opened in
    Amazon's firewall to allow
    incoming connections to your
    instance. For sub-accounts, the
    default group we provide allows
    ingress on the SSH, HTTP, and
    HTTPS ports (22, 80 and 443
    respectively).Instances within
    the same security group will be
    able to communicate with each
   Amazon Security Groups are EC2
    region-specific.You cannot use a
    Security Group that you created
    in EC2-US for an instance in EC2-
Amazon Simple Storage Service (S3)‫‏‬

   Amazon S3 is storage for the Internet. It
    is designed to make web-scale
    computing easier for
    developers.Amazon S3 provides a
    simple web services interface that can
    be used to store and retrieve any
    amount of data, at any time, from
    anywhere on the web. Store any
    amount of data inexpensively and
    securely, while ensuring that the data
    will always be available when you
    need it.
    Amazon S3 Features

   Reliability:It is designed to tolerate failures and repair the system very
    quickly with minimal or no downtime. Amazon provides a service-level
    agreement (SLA) to maintain 99.99 percent availability.
   Simplicity:S3 is built on simple concepts and provides great flexibility
    for developing your applications. You can build more complex storage
    schemes, if needed, by layering additional functions on top of S3
    Scalability:The design provides a high level of scalability and allows an
    easy ramp-up in service when a spike in demand hits your Web-scale
   Inexpensive:S3 rates are very competitive with other enterprise and
    personal data-storage solutions on the market.
The three basic concepts underpinning the S3 framework -

   Buckets are the fundamental building blocks. Each object stored
    in Amazon S3 is contained within a bucket.Think of a bucket as
    analogous to a folder, or a directory, on the file system.
   One of the key distinctions between a file folder and a bucket is
    that each bucket and its contents are addressable using a URL.
    For example, if you have a bucket named "nirvikar," it can be
    addressed using the URL
   Buckets cannot be nested within each other, so you can't create
    a bucket within a bucket. You can affect the geographical
    location of your buckets by specifying a location constraint when
    you create them. This will automatically ensure that any objects
    that you store within that bucket will be stored in that
    geographical location.
Bucket names need to conform to the following S3

   The name must start with a number or a letter and must be
    between 3 and 255 characters.
   A valid name can contain only lowercase letters, numbers,
    periods, underscores, and dashes.Though names can have
    numbers and periods, they cannot be in the IP address format.
    You cannot name a bucket
   The bucket namespace is shared among all buckets from all of
    the accounts in S3. Your bucket name must be unique across the
    entire S3.
   The name cannot end with a dash. For example, myfavorite- is invalid.
    2). Objects

   Objects contain the data stored within the buckets in S3. Think of an
    object as the file you want to store. Each object stored is composed of
    two entities: data and metadata.
   The data is the actual thing being stored, such as a PDF file, Word
    document, a video file, etc. The stored data also has associated
    metadata for describing the object.Some examples of metadata are the
    content type of the object being stored, the date the object was last
    modified, and any other metadata specific to you or your application.
   The metadata for an object is specified by the developer as key-value
    pairs when the object is sent to S3 for storage.Unlike the limitation on
    the number of buckets, there are no restrictions on the number of
   You can store an unlimited number of objects in your buckets, and each
    object can contain up to 5 GB of data.

   Each object stored within an S3 bucket is identified using a unique key.
    This is similar in concept to the name of a file in a folder on your file
    system. The file name within a folder on your hard drive must be
    Each object inside a bucket has exactly one key. The name of the
    bucket and the key are together used to provide the unique
    identification for each object stored in S3.
   Every object within S3 is addressable using a URL that combines the S3
    service URL, bucket name, and unique key. If you store an object with
    the key inside the bucket named nirvikar, that
    object can be addressed using the URL

   Authentication: Ensures that the request is being made by the user that
    owns the bucket or object. Each S3 request must include the Amazon
    Web Services access key that uniquely identifies the user.
    Authorization: Ensures that the user trying to access the resource has
    the permissions or rights to the resource. Each S3 object has an access-
    control list (ACL) associated with it that explicitly identifies the grants
    and permissions for that resource.
   Integrity: Each S3 request must be digitally signed by the requesting
    user with an Amazon Web Services secret key. On receipt of the
    request, S3 will check the signature to ensure that the request has not
    been tampered with in transit.
   Encryption: You can access S3 through the HTTPS protocol to ensure
    that the data is transmitted through an encrypted connection.
   Nonrepudiation: Each S3 request is time-stamped and serves as proof of
    the transaction.
Amazon Instance Types - Standard

   One Ec2 unit provides
       Equivalent CPU capacity of 1.0-1.2 GHz 2007 opteron or 2007
        Xeon processor
   Small Instance
       1.7 GB RAM, 1 EC2 compute unit, 160 GB instance storage, 32
        bit platform
   Large Instance
       7.5 GB of RAM, 4 EC2 units(2 virtual cores with 2 EC2 compute
        units each)‫‏‬
       850 GB instance storage, 64 bit platform
   Extra Large Instance
       15GB, 8 EC2 compute units, (4 virual cores with 2 EC2 units each),
        1690 GB of instance storage, 64 bit platform
Amazon - High CPU Instances
 High-CPU Medium instance 1.7GB of Mem, 5
  EC2 units, 2 Virtual cores with 2.5 EC2 units,
  350 GB of storage, 32 bit platform
 High CPU extra large instance, 7GB of Mem,
  20 EC2 instances, (8 virtual cores with 2.5
  EC2 units), 1690 GB of instance storage, 64
  bit platform
Amazon operating systems and
   Operating systems
       Red Hat Enterprise Linux , openSUSE Linux , Ubuntu Linux , Fedora , Gentoo Linux, Debian
       Windows Server 2003
       Oracle Enterprise Linux
       OpenSolaris
   Software
       Databases
            IBM DB2 , IBM Informix Dynamic Server, Microsoft SQL Server Standard 2005, MySQL Enterprise, Oracle 11g
       Web Hosting
            Apache HTTP, IIS/Asp.Net , IBM Lotus Web Content Management IBM WebSphere Portal Server
   Batch Processing
       Hadoop, Condor, Open MPI
   Application Servers
       IBM Webspehere, Jboss, Oracle WebLogic Server
   Application Development
       IBM Smash, Jboss Enterprise Edition, Rub On Rails
   Video Encoding and Streaming
       Wowza Media Server Pro
       Windows Media Server
Amazon Pricing contd..
   Internet data transfer charges
      All Data Transfer In $0.10 per GB

      Data Transfer out
          First 10 TB per Month $0.17 per GB
          Next 40 TB per Month $0.13 per GB
          150 TB per Month $0.10 per GB

   Amazon EBS volumes
      $0.10 per GB-month of provisioned storage

      $0.10 per 1 million I/O requests

   Amazon EBS snapshots to Amazon S3
      $0.15 per GB-month of data stored

      $0.01 per 1,000 PUT requests (when saving a snapshot)‫‏‬

      $0.01 per 10,000 GET requests (when loading a snapshot)‫‏‬

   Elastic IP addresses
      $0.01 per non-attached Elastic IP address per complete hour

      $0.00 per Elastic IP address remap – first 100 remaps / month

      $0.10 per Elastic IP address remap – additional remap / month over 100

   Elastic load balancing
      $0.025 per Elastic Load Balancer-hour (or partial hour)‫‏‬

      $0.008 per GB of data processed by an Elastic Load Balancer

   Amazon Cloud Watch
      $0.015 per instance-hour (or partial hour)‫‏‬

Shared By: