Genießen Sie diesen Titel jetzt und Millionen mehr, in einer kostenlosen Testversion

Nur $9.99/Monat nach der Testversion. Jederzeit kündbar.

Amazon Web Services: Migrating your .NET Enterprise Application

Amazon Web Services: Migrating your .NET Enterprise Application

Vorschau lesen

Amazon Web Services: Migrating your .NET Enterprise Application

665 Seiten
3 Stunden
Jul 22, 2011


This practical, step-by-step guide follows the process of moving a sample Enterprise .NET application to the Amazon Cloud. Companies that have designed, developed, and hosted applications based on the Microsoft .NET technology stack should not miss out on this book. If you are looking to expand into using the vast array of services available on the Amazon Cloud but are unsure how to proceed, then this will help to get you on your way. Administrators or developers managing such applications should have basic experience of the platform and the web servers that thay are intending to move to Amazon. No knowledge of AWS is required.
Jul 22, 2011

Über den Autor

Ähnlich wie Amazon Web Services

Ähnliche Bücher

Ähnliche Artikel


Amazon Web Services - Rob Linton

Table of Contents

Amazon Web Services: Migrating your .NET Enterprise Application


About the Author


About the Reviewers

Support files, eBooks, discount offers and more

Why Subscribe?

Free Access for Packt account holders

Instant Updates on New Packt Books


What this book covers

What you need for this book

Who this book is for


Reader feedback

Customer support

Downloading the example code




1. Understanding Amazon Web Services

What AWS is

What AWS isn't



So why AWS

What you should know about AWS

What to watch out for with AWS

Drivers of Enterprise Adoption of AWS

What application models work/don't work in AWS





Common issues across all architecture models

Legalities of Cloud Computing

A brief technical overview of AWS

Public or Virtual Private Cloud

The technology behind AWS

Our sample enterprise application

Rules of engagement

What will our sample enterprise application look like

What will our sample enterprise application do


2. Mapping your Enterprise Requirements Against Amazon's Offerings

AWS offerings

Simple Storage Service (S3)

General roles of S3 in the architecture

Using S3

S3 features

Data storage


Data consistency

Object access

Using S3 for backup, archiving, and recovery

Elastic Compute Cloud (EC2)

General roles of EC2 in the architecture

Using EC2

Features of EC2

Starting instances

Accessing instances after they have been started

Types of hardware to run an instance on

Types of billed instances

Billing and data transfer

Elastic IP addresses

Instance types

Standard instances

Micro instances

High memory instances

High-CPU instances

Cluster compute instances

Cluster GPU instances

Putting these instances in perspective

Elastic Block Store (EBS)

Some things to know about EBS

Attaching a two TB of disk to an EC2 instance

Security Groups

Implementing an example security group for a web application

Management security group

Web server security group

Application server security group

Database server security group

Using the AWS console tools

Virtual Private Cloud (VPC)

Using AWS for testing

Management servers

Test servers

Storage servers

Storage server security group

Basic CloudWatch

Detailed CloudWatch

Elastic Load balancing (ELB)

Amazon Relational Database Service (RDS)

Replication and availability

Backups and recovery

Amazon Simple Notification Service (SNS)

Publish and subscribe

General role in the architecture

Mapping of AWS offerings to our sample application

Load balancing

Hardware (Servers)

Hard disk storage

Firewall security

Performance monitoring

Database servers

Recapping our sample application's architecture

Mapping of AWS offerings to other requirements

Business requirements

Financial requirements

Functional requirements

Security, legal, and regulatory requirements


3. Getting Started with AWS and Amazon EC2

Creating your first AWS account

Multi-factor authentication

Registration and privacy details

AWS customer agreement

Section 10.2 – Your Applications, Data, and Content

Section 14.2 – Governing Law

Section 11.2 – Applications and Content

Signing in

Signing up for Amazon S3

Signing up for EC2

Starting an EC2 instance

Creating a security group

Starting the EC2 instance

Accessing your EC2 instance

Configuring your instance

Starting new EC2 instances from our base image

Saving your new instances as AMIs

Using the command line

Installing the AWS command-line tools

