Amazon Cloud Computing Tutorial

From Gridkaschool

Content

  • Introduction
    • Cloud Computing
      • Concept
      • Everything as a Service (XaaS)
  • AWS
    • General
      • Services, Accounts, Credentials
    • How to use the AWS Management Console
      • EC2, S3, Elastic Beanstalk
    • How to use AWS programmatically
      • EC2, S3, SQS, SDB

Material

Slides:

 https://www.dropbox.com/s/1syab4mvfry9v1u/aws_crash_course.pdf

Hand-Out:

 https://www.dropbox.com/s/40hy2kclo4ns2nm/handout.pdf


Important Information

  • For this workshop a personal notebook is necessary.
  • If you use Windows, please prepare the program "PuTTY" for this workshop:
 http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

Abstract

In the last couple of years cloud computing has achieved an important status in the IT scene.
The renting of computing power, storage and applications according to requirements is regarded as future business.
This tutorial course gives an introduction of the basic concepts of the Infrastructure-as-a-Service (IaaS) model
based on the cloud offerings provided by Amazon, one of the present leading commercial cloud computing providers.

Introduction

Definition of Cloud Computing by NIST:

http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

Characteristicts:

  1. Rapid Elasticity: the ability to scale resources both up and down as needed. To the consumer, the cloud appears to be infinite.
  2. Measured Service: In a measured service, aspects of the cloud service are controlled and monitored by the cloud provider. This is crucial for billing, access control, resource optimization, capacity planning and other tasks.
  3. On-Demand Self-Service: The on-demand and self-service aspects of cloud computing mean that a consumer can use cloud services as needed without any human interaction with the cloud provider.
  4. Broad Network Access: the cloud provider’s capabilities are available over the network and can be accessed through standard mechanisms.
  5. Resource Pooling: Resource pooling allows a cloud provider to serve its consumers via a multi-tenant model. Physical and virtual resources are assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided.

Delivery Models:

  1. Infrastructure as a Service (IaaS)
  2. Platform as a Service (PaaS)
  3. Software as a Service (SaaS)

Deployment Models:

  1. Public Cloud
  2. Private Cloud
  3. Hybrid Cloud

AWS Management Console

Aws management console.png

The Management of several popular services by AWS is possible with the web-based Management Console:

http://aws.amazon.com/de/console/

Workshop Exercise: Management of EC2 and S3

  • Security Groups
  • Elastic IPs
  • EC2 Instances
    • Instance Type
    • User Data Scripts
    • Meta-Data Service
  • S3 Buckets
    • Flat Hierarchy
    • Bittorrent functionality


AWS Programming

Gridka2012 aws botoWorkflow.png

Motivation: New York Times - TimesMachine (Archive 1851-1922)

http://open.blogs.nytimes.com/2007/11/01/self-service-prorated-super-computing-fun/

Workshop Exercise: Performing Rendering Jobs

Workflow:

  1. create a queue and store messages for rendering jobs (animationname,framenumber,s3bucket,sdbdomain)
  2. start several EC2 instances, use user_data to provide user credentials and queuename to each instance
  3. ec2 instances will start to download messages from the queue and render the frames
  4. the created frames will be stores in a S3 bucket, the rendering time will be stores in a SDB domain
  5. get the created frames from S3 and look to the data of the SDB domain
  6. create the video and try to analyze the rendering time of different ec2 instance types