0% found this document useful (0 votes)
9 views

Mastering AWS Development 1st Edition Uchit Vyas instant download

The document provides information about various eBooks related to AWS development and other technical subjects, including links for instant downloads. It features titles such as 'Mastering AWS Development' by Uchit Vyas and 'Understanding Molecular Simulation' by Daan Frenkel. Additionally, it includes details about the author, reviewers, and the content structure of the book on AWS development.

Uploaded by

kidohzhyra75
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Mastering AWS Development 1st Edition Uchit Vyas instant download

The document provides information about various eBooks related to AWS development and other technical subjects, including links for instant downloads. It features titles such as 'Mastering AWS Development' by Uchit Vyas and 'Understanding Molecular Simulation' by Daan Frenkel. Additionally, it includes details about the author, reviewers, and the content structure of the book on AWS development.

Uploaded by

kidohzhyra75
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 51

Mastering AWS Development 1st Edition Uchit Vyas

pdf download

https://ebookname.com/product/mastering-aws-development-1st-
edition-uchit-vyas/

Get Instant Ebook Downloads – Browse at https://ebookname.com


Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Mastering AWS Serverless Architecting developing and


deploying serverless solutions on AWS 1st Edition
Miguel A. Calles

https://ebookname.com/product/mastering-aws-serverless-
architecting-developing-and-deploying-serverless-solutions-on-
aws-1st-edition-miguel-a-calles/

Mastering Tomcat Development 1st Edition Peter Harrison

https://ebookname.com/product/mastering-tomcat-development-1st-
edition-peter-harrison/

Low Cost Low Tech Innovation New Product Development in


the Food Industry 1st Edition Vijay Vyas

https://ebookname.com/product/low-cost-low-tech-innovation-new-
product-development-in-the-food-industry-1st-edition-vijay-vyas/

Understanding molecular simulation from algorithms to


applications 2nd ed Edition Daan Frenkel

https://ebookname.com/product/understanding-molecular-simulation-
from-algorithms-to-applications-2nd-ed-edition-daan-frenkel/
The Grove dictionary of musical instruments Vol 5 Tibia
Zygmuntowicz Samuel 2nd Edition Laurence Libin

https://ebookname.com/product/the-grove-dictionary-of-musical-
instruments-vol-5-tibia-zygmuntowicz-samuel-2nd-edition-laurence-
libin/

Handbook of Research on Machine Learning Applications


and Trends Algorithms Methods and Techniques 1st
Edition Emilio Soria Olivas

https://ebookname.com/product/handbook-of-research-on-machine-
learning-applications-and-trends-algorithms-methods-and-
techniques-1st-edition-emilio-soria-olivas/

Cliffs AP English Language and Composition 2nd Edition


Barbara V. Swovelin

https://ebookname.com/product/cliffs-ap-english-language-and-
composition-2nd-edition-barbara-v-swovelin/

Entertainment Industry Economics A Guide for Financial


Analysis 8th Edition Harold L. Vogel

https://ebookname.com/product/entertainment-industry-economics-a-
guide-for-financial-analysis-8th-edition-harold-l-vogel/

Cicero Politics and Persuasion in Ancient Rome 1st


Edition Kathryn Tempest

https://ebookname.com/product/cicero-politics-and-persuasion-in-
ancient-rome-1st-edition-kathryn-tempest/
Corporate Accounting Information Systems 1st Edition
Tony Boczko

https://ebookname.com/product/corporate-accounting-information-
systems-1st-edition-tony-boczko/
[1]
Mastering AWS Development

Develop and migrate your enterprise application to the


Amazon Web Services platform

Uchit Vyas

BIRMINGHAM - MUMBAI
Mastering AWS Development

Copyright © 2015 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: June 2015

Production reference: 1240615

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham B3 2PB, UK.

ISBN 978-1-78217-363-2

www.packtpub.com
Credits

Author Project Coordinator


Uchit Vyas Suzanne Coutinho

Reviewers Proofreader
Goldin Evgeny Safis Editing
Naoya Hashimoto
Dr. Ketan Parmar Indexer
Priya Sane