Installing Java

Creating a location to store your data

Getting your security keys

Downloading and installing the AWS tools

Creating a file to set up the AWS environment

Using the command line

Starting an EC2 instance

Stopping an EC2 instance


4. How Storage Works on Amazon

Getting started with S3

Creating a S3 bucket with logging

Using the S3 command-line tools

Setting up your credentials with S3.exe

Copying files to S3 using S3.exe

Retrieving files from S3 using S3.exe

Importing and exporting large amounts of data in and out of S3

Setting up the Import/Export service

Using the Import/Export service

Confirming your device specifications

Downloading and installing the command-line service tool

Creating a job

Copying the data to your disk device

Sending your disk device

Managing your Import/Export jobs

Accessing S3 using third-party tools

Getting started with EBS

Creating an EBS volume

Creating an EBS snapshot

An important note about EBS

Using the EBS command-line tools

Setting up storage for our sample application

Backup storage on S3


5. Amazon's Approach to Networking

An overview of AWS networking

Examining internal versus external IP addresses

Allocating elastic IPs

Security groups and internal versus external IP addresses

Handling domain controllers in AWS

Amazon VPC

Creating the AWS VPC

Starting servers in your VPC

AWS elastic load balancing

Using ELB for HTTPS

Amazon CloudFront networking

Setting up the networking for our sample application

The database layer

The application server layer

The web server layer


6. Putting Databases in the Cloud

Examining SQL Server

SQL Server AMI

SQL Server costs

Setting up SQL Server

Managing the SQL Server

Connecting to SQL Server

Integrated security versus mixed mode security

Windows firewall

Importing data to the SQL instance

Using the AWS console on your new SQL Server instance


Oracle AMIs


Setting up Oracle

Managing the Oracle instance

Importing data to the Oracle instance

Other Amazon database services

Amazon RDS

Setting up the RDS service

RDS pricing

Creating an RDS instance

Connecting to the RDS instance

Security for RDS

Managing the RDS instance

Connect using client tools

Importing data into the RDS instance

Amazon SimpleDB

Getting started with SimpleDB


7. Migrating your Data and Deploying your Code

Sample application code

Installing the pre-requisites

Disabling Internet explorer enhanced security configuration

Installing IIS

Installing .Net 4.0 and the MVC extensions

Configuring IIS

Installing the Application

Installing the database servers


Mirroring and failover

Application Servers

Web Servers

Testing our sample application

Troubleshooting our application


8. Amazon's Queuing and Notification Options

Simple Queue Service (SQS)

Getting started

SQS Scratchpad

AWS SDK for .Net library and sample code

An overview of how SQS works

Creating your first queue

Testing the full SQS lifecycle of a message

SQS pricing and limits

Simple Notification Service (SNS)

An overview of how SNS works

Getting started

Creating a subscription

Creating an e-mail subscription

Testing our SNS subscription

Testing a HTTP subscription

SNS pricing and limits

Applying SQS and SNS to our sample application


9. Monitoring and Scaling My Application


Installing the AWS Autoscaling tools

Installing the CloudWatch API tools

Architecture changes to Waaah for autoscaling

Creating the application server load balancer

Creating the autoscaling configuration

Creating the launch configuration

Creating the autoscaling group

Creating an autoscale policy

Creating the CloudWatch metric

Checking our autoscaling

Final configuration changes

Pricing for autoscaling

Using Amazon CloudWatch to monitor our application

CloudWatch in the AWS console

Pricing for CloudWatch


10. Testing and Maintaining the Application

Post deployment

Load testing

Grinder—an open source load test tool

Starting the AMI

Using grinder

Modifying the registry values on all of your servers

Starting the remote agents

Creating/Editing the test scripts

Running the test

Re-running the test

Patch Management, Quality Assurance (QA), and backups

The problem to be solved

The solution

Solving the problem, step-by-step

Bundling the existing production EC2 instances

Creating new running EC2 instances

Configuring the new instances

Allocating a new elastic IP addresses and modifying the DNS settings

Creating new load balancers

Modifying the web.config files

Modifying the security groups

Applying the relevant patches and service packs

