Windows Azure vs. Amazon AWS

Preview:

DESCRIPTION

This presentation compares and contrasts two different offerings for cloud services. by Riad Merrouche, Software Architect smerrouc@teksystems.com

Citation preview

Windows Azure vs Amazon AWS

Riad Merrouche

Software Architect

smerrouc@teksystems.com

About me

Slide 3

Presentation content

Cloud Service Models

• IaaS vs PaaS

Overview of the Application

Web Application

• Solutions

• Azure Web Roles vs Amazon Elastic Beanstalk

Storage

• Solutions

• Azure SQL vs Amazon RDS

Conclusion

Slide 4

Amazon EC2 Azure VMs

Windows Server + System Center

2012

Azure WebSites Amazon Beanstalk

Office 365 Google Drive

Dynamics CRM

Cloud Overview Cloud Service Models

Slide 5

Cloud Service Models - IaaS vs PaaS

Amazon EC2 Azure VMs

Windows Server + System Center

2012

Azure Websites Amazon Beanstalk

Office 365 GMail

Dynamics CRM

• Vendor provides the

Infrastructure:

• Network

• Storage

• Compute Resources

• Customer manages

software on top of

hardware: OS and up.

• Top Vendor: Amazon AWS

• Since 2006

109B$

• Vendor provides:

• The Infrastructure

• And, the Application Development Platform which includes: OS, Database, IIS,…

• Customer only manages the

application.

• Top Vendor: [Windows Azure]

• Since 2010

1.2B$

http://www.forbes.com/sites/reuvencohen/2012/10/22/gartner-announces-2012-magic-quadrant-for-cloud-infrastructure-as-a-service/ http://channelnomics.com/2012/11/19/gartner-paas-2-9-billion-battleground-2016/

Slide 7

DB Storage

Overview of the Application

Web Application (.NET)

Slide 8

DB Storage

Overview of the Application

Web Application (.NET)

Availability

Elasticity

Scalability

Slide 9

Costs DB

Storage

Overview of the Application

Web Application (.NET)

Availability

Elasticity

Scalability

Security

Performance

Slide 11

Web Application

Azure Amazon

IaaS • Azure Virtual Machines • Amazon EC2 (Elastic Compute 2)

PaaS • Web Roles • Web Sites ( )

• Elastic Beanstalk ( )

Possible Solutions

Slide 13

Web Application

IaaS SaaS

PaaS I

Azure VMs

Amazon EC2

Azure Web Roles

Azure Web Sites

Amazon Beanstalk

Slide 14

Web Application

Azure Web Roles vs

Amazon Elastic Beanstalk

Slide 15

Web Application - Azure Web Role

DEMO

Slide 16

Web Application - Azure Web Role

Slide 17

Web Application - Azure Web Role

Slide 18

Web Application - Azure Web Role

Do not add roles

Slide 19

Web Application - Azure Web Role

Slide 20

Web Application - Azure Web Role

Slide 21

Web Application - Azure Web Role

Slide 22

Web Application - Azure Web Role

Slide 23

Web Application - Azure Web Role

• CPU Cores: between “shared” to 8 cores • Bandwidth: between 5 to 800 Mbps • Network is “shared” except for Extra large Role • Memory: between 768MB to 14GB

Slide 24

Web Application - Azure Web Role

Slide 25

Web Application - Azure Web Role

Slide 26

Web Application - Azure Web Role

Slide 27

Web Application - Azure Web Role

Slide 28

Web Application - Azure Web Role

Slide 29

Web Application - Azure Web Role

Slide 30

Web Application - Azure Web Role

Slide 31

Web Application - Azure Web Role

Slide 32

Web Application - Azure Web Role

Slide 33

Web Application - Azure Web Role (Summary)

Scalability • Up: Instance size Requires a new deployment

• Out: Easily add more instances in the management console

Availability & Disaster Recovery • 99.90% for single instance

• 99.95% for load balanced instances (2 or more)

Elasticity • Enterprise Library Auto-scaling Application Block (WASABi)

Slide 34

Web Application - Amazon Elastic Beanstalk

DEMO

Slide 35

Web Application - Amazon Elastic Beanstalk

Slide 36

Web Application - Amazon Elastic Beanstalk

Slide 37

Web Application - Amazon Elastic Beanstalk

Slide 38

Web Application - Amazon Elastic Beanstalk

Slide 39

Web Application - Amazon Elastic Beanstalk

For one application we can have multiple environments: DEV, QA, UAT…

Slide 40

Web Application - Amazon Elastic Beanstalk

Win server 2008 R2 (available too)

You can use a custom Image!

Slide 41

Web Application - Amazon Elastic Beanstalk

• Cores: from 1 to 8 cores • Bandwidth: Up to 10 Gigabit Ethernet • Memory: from 613MB to 68GB

Slide 42

Web Application - Amazon Elastic Beanstalk

Slide 43

Web Application - Amazon Elastic Beanstalk

Slide 44

Web Application - Amazon Elastic Beanstalk

• We still have full control like IaaS

Slide 45

Web Application - Amazon Elastic Beanstalk

• Keeps History of your deployments

Slide 46

Web Application - Amazon Elastic Beanstalk

Slide 47

Web Application - Amazon Elastic Beanstalk

• We can redeploy any version to any environment

Slide 48

Web Application - Amazon Elastic Beanstalk

Slide 49

Web Application - Amazon Elastic Beanstalk

• Easy Scale up

Slide 50

Web Application - Amazon Elastic Beanstalk

• Ability to configure the Load Balancer

Slide 51

Web Application - Amazon Elastic Beanstalk

Slide 52