Commissioning Editor
Kunal Parikh Graphics
Sheetal Aute

Acquisition Editor Jason Monteiro


Meeta Rajani Abhinash Sahu

Content Development Editor Production Coordinator


Pooja Nair Nitesh Thakur

Technical Editors Cover Work


Manali Gonsalves Nitesh Thakur
Taabish Khan

Copy Editors
Roshni Banerjee
Adithi Shetty
About the Author

Uchit Vyas is an IT industry veteran, a Cloud technologist at heart, and a hands-on


Cloud automation lead at Opex Software, for Cloud automation and DevOps.
He is responsible for the delivery of solutions, services, and product development.
He explores new open source technologies and defines architecture, roadmaps,
and best practices for enterprises. He has consulted and provided training on
various tools and technologies, including Cloud computing, Big Data, Hadoop, ESB,
infrastructure automation (Chef/Puppet/Ansible), Java-based portals, and CMS
technologies to corporations around the world.

He has completed his engineering in computer science from Gujarat University.


He worked as a senior associate at Infosys Limited in the Education and Research
Team, during which time he worked on Big Data analytics, Cloud security,
and virtualization.

He has also published books on Mule ESB, AWS Development Essentials, and AWS
DynamoDB and continues to write books on open source technologies.

He hosts a blog named Cloud Magic World, where he posts tips and events about
open source technologies mostly related to Cloud on cloudbyuchit.blogspot.com.
His Twitter handle is @uchit_vyas.

I dedicate this book to my family and friends. A special thanks to


my loving parents, Hamendra and Shreya Vyas whose words of
encouragement and push for tenacity always provided the necessary
inspiration. I dedicate this book to my wife Riddhi Vyas who never
left my side during the whole writing process and is very special to
me. I also dedicate this book to my manager and friend Dr. Manoj
Manuja who has supported me throughout the process and given so
much encouragement. I will always appreciate all that he has done,
especially for helping me to develop my technical skills. And last but
not the least, I would like to thank to my best friend and colleague
Prabhakaran for being there for me throughout the book program.
About the Reviewers

Goldin Evgeny is a Ruby, Groovy, and Scala software developer who turned into
an automation and release engineer to introduce order where chaos usually reigns.
On an average day, all things cloud, automation, and continuous delivery get his
immediate attention. Back at home, he's a father to his 2-year-old son, dreaming of a
day when a proper tech talk can happen between the two. When he gets any spare
time, he enjoys exploring the subjects of functional programming, Web performance,
and TCP/IP networking. He's an open-source developer, speaker, and passionate
advocate when it comes to tools and techniques making for smooth and painless
release processes.

Naoya Hashimoto has been working on system designing, implementing, and


system maintenance as an infrastructure engineer at Data Center, Management Service
Provider, and Housing/Hosting Service Provider for years. After meeting public
Cloud services a few years ago, his career, interests, and motives began to face toward
public Cloud, including private and hybrid; services related to Cloud computing such
as network, storage, orchestration, job automation, and monitoring; and open source
software as well. He has worked on Mastering AWS Development, Building Networks and
Servers Using Beaglebone, PostgreSQL Cookbook, Icinga Network Monitoring, and Building a
Home Security System with BeagleBone all by Packt Publishing.

Thanks to Packt Publishing for giving me the opportunity to


review this book and thanks to the author and coordinator for their
contributions to this book. I did enjoy reviewing this book and
studying AWS further because I got the opportunity to examine
several AWS services that I've never used through this review.

I hope this book will be your first step to AWS!


Dr. Ketan Parmar (aka KPBird ) has been a Java enthusiast for more than 7
years. He has worked in various technologies in Java and explored all three
areas of Java (SE, ME & EE). He has provided a lot of solutions on StackOverflow
and has contributed to various blogs and sites. He is passionate about Java,
Android, grid computing, user interface, open-source, and Cloud computing.
He has been an eminent speaker for tools and technologies related to Java Enterprise
and Android Mobile. He is the leader and founder of JUGAhmedabad (Java User
Group Ahmedabad).
www.PacktPub.com