Re-running the functional tests

Re-run the Grinder load test

The solution for the next steps


A. AWS Reference

List of AWS terms and keywords

Chapter 1

Chapter 2

Chapter 3

Chapter 4

Chapter 5

Chapter 6

Chapter 7

Chapter 8

Chapter 9

Chapter 10

AWS products covered in this book

Amazon Elastic Compute Cloud (EC2)

Command-line tools

Environment variables used

Commands used in the book:

Summary of instance types and costs

Amazon Simple Storage Service (S3)

Command-line tools

Commands used in the book

Approximate costs

Amazon Elastic Block Store (EBS)

Command-line tools

Commands used in the book:

Available EBS Devices

Approximate costs

Amazon Autoscaling

Command-line tools

Commands used in the book:

Approximate costs

Amazon CloudFront

Approximate costs

Amazon SimpleDB

Tools are located at

Approximate costs

Amazon Relational Database Service (RDS)

Command-line tools

Amazon Simple Queue Service (SQS)

Command-line tools

Approximate pricing

Amazon Simple Notification Service (SNS)

Command-line tools

Subscription options

Approximate pricing

Amazon CloudWatch

Command-line tools

Commands used in the book:

Approximate pricing

Amazon Virtual Private Cloud (VPC)

Command-line tools

AWS console

Approximate pricing

Amazon Elastic Load Balancing

Command-line tools

Approximate pricing

Amazon Import/Export

Command-line tools

Commands used in the book:

Approximate pricing

List of AWS data centers and regions

Location of CloudFront edge locations


Amazon Web Services: Migrating your .NET Enterprise Application

Amazon Web Services: Migrating your .NET Enterprise Application

Copyright © 2011 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: July 2011

Production Reference: 1150711

Published by Packt Publishing Ltd.

32 Lincoln Road


Birmingham, B27 6PA, UK.

ISBN 978-1-849681-94-0

Cover Image by Dan Anderson ( <>)



Rob Linton


Ben Cherian

Nimish Parmar

Derek Schwartz

Acquisition Editor

Stephanie Moss

Development Editor

Hyacintha D'Souza

Kartikey Pandey

Technical Editors

Joyslita D'Souza

Arun Nadar

Copy Editor

Laxmi Subramanian

Project Coordinator

Leena Purkait


Mario Cecere


Monica Ajmera Mehta


Geetanjali Sawant

Production Coordinator

Arvindkumar Gupta

Cover Work

Arvindkumar Gupta

About the Author

Rob Linton is the CTO and co-founder of Logicaltech Systalk, a successful integration company based in Melbourne, Australia.

He has been a database professional for the past 15 years, and for the five years before that, a spatial information systems professional, making him a data specialist for over 20 years.

He is a certified Security Systems ISO 27001 auditor, and for the past two years he has been working in the cloud, specializing in cloud data persistence and security.

He is a certified DBA and is proficient in both Oracle and Microsoft SQL Server, and is a past Vice President of the Oracle User Group in Melbourne, Australia.

He is also the creator of Jasondb, a cloud-based Restful database written entirely in C/C++ that resides up in the cloud on Amazon Web Services (AWS).

In his spare time he enjoys coding in C++ on his Macbook Pro and chasing his kids away from things that break relatively easily.


No book is the product of just the author – he just happens to be the one with his name on the cover.

A number of people contributed to the success of this book, and it would take more space than I have to thank each one individually.

A special shout out goes to Stephanie Moss, the Acquisition Editor at Packt, and Ben Cherian, who is the reason that this book exists.

Thank you Stephanie for believing in me and believing in my ability to produce this book, your feedback has been wonderful.

Thank you Ben, for the initial work in setting up the outline for this book, your work was invaluable.

I would also like to thank Peter, my twin brother and CEO of Systalk, for allowing the space to make this book happen. A book project of this size was inevitably going to require some flexibility in my day job, and I appreciate the flexibility he gave me to make this happen.

