40
1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Embed Size (px)

Citation preview

Page 1: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

1

NETE4631Amazon Cloud Offerings

Lecture Notes #6

Page 2: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Cloud Deployment Models - Recap

Public clouds Private clouds Hybrid clouds

2The models by the US National institute of standards and technology (NIST)

Page 3: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Moving applications to the cloud –Recap(2)

Deploy Application to the cloud? Entirely or Part of the application is on the

local system and another part is in the cloud Migration involves

Functionality Mapping Analysis of critical features of application-------------- where to deploy the application------------ Analysis of features supported by cloud provider

Nature of target cloud platform Evaluation of supported tools and technologies

3

Page 4: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Examples – Recap (3)

Medical imaging system

4

Reservation system

Page 5: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Lecture Outline Amazon Web Services

Amazon EC2 Amazon Storage

Amazon Simple Storage System (S3) Amazon Elastic Block Store (EBS) Amazon CloudFront

Amazon Database Amazon SimpleDB Amazon Relational Database Service (RDS)

Amazon Virtual Private Cloud Amazon CloudWatch Amazon Elastic Load Balancing Service Levels for Cloud Applications

5

Page 6: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Web Services

6

Page 7: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Cloud Offerings

7

Page 8: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

AWS Management Console

8

Page 9: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Elastic Compute Cloud(EC2) EC2 is a virtual server platform that allows users to

create (launch) and run virtual machines on Amazon’s server farm. Run server instances on Xen virtualization hypervisor

based on Amazon Machine Images (AMIs) running different OSs and performance profiles

Provides support for multiple flavors of Linux and Windows. Preconfigured template images

Complete control of instances and customization support. Resizable computing facility in the cloud. (elasticity) Cluster, replicate load balance and locate your servers in different

data centers to provide fault torelance Support for start, terminate and monitor as many instances as

needed

9

Page 10: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Components that support EC2

10

Page 11: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

System images and software

11

Red Hat Enterprise/ OpenSuse/ Ubuntu… Linux.

OpenSolaris, Fedora, Debian. Windows Server 2003/2008 32-bit and 64-

bit.

Page 12: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon EC2 Pricing

12

Page 13: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon EC2

13

Page 14: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

EC2 Commands

Build your own image

Launch a virtual server instance based on your machine image

14

Page 15: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

EC2 Commands (2)

Allocate new elastic IP address

Assign it to your EC2 instance

List all your allocated addresses

15

Page 16: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Storage Amazon Simple Storage System (S3)

Online backup and storage system. Storage containers are referred to as buckets. Low bandwidth access but guarantee.

Amazon Elastic Block Store (EBS) Crete virtual disks (volume). Performance and reliable than S3.

Amazon CloudFront Content-delivery system (edge computing) that

caches data in different physical locations.

16

Page 17: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

EC2 Storage Type Properties

17

Page 18: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Simple Storage Service (S3)

18

Page 19: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

S3 Commands Create a bucket

Put something inside a bucket

Get the object out of the cloud

Others – list (ls) and delete (del) a bucket or an object

19

Page 20: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

EBS Commands

Create EBS volume

Attach it into the instance in the same availability zone

You can mount or format at any time

20

Page 21: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon CloudFront

21

Page 22: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Database

Amazon SimpleDB Simple indexing and data queries, -> non-

relational and joins are not supported. Not a full database implementation.

Amazon Relational Database Service (RDS) Allow users to create instance of commercial

database such as MySQL. Support portability features. Automated software patching, database

backups, and automated database scaling.

22

Page 23: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon SimpleDB

23

Page 24: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon VPC

Provides a virtual isolated section on Amazon Web Services cloud.

Provides support for both software and hardware virtual private network.

Provides security features such as groups and network access control lists.

24

Page 25: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon CloudWatch

Provides monitors for AWS cloud resources.

Custom metrics support. Alarms to take automated action

when metric crosses specified threshold.

Visual support of metrics in form of graphs and statistical tables.

25

Page 26: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Elastic Load Balancing

Automatically distribute incoming application traffic across multiple Amazon EC2 instances.

Can detect health of EC2 instances and route traffic accordingly.

Elastic balancing support for cloud watch metrics.

26

Page 27: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Service Levels for Cloud Apps

Service Level Agreement (SLA) identifies key metrics (service levels) that the customer can reasonably expect from the service.

Availability Reliability Performance

27

Page 28: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Availability

Describes how often a service can be used over a defined period of time.

For example, if a website is accessible t the general public for 710 hours out of a 720 hours month, we say it has a 98.6% availability rating for that month

High availability for most people can be 99.99% to 99.999% availability

28

Page 29: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Availability (2) How to estimate the availability of

your system involves 2 variables The likelihood you will encounter a failure in

the system during the measurement period How much downtime you would expect in

the event the system fails The mathematic formulation of the

availability of a component is:

29

Page 30: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Availability (3)

Example Your 486 has 40% chance of failure and

you will down for 24 hours, your 486 uptime is:

(8746 – (40%x24))/8746) = 99.9% Also, if you cable provider generally

experiences 2 outages each year lasting 2 months each:

(8746 – (40%x24) – (200%x2))/8746 = 99.84%

30

Page 31: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Availability (4)

two 486 boxes that have 40% chance of failure and they will down for 24 hours each, the uptime is:

31

Page 32: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Amazon Web Service SLAs

Amazon S3 Promise 99.5% of the time in each

calendar month to response to service requests

Amazon EC2 Promise 99.95% availability of at least

2 availability zones within a region

32

Page 33: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Expected Availability in the Cloud

Key differentiator between downtime in the cloud and downtime in a physical environments is How much easier it is to create an

infrastructure that will recover rapidly when something negative happens

Redundancies that span data centers More quickly recover when a downtime

occurs

33

Page 34: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Availability Comparison

Example – one single load balancer. Two application servers and a database engine

Physical environments

Cloud

34

Page 35: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

From the example

EC2 instances are much less stable than physical servers.

The reliance on multiple availability zones can significantly mitigate the lack of stability in EC2 instances.

The lack of stability of a software load balancer is largely irrelevant thanks to the ability to quickly and automatically replace it.

35

Page 36: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Reliability

Refers to how well you can trust a system to protect data integrity and execute its transactions.

System that is frequently not available is clearly not reliable.

A highly available system, however, can still be unreliable if you don’t trust the data it presents.

36

Page 37: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Performance

Design your application so logic can be spread across multiple servers.

Leverage threading and/ or process forking capabilities

Depending on the nature of applications – example of transactional applications Clustering your database Segment database access so database

reads can run against slave while writes execute against the master

37

Page 38: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

EC2 Performance

EC2 System performs well Network speeds are quite

outstanding Storage

S3 is very slow Local storage is entirely unpredictable Block storage has exactly the kind of

performance you would expect for SAN

38

Page 39: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

Risks of data privacy You never know where your data is

when it’s in the cloud. Your data lies within a Xen virtual machine

guest OS or EBS volume Network traffic exchanging data between

instances is not visible to other virtual hosts S3 storage lies in a public namespace but

accessible in private Amazon zeros out all local storage between

uses Snapshots are probably reasonably secure

39

Page 40: 1 NETE4631 Amazon Cloud Offerings Lecture Notes #6

References

Chapter 2-3, Cloud Application Architectures, building applications and infrastructure in the cloud, O’Reilly, Reese, G., 2009

Chapter 9 of Course Book: Cloud Computing Bible, 2011, Wiley Publishing Inc.

http://aws.amazon.com

40