Support files, eBooks, discount offers, and more


For support files and downloads related to your book, please visit
www.PacktPub.com.

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 www.PacktPub.
com and as a print book customer, you are entitled to a discount on the eBook copy.
Get in touch with us at service@packtpub.com for more details.

At www.PacktPub.com, 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.
TM

https://www2.packtpub.com/books/subscription/packtlib

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital
book library. Here, you can search, access, and read 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 a web browser

Free access for Packt account holders


If you have an account with Packt at www.PacktPub.com, you can use this to access
PacktLib today and view 9 entirely free books. Simply use your login credentials for
immediate access.
Table of Contents
Preface vii
Chapter 1: Architecting in the Cloud 1
AWS services 2
The AWS global infrastructure 3
Regions and Availability Zones 6
What are AWS regions? 7
What are AWS Availability Zones? 9
How to use AWS AZs 10
AWS EC2 and IAM 11
The AWS EC2 functionality 11
Instance types and pricing 12
Selecting an instance type 12
AWS EC2 instance numbers and pricing 17
Billing and pricing 17
Ephemeral versus persistent storage 18
What is ephemeral storage? 18
How to use persistent storage with your instance 24
Scalability, elasticity, and bootstrapping 26
Bootstrap your instances 27
Black belt booting 28
Identity and Access Management 28
Accessing IAM 29
Authentication and authorization 31
Summary 34

[i]
Table of Contents

Chapter 2: Elastic and Fault-tolerant Infrastructure 35


The AWS Elastic infrastructure by Auto Scaling 36
Working with Auto Scaling 37
Ways to access the Auto Scaling service 37
Installing and configuring Auto Scaling 38
Installing Auto Scaling prerequisites 38
Working with Auto Scaling using the CLI 42
Getting started with Auto Scaling using AWS Management Console 45
Summary 57
Chapter 3: Storage Lifecycle Management 59
Data storage scaling 59
AWS DynamoDB 60
DynamoDB data types 61
Creating the first SDK project 65
Java SDK operations 70
The DynamoDB local 76
AWS Simple Storage Service (S3) 79
Amazon CloudFront 85
Creating Amazon CloudFront Distribution 86
Amazon RDS management with CLI 91
Authorizing network access 94
Summary 96
Chapter 4: Web Application and Batch Processing Architecture 97
Alarms with Amazon CloudWatch 98
Creating an EC2 instance 101
Batch processing flow 104
Creating an IAM role 105
Creating SQS tasks 107
Creating S3 bucket 108
Launching worker nodes 109
Dispatching work and viewing results 115
Monitoring the cluster 116
Amazon CloudFormation 117
Where should I start on AWS? 122
Case study 122
LAMP on your Amazon EC2 122
Prerequisites 122
Installing and starting the LAMP server 123
File permissions 124
Testing the LAMP web server 124
Summary 125

[ ii ]
Table of Contents

Chapter 5: High Availability, Disaster Recovery,


and Amazon VPC 127
Disaster recovery circumstances with AWS 128
Recovery time objective and recovery point objective 128
Backup and restore 129
Pilot light recovery in AWS 130
Warm standby solution 132
Multisite solution 135
Replication of data 137
Architecting with Amazon VPC 139
Launching an instance in the VPC 143
Creating a private subnet 148
Spinning a database instance in the private subnet 148
Creating a Remote Access Software VPN to your VPC 151
Launching an OpenVPN instance 151
Downloading the OpenVPN client 154
Configuring the OpenVPN server 155
Summary 156
Chapter 6: Tools for AWS and Setup Guidelines 157
Working with AWS SDKs and IDE toolkits 158
Working with tools and code libraries 176
Creating an SDK project 177
Java SDK operations 180
DynamoDB Local 185
Command-line interface 187
Summary 191
Chapter 7: Interacting with AWS Using API 193
REST-based APIs 194
Authenticating requests using REST APIs 194
Getting started with API tools 196
Installing API tools 197
Running your first instance 198
Example of EC2 API 198
Data format for DynamoDB 199
HTTP requests 200
Request header 202
Request body 203
Response header 203