(I promise I'll bill more hours this year round Pete).

Also thank you to Kartikey Pandey, my development editor, and Leena Purkait, my project coordinator at Packt, you are both professional to the core.

Finally, I would like to thank the team behind Amazon Web Services, who are mostly anonymous; you are all doing a great job, keep it up.

About the Reviewers

Nimish Parmar has over seven years of solid software development experience in a wide variety of industries ranging from online video to mobile. Currently, he is working at in the web content discovery space as a Senior Software Engineer building cutting edge applications serving millions of users every day. Nimish has an MS in Computer Science from University of Southern California, Los Angeles, California and a BE in Computer Engineering from University of Mumbai, India. He currently lives in San Francisco, California and enjoys snowboarding at Lake Tahoe in his spare time. He is also an avid football fan—both college and professional.

I would like to thank my parents Ragini and Bipinchandra for always encouraging me to reach my maximum potential and for always believing in me that I could. I owe them a debt of gratitude. And my brother Krunal for being the most awesome younger brother one can ask.

Derek Schwartz with over 16 years of experience in Information Technology has a Bachelor of Science degree in Information Technology from the University of Phoenix, and a Master of Science degree in Information Management from the W. P. Carey School of Business at Arizona State University.

He started his career as a contractor at Intel Corporation, providing desktop computer support. After several contracts at large technology companies, he advanced into server and LAN administration and further extended his skills to include system scripting and automation. This eventually led to software development of desktop and web applications. Recent interests include cloud computing infrastructure and SaaS business and application architecture.

Derek is currently employed as I.T. Systems Engineer at Rowland Constructors Group, Inc. (, a construction general contractor with offices in Arizona and Texas. He also runs a small business, Bit-Smacker Digital Engineering (, which provides technical consulting services, web services, and custom software.

Support files, eBooks, discount offers and more

You might want to visit for support files and downloads related to your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at for more details.

At, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books. 

Why Subscribe?

Fully searchable across every book published by Packt

Copy and paste, print and bookmark content

On demand and accessible via web browser

Free Access for Packt account holders

If you have an account with Packt at, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.

Instant Updates on New Packt Books

Get notified! Find out when new books are published by following @PacktEnterprise on Twitter, or the Packt Enterprise Facebook page.

This book is dedicated to my wife Fiona, who loves and tolerates me, and my children Kai and Jari, without whom my life would be quite boring.

This book would not have been possible without your love, understanding and your ability to ignore me when I was locked away in the study for days on end (literally). Thank you from the bottom of my heart.

(Yes, Jari, you can smash me at Modern Warfare 2 now, and yes Kai, I know your Tyranid's pawn my Imperial Guards)


Amazon Web Services is an Infrastructure as a Service (IaaS) platform in the Cloud, which businesses can take advantage of as their needs demand. The Amazon Cloud provides the enterprise with the flexibility to choose whichever solution is required to solve specific problems, ultimately reducing costs by only paying for what you use.

While enterprises understand moving their applications among infrastructure they own and manage, the differences in Amazon's infrastructure bring up specific business, legal, technical, and regulatory issues to get to grips with.

This step-by-step guide to moving your Enterprise .NET application to Amazon covers not only the concept, technical design, and strategy, but also enlightens readers about the business strategy and in-depth implementation details involved in moving an application to Amazon. You'll discover how to map your requirements against the Amazon Cloud, as well as secure and enhance your application with AWS.

This book helps readers achieve their goal of migrating a .NET Enterprise Application to the AWS cloud. It guides you through the process one step at a time with a sample enterprise application migration. After comparing the existing application with the newly migrated version, it then moves on to explain how to make the hosted application better. It covers how to leverage some of the scalability and redundancy built into the Cloud, and along the way you'll learn about all of the major AWS products like EC2, S3, and EBS.

What this book covers

Chapter 1, Understanding Amazon Web Services and Exploring Enterprise Application Models, we will look at some of the common architecture styles, and how they fit into AWS. We will also describe the sample application that we will use throughout the book

Sie haben das Ende dieser Vorschau erreicht. Registrieren Sie sich, um mehr zu lesen!
Seite 1 von 1


Was die anderen über Amazon Web Services denken

0 Bewertungen / 0 Rezensionen
Wie hat es Ihnen gefallen?
Bewertung: 0 von 5 Sternen