Web Application - Amazon Elastic Beanstalk (Summary)

Scalability Up: Instance size (management console)

Out: Easily add more instances (management console / Auto-Scaling pane)

Availability & Disaster Recovery • 99.95% for single instance

Elasticity • Easy (in management console)

• Use CloudWatch + Command line procedure for advanced settings

Slide 53

Web Application - Conclusion

Azure Web Roles vs Amazon Elastic Beanstalk

Azure Web Roles

Simpler & focus on application

Less Control

Amazon Beanstalk:

• More Features

• More Control

• Supports larger Compute & Memory needs

Slide 54

Storage

Azure Amazon

IaaS Azure Virtual Machines Amazon EC2 (Elastic Cloud Compute)

PaaS Azure SQL Database Amazon RDS

DB Storage

Possible Solutions

Slide 55

Storage

Azure SQL vs

Amazon RDS

DB Storage

Slide 56

Storage - Azure SQL

DEMO

DB Storage

Slide 57

Storage - Azure SQL

Slide 58

Storage - Azure SQL

Max 150 GB

Slide 59

Storage - Azure SQL

Slide 60

Storage - Azure SQL

Slide 61

Storage - Azure SQL

Slide 63

Storage - Azure SQL

Scale Up • Automatic scalability • Pay for what you use (only)

Slide 64

Storage - Azure SQL

Slide 65

Storage - Azure SQL

Scale Out • SQL Azure Federations • Based on sharding pattern • Massive scalability • Scales with no down time • Certain design constraints • Issues & Limitations with EF

Slide 66

Storage - Azure SQL

Import / Export: • Creates a .BACPAC file • Does not guarantee consistency! • Needs to be combined with DB Copy

Slide 67

Scalability Up: No control on instance type (Host)

Up: DB size (Automatic scaling)

Out: SQL Azure Federations

Availability & Disaster Recovery

2 “Standby” Replicas Same Data Center 1 Synchronous and 1 Asynchronous

99.9% Monthly Availability

Internal daily backups (Azure) Min 14 days retention

Every 5 minutes: Backup the Log

Import & Export functionality

Storage - Azure SQL (Summary)

Slide 68

Storage - Amazon RDS

DEMO

DB Storage

Slide 69

Storage - Amazon RDS

Slide 70

Storage - Amazon RDS

Slide 71

Storage - Amazon RDS

• License “included“ or “ BYOL”

SQL Server 2012 or 2008 R2

Slide 72

Storage - Amazon RDS

Cores: from 1 to 8 cores Memory: Up to 68GB

Slide 73

Storage - Amazon RDS

Availability: Creates a “stand-by” replica in another

availability zone Synchronous replication Supported only for MySQL & Oracle

Minimum 200GB!! Maximum 1000 GB

Slide 74

Storage - Amazon RDS

Performance: MySQL & Oracle: Up to 30000 IOPS SQL Server: Up to 10000 IOPS

Slide 75

Storage - Amazon RDS

Slide 76

Storage - Amazon RDS

Backups: • Daily • Transaction Log every 5 minutes • Up to 35 days retention period

Slide 77

Storage - Amazon RDS

Slide 78

Storage - Amazon RDS

Slide 79

Storage - Amazon RDS

Slide 80

Storage - Amazon RDS

Scalability • Supported only for MySQL & Oracle

Slide 81

Storage - Amazon RDS

Scalability: “Read” Replicas

Slide 82

Storage - Amazon RDS

Slide 83

Storage - Amazon RDS

Restore to Point in time (to a second)

Slide 84

Scalability Up: Instance type (management console)

Up: Instance size (Not supported for SQL Server)

Out: “Read” Replicas – MySQL only pane

Availability & Disaster Recovery Automatic Host Replacement

“Standby” Replicas Multi-Availability zone (but same Region) Synchronous No support for SQL Server

Automatic Daily Backup + Manual Restore

Transaction Log backup every 5 minutes

DB Snapshots

Storage - Amazon RDS (Summary)

Slide 85

Storage - Conclusion

Azure SQL vs Amazon RDS

Azure SQL

• Only SQL Server (customized)

• High Availability (99.90%)

• You pay only for what you use

RDS:

• More Features & Control

• Poor Support for MS SQL Server

Slide 86

Virtual Machines Blobs Azure Tables

Web Roles Mobile Services HDInsight

Web Sites Azure SQL Media Services

HPC Scheduler SQL Reporting MarketPlace

Caching CDN Virtual Network

WASABi Worker Roles Recovery Services

Traffic Manager Active Directory Service Bus

Queues

Azure vs Amazon AWS Even more…

Slide 87

Virtual Machines Blobs Azure Tables

Web Roles Mobile Services HDInsight

Web Sites Azure SQL Media Services

HPC Scheduler SQL Reporting MarketPlace

Caching CDN Virtual Network

WASABi Worker Roles Recovery Services

Traffic Manager Active Directory Service Bus

Queues

CloudFormation Elastic Beanstalk Route 53

CloudFront Elastic MapReduce S3

CloudSearch Elastic Transcoder SES

CloudWatch Glacier SNS

Data Pipeline IAM SQS

Direct Connect OpsWorks Storage Gateway

DynamoDB RDS SWF

EC2 Redshift VPC

ElastiCache

Azure vs Amazon AWS Even more…

Slide 88

So, which one? It depends…

More Control

Massive Scalability & Performance

Mobile Apps, Small to medium Apps

Need SQL Server (PaaS)

But remember, things are changing quickly!!

Conclusion

Slide 89

Questions

Thank you

Windows Azure vs Amazon AWS

Recommended