[ iii ]
Table of Contents

Operations in DynamoDB 204


CreateTable 205
PutItem 205
UpdateItem 206
GetItem 207
Query 208
Scan 209
DeleteItem 210
DescribeTable 210
UpdateTable 211
DeleteTable 212
ListTables 212
BatchGetItem 212
BatchWriteItem 214
Summary 215
Chapter 8: Amazon Beanstalk, CloudTrail, and
Data Warehouse Services 217
Application deployment using AWS Elastic Beanstalk 217
Getting started with Amazon Redshift 227
Configuration options 228
Cluster configurations 230
Interacting with AWS Trail 232
Features and benefits 232
Case study: migrating applications to the Cloud 238
Summary 241
Chapter 9: Bootstrapping and Auto-configuration 243
Black belt booting 244
Bootstrapping instances with AWS CloudFormation 250
Bootstrapping Amazon instances using Chef 252
Continuous integration and deployment 263
Automation with Amazon SWF 265
The workflow execution of Amazon SWF 266
Working with AWS OpsWorks 275
Creating an OpsWorks stack 277
Creating the Rails App Server layer 278
Creating the database layer 279
Adding instances 280
Summary 286

[ iv ]
Table of Contents

Chapter 10: AWS Billing and Amazon CDN Service 287


Programmatic AWS billing 287
Turning on detailed billing reports 288
Select the detailed billing reports you want to receive 289
Referencing your detailed billing report data 290
Cost allocation reporting 290
Cost control architectures 292
Controlling access to your billing report files 292
CDN service from AWS – CloudFront 293
How CloudFront works 293
Getting started with CloudFront 297
Streaming 307
Summary 307
Chapter 11: Analyzing Big Data with AWS 309
Introducing Big Data and Hadoop 310
Introducing Amazon Elastic MapReduce 310
Provisioning a Hadoop cluster on EMR 311
Hive structural design 323
Metastore 323
Compiler 324
The execution engine 324
Supporting apparatuses 324
Data types 325
Data model 326
Indexing on Hive tables 328
Amazon Kinesis 330
Kinesis terminology 330
Streams 330
Data records 330
Producers 330
Consumers 331
Shards 331
Partition keys 331
Amazon Kinesis Client Library 331
Summary 335
Chapter 12: Miscellaneous Features, AWS Security,
and Troubleshooting 337
Amazon CloudSearch 337
Creating and configuring a search domain 338
Uploading and indexing the data for search 342
Searching your Amazon CloudSearch domain 344

[v]
Table of Contents

Amazon Mechanical Turk 347


AWS Security best practices 350
Understanding AWS Secure Global Infrastructure 351
Regions, Availability Zones, and service endpoints 353
Managing keys in the Cloud 353
Managing patches 354
Mitigating compromise and abuse 354
The Trusted Advisor tool 354
Troubleshooting practices 355
Ephemeral disk corruption 355
DNS concerns 356
Resizing or emptying disks 356
Host dispute 356
Security group misconfiguration 356
Summary 357
Chapter 13: Building Applications and AWS Best Practices 359
Application impression 359
Tool mixture 360
Development phase 360
Conventions 361
Handlers 361
Starting with EduCloud 362
Handling instance entreaty 365
Instance entreaty sanction 367
Rejecting an instance entreaty 372
Using RDS and Elastic Beanstalk 374
The application of superlative AWS exercises 375
Best practices with AWS 375
Summary 382
Index 383

[ vi ]
Preface
Mastering AWS Development is a single place in which you can find solutions for
all of your issues with Amazon Web Services. This book will explain how to begin
and manage different services using the AWS SDKs and APIs as well as the AWS
Management Console, a browser-based graphical user interface to interact with the
services. It will include a significant number of examples and use cases that can be
used by anyone, from an intermediate to an expert. Using the examples in this book,
users can perform advanced-level programming and gain the advantages of AWS
services in their SDLC at significantly lower costs on AWS.

What this book covers


Chapter 1, Architecting in the Cloud, covers the AWS development platform and its
access and how to manage the identity for applications. Later, users will be able to
state elasticity, scalability, and bootstrapping functionality using code.

Chapter 2, Elastic and Fault-tolerant Infrastructure, discusses how to create


scalable infrastructure using EC2, EBS, and an Elastic Load Balancer and, as per
the requirement from web traffic, how to scale it efficiently. Users will also learn
what Auto Scaling is and launch the configuration with EC2 instances and
load balancers.

Chapter 3, Storage Lifecycle Management, discusses how to manage the entire life
cycle of storage of AWS using different services such as RDS, S3, and Redshift
programmatically.

Chapter 4, Web Application and Batch Processing Architecture, covers how to design
and develop web applications and their required infrastructure. Users will also
learn an alarm mechanism and how to create an environment for a batch processing
system on AWS.

[ vii ]
Preface

Chapter 5, High Availability, Disaster Recovery, and Amazon VPC, discusses how to
create highly available infrastructure for applications and what the vital steps and
logic are that should be implemented as a disaster recovery plan. Later, users will
also discover how to create Virtual Private Cloud on the AWS Management Console
and CLI.

Chapter 6, Tools for AWS and Setup Guidelines, covers how to set up and use
the AWS code library. Users will also get practical setup instructions for SDKs
and IDE toolkits, which can be used during programming with AWS services.

Chapter 7, Interacting with AWS Using API, provides hands-on knowledge about
APIs and how to connect AWS services through REST-based APIs. Also, users will
learn how to authenticate and serve a request of/from API calls.

Chapter 8, Amazon Beanstalk, CloudTrail, and Data Warehouse Services, discusses how
to migrate and host an existing/new app on AWS and how to identify appropriate
services for the app. You will find out how to use the Elastic Beanstalk container
service, AWS trail, CloudFormation, and how to do Auto Scaling based upon the
requirements from end user traffic.

Chapter 9, Bootstrapping and Auto-configuration, covers how to bootstrap AWS EC2


instances with pre-configuration commands for the environment setup and how to
use Chef for automation and deployment using code. Users will also learn how the
AWS CloudFormation service can work seamlessly with an application and how the
SWF and OpsWorks service can be used with the AWS infrastructure.

Chapter 10, AWS Billing and Amazon CDN Service, discusses how to do programming
for AWS billing, which can be accessed from an application and how to do cost
allocation reporting. Users will also learn cost control architecture designs to cut
down the cost.

Chapter 11, Analyzing Big Data with AWS, provides brief practical knowledge about
big data and Apache Hadoop on AWS Cloud. Users will also learn how to use the
EMR and Kinesis services with Big Data analytics and for Hadoop solutions.

Chapter 12, Miscellaneous Features, AWS Security and Troubleshooting, discusses


advanced services administration and programming with CloudSearch and
Mechanical Turk. Also, users will discover what kind of security AWS provides and
how to use those security features at the infrastructure and application level. At the
end of this chapter, users will learn some best troubleshooting practices.

[ viii ]
Preface

Chapter 13, Building Applications and AWS Best Practices, covers the tools/apps that
are available to use with AWS for smooth development/migration and deployment.
Later in this chapter, users will also learn integration techniques.

Chapter 14, Third-party Apps and Tools Integration with AWS, is an online chapter
which can be found at https://www.packtpub.com/sites/default/files/
downloads/Chapter14.pdf.

What you need for this book


To start using this book, you need the following software/applications to be installed
on your system:

• An AWS account
• Java 1.6 or higher
• Eclipse (Juno or Kepler)
• The AWS SDK
• AWS CLI tools
• MySQL Workbench

Who this book is for


This book is ideal for programmers, developers, and architects who want to move
their existing infrastructure to the AWS Cloud and start using AWS services in all
the application tiers using services such as compute, storage, database, queuing,
messaging, or mailing in an application, and finally, hosting this application in AWS
too. Readers should have a basic knowledge and understanding of Java programs
and AWS essentials.

Conventions
In this book, you will find a number of styles of text that distinguish between
different kinds of information. Here are some examples of these styles, and an
explanation of their meaning.

Code words in text, database table names, folder names, filenames, file extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows:
"We can include other contexts through the use of the include directive."

[ ix ]
Preface

A block of code is set as follows:


[default]
exten => s,1,Dial(Zap/1|30)
exten => s,2,Voicemail(u100)
exten => s,102,Voicemail(b100)
exten => i,1,Voicemail(s0)

When we wish to draw your attention to a particular part of a code block, the
relevant lines or items are set in bold:
[default]
exten => s,1,Dial(Zap/1|30)
exten => s,2,Voicemail(u100)
exten => s,102,Voicemail(b100)
exten => i,1,Voicemail(s0)

Any command-line input or output is written as follows:


# cp /usr/src/asterisk-addons/configs/cdr_mysql.conf.sample
/etc/asterisk/cdr_mysql.conf

New terms and important words are shown in bold. Words that you see on the
screen, in menus or dialog boxes for example, appear in the text like this: "clicking
the Next button moves you to the next screen".

Warnings or important notes appear in a box like this.

Tips and tricks appear like this.

Reader feedback
Feedback from our readers is always welcome. Let us know what you think about
this book—what you liked or may have disliked. Reader feedback is important for us
to develop titles that you really get the most out of.

To send us general feedback, simply send an e-mail to feedback@packtpub.com,


and mention the book title via the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing
or contributing to a book, see our author guide on www.packtpub.com/authors.

[x]
Preface

Customer support
Now that you are the proud owner of a Packt book, we have a number of things to
help you to get the most from your purchase.

Downloading the example code


You can download the example code files for all Packt books you have purchased
from your account at http://www.packtpub.com. If you purchased this book
elsewhere, you can visit http://www.packtpub.com/support and register to have
the files e-mailed directly to you.

Downloading the color images of this book


We also provide you a PDF file that has color images of the screenshots/diagrams
used in this book. The color images will help you better understand the changes in
the output. You can download this file from: https://www.packtpub.com/sites/
default/files/downloads/3632EN_ImageBundle.pdf.

Errata
Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you find a mistake in one of our books—maybe a mistake in the text or
the code—we would be grateful if you would report this to us. By doing so, you can
save other readers from frustration and help us improve subsequent versions of this
book. If you find any errata, please report them by visiting http://www.packtpub.
com/submit-errata, selecting your book, clicking on the errata submission form link,
and entering the details of your errata. Once your errata are verified, your submission
will be accepted and the errata will be uploaded on our website, or added to any list of
existing errata, under the Errata section of that title. Any existing errata can be viewed
by selecting your title from http://www.packtpub.com/support.

Piracy
Piracy of copyright material on the Internet is an ongoing problem across all media.
At Packt, we take the protection of our copyright and licenses very seriously. If you
come across any illegal copies of our works, in any form, on the Internet, please
provide us with the location address or website name immediately so that we can
pursue a remedy.

[ xi ]
Preface

Please contact us at copyright@packtpub.com with a link to the suspected


pirated material.

We appreciate your help in protecting our authors, and our ability to bring
you valuable content.

Questions
You can contact us at questions@packtpub.com if you are having a problem with
any aspect of the book, and we will do our best to address it.

[ xii ]
Architecting in the Cloud
For many years, application/system analysts and software architects have surveyed
and analyzed several important concepts, best practices, and tools to build highly-
scalable and fault-tolerant applications or infrastructures. In today's "era of Big Data",
these concepts or best practices may be more relevant due to "Big Bang" data, non-
predictable web traffic patterns, and the demand for reduced response time. This
chapter will introduce, reinforce, and reiterate some of these traditional approaches,
and how they can be involved in the context of Amazon Web Services (AWS). We
will also discuss some basic concepts of the AWS terminology, which will be helpful
in starting to architect with AWS.

In this chapter, we will cover the following points:

• An overview of AWS services


• The AWS global infrastructure
• Regions and Availability Zones
• An overview of AWS EC2, IAM, and EBS
• Scalability, elasticity, and bootstrapping
• Authentication and authorization

Let's start by introducing AWS services.

[1]
Architecting in the Cloud

AWS services
The AWS Cloud provides a highly-scalable and fault-tolerant infrastructure on
which to deploy web-based solutions, with minimal cost and administration, and
more flexibility than your in-house infrastructure or datacenter capabilities:

AWS offers a very good number of infrastructure services. The previous fundamental
diagram shows you the AWS terminologies and how AWS services can interact
with each other and your web-based apps, to provide solutions to build, maintain,
and deploy your applications, needs, a wide range of various technological services
which will help you to deploy and manage your applications. Clients and customers
always ask: what demonstrates a fully managed and flexible technical infrastructure
platform? To start from scratch, you can search for the AWS platform, which delivers
an industry-leading infrastructure platform with all the required features that Cloud
brings. Also, AWS provides knowledge about how AWS satisfies custom requirements
and why users might need each service capability provided by AWS.

[2]
Chapter 1

AWS started contributing to their highly available infrastructure platform in 2006,


based on the pay-as-you-go model. After that, whatever they have garnered as
services and customers till now is remarkable because they have thousands and
thousands of customers across 191 countries who use AWS platform services for
their initiatives, and the number is increasing in the AWS customer bucket. AWS
provided around 160 features and services in 2012 and around 280 in 2013. In 2014,
the number is increasing further.

The AWS global infrastructure


At present, AWS supports nine regions all over the world, which are the East Coast
of the U.S., the West Coast of the U.S., Europe, Tokyo, Singapore, Sydney, Brazil, 26
redundant Availability Zones, and 56 Amazon CloudFront points-of-presence, and
this number is increasing with time.

It is very crucial and important to have an option to place apps as close as


possible to your customers and end users when you create and deploy apps,
by ensuring the best possible lowest latency and user expected features and
experience for performance. For this, AWS provides regions worldwide.
Specific regions are as follows:

• US East (Northern Virginia) region


• US West (Oregon) region
• US West (Northern California) region
• EU (Ireland) region
• Asia Pacific (Singapore) region
• Asia Pacific (Sydney) region
• Asia Pacific (Tokyo) region
• South America (Sao Paulo) region
• US GovCloud

[3]
Architecting in the Cloud

Apart from infrastructure-level highlights, AWS have plenty of managed services,


which can be the cream of the AWS candy bar! The managed services bucket has
the following services:

• Security: For every organization, security is a very vital element. For


that, AWS has several remarkable security features, which distinguish
it from other Cloud provides. At the moment, I am just underlining the
security features at a very high level but we will discuss all the features
of AWS security in Chapter 12, Miscellaneous Features, AWS Security and
Troubleshooting. The security features of AWS are as follows:
°° Certifications and accreditations
°° Identity and Access Management

• Global infrastructure: AWS provides a fully-functional, flexible technology


infrastructure platform worldwide with managed services with certain
characteristics, for example:
°° Multiple global locations for deployment
°° Low-latency CDN service
°° Reliable, low-latency DNS service

• Compute: AWS offers a huge range of various Cloud-based core


computing services, including a variety of compute instances, which can
be automatically scaled to justify the needs of your users and application;
a fully managed elastic load balancing service; and more fully managed
desktop resources on the pathway of AWS Cloud. Some of the common
characteristics of computer services include the following:
°° Broad choice of resizable compute instances
°° Flexible pricing opportunities
°° Great discounts for compute resources are always on
°° Lower hourly rates for elastic workloads
°° Wide-range of networking configuration selections
°° A widespread choice of operating systems
°° Virtual desktops
°° One can save as one grows, with the tiered pricing model

[4]
Random documents with unrelated
content Scribd suggests to you:
back
back
back
back
back
back
back
back
back
back
back
back
back
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookname.com

You might also like