AWS for Developers For Dummies

AWS for Developers For Dummies

by John Paul Mueller

Paperback

$26.99 $29.99 Save 10% Current price is $26.99, Original price is $29.99. You Save 10%.
View All Available Formats & Editions
Choose Expedited Shipping at checkout for guaranteed delivery by Thursday, February 28

Product Details

ISBN-13: 9781119371847
Publisher: Wiley
Publication date: 08/14/2017
Pages: 384
Sales rank: 575,263
Product dimensions: 7.40(w) x 9.20(h) x 0.90(d)

About the Author

John Mueller is an author and technical editor who has written 103 books. Some of his current works include Python development books. He has also written AWS For Admins For Dummies, which provides administrators a great place to start with Amazon Web Services (AWS). John has had an interest in AWS since its inception. In fact, he wrote Mining Amazon Web Services based on that humble beginning. Be sure to read John's blog at http://blog.johnmuellerbooks.com/.

Table of Contents

Introduction 1

About This Book 1

Foolish Assumptions 2

Icons Used in This Book 3

Beyond the Book 4

Where to Go from Here 5

Part 1 Discovering the AWS Development Environment 7

Chapter 1 Starting Your AWS Adventure 9

Defining the AWS Cloud 10

Understanding service-driven application architectures 10

Understanding process- and function-driven work flows 12

Discovering IaaS 14

Defining LaaS 15

Comparing IaaS to SaaS 16

Comparing IaaS to PaaS 17

Determining Why You Should Use AWS 18

Comparing AWS to other cloud services 18

Defining target areas where AWS works best 19

Considering the app types that AWS supports best 20

Considering the AWS-Supported Platforms 22

Obtaining an overview of the supported platforms 23

Choosing an appropriate platform for your needs 25

Chapter 2 Obtaining Development Access to Amazon Web Services 27

Discovering the Limits of Free Services 28

Expiring services versus non expiring services 29

Considering the usage limits 31

Considering the Hardware Requirements 32

Hosting the services locally 32

Hosting the services in the cloud 34

Defining a good development environment 35

Getting Signed Up 36

Obtaining an account 37

Getting access keys 42

Testing Your Setup 47

Chapter 3 Choosing the Right Services 51

Getting a Quick Overview of Free-Tier Services 52

Understanding the free services 53

Working with the online labs 58

Choosing a free services path 59

Considering the eventual need for paid services 60

Matching AWS Services to Your Application 65

Working with services during the free period 65

Interacting with services after the free period 66

Considering AWS Security Issues 67

Getting the Amazon view of security 67

Getting the expert view of security 68

Discovering the reality of Amazon security 69

Employing AWS security best practices 69

Using the IAM Policy Simulator to check access 69

Part 2 Starting the Development Process 73

Chapter 4 Considering AWS Communication Strategies 75

Defining the Major Communication Standards 76

Transporting the data 76

Obtaining an API method listing 78

Making a request 78

Understanding How REST Works 80

Defining REST resources 80

Working with requests and responses 81

Overcoming those really annoying signature issues 83

Chapter 5 Creating a Development Environment 87

Choosing a Platform 88

Considering the AWS-supported options 88

Using JavaScript for browser examples 90

Using Python for local examples 91

Obtaining and Installing Python 91

Obtaining Continuum Analytics Anaconda version 4.3.1 92

Installing Python on Linux 93

Installing Python on MacOS 94

Installing Python on Windows 95

Using Jupyter Notebook 98

Defining the code repository 100

Working with the Identity and Access Management Console 106

Configuring root access 107

Signing into a user account 111

Installing the Command Line Interface Software 112

Getting started with CLI 112

Obtaining additional information and help 113

Configuring S3 Using CLI 114

Creating the aws utility configuration file 115

Obtaining S3 information 116

Configuring S3 Using Node.js 117

Installing Node.js 117

Configuring Node.js. 118

Dealing with credentials 119

Dealing with Cross Origin Resource Sharing (CORS) 119

Making a call 122

Configuring S3 Using a Desktop Application 123

Installing boto 124

Listing S3 buckets 124

Chapter 6 Creating a Virtual Server Using EC2 125

Getting to Know the Elastic Compute Cloud (EC2) 126

Understanding basic EC2 configuration 126

Defining the security setup 128

Using the standard storage options 130

Working with Elastic Block Store (EBS) Volumes 130

Knowing the EBS volume types 130

Cresting an EBS volume 131

Discovering images and Instances 137

Generating security keys 138

Creating an instance 138

Connecting to the instance 143

Part 3 Performing Basic Development Tasks 145

Chapter 7 Understanding AWS Input/Output 147

Considering the Input/Output Options 148

Working with JSON 149

Working with XML 150

Working with Amazon API Gateway 151

Defining the uses for the API Gateway 151

Defining the security requirements 151

Understanding models 153

Mapping templates 153

Creating an API Gateway using the console 154

Accessing an API Gateway using the CLI 161

Chapter 8 Developing Web Apps Using Elastic Beanstalk 165

Considering Elastic Beanstalk (EB) Features 166

Deploying an EB Application 168

Creating the application entry 168

Testing the application deployment 178

Setting application security 178

Configuring the application 181

Working with application environments 182

Updating an EB Application 183

Getting the sample code and making a change 184

Uploading the modified application 184

Switching application versions 186

Removing Unneeded Applications 188

Monitoring Your Application Using Amazon CloudWatch 188

Chapter 9 Developing Batch Processes and Scripts 191

Considering the Batch-Processing and Script Options 192

Defining the difference between batch processing and scripting 192

Understanding the batch-processing options 193

Understanding the scripting options 196

Performing Batch Processing Locally 198

Developing Scripts 199

Using Scripts Locally 201

Interacting with aws-shell 202

Considering aws-shell features 202

Getting aws-shell 203

Performing simple tasks 204

Obtaining help 206

Editing your commands 206

Chapter 10 Responding to Events with Lambda 209

Considering the Lambda Features 210

Working with a server 210

Working in a serverless environment 211

Starting the Lambda Console 212

Creating a Basic Lambda Application 214

Selecting a Lambda blueprint 214

Configuring a function 216

Using ensembles for functions 222

Creating the test setup 223

Testing the function 223

Fixing test function errors 226

Checking the function metrics 226

Modifying the function code 227

Deleting the function 229

Interacting with Simple Queue Services (SQS) 229

Creating a queue using the console 230

Working with the CLI to configure SQS 232

Writing a program in Python 233

Using Lambda to create entries 234

Part 4 Interacting with Databases 239

Chapter 11 Getting Basic DBMS Using RDS 241

Considering the Relational Database Service (RDS) Features 242

Choosing a database engine 242

Understanding the need to scale efficiently 245

Defining data replication 246

Cloning your database 247

Managing RDS 248

Accessing the RDS Management Console 249

Using the CLI alternative 254

Performing management tasks programmatically 256

Citing a Database Server 257

Installing a database access product 258

Accessing the instance 258

Adding tables 260

Working with other features 260

Adding Support to Applications 265

Considering the access requirements 265

Configuring the MySQL setup 267

Interacting with the database 267

Configuring Load Balancing and Scaling 269

Defining the purpose of load balancing 269

Working with Elastic Load Balancing 270

Defining the purpose of scaling 274

Working with Auto Scaling 275

Chapter 12 Programming Techniques for AWS and MySQL 279

Interacting with RDS 280

Interacting with option groups using the console 281

Using the CLI to work with events 288

Employing programming techniques to read and write parameter groups 293

Working with MySQL Code 300

Enabling stored procedures, functions, and triggers 300

Using stored procedures 301

Working with the MySQL/RDS Tables 302

Performing Data Uploads 305

Performing Data Downloads 307

Chapter 13 Gaining NoSQL Access Using DynamoDB 309

Considering the DynamoDB Features 310

Getting a quick overview of NoSQL 310

NoSQL Limitations 311

Differentiating between NoSQL and relational databases 312

Defining typical uses for DynamoDB 314

Downloading a Local Copy of DynamoDB 314

Performing the installation 314

Starting DynamoDB locally 315

Overcoming the Windows OS Error issue 316

Testing your DynamoDB installation 316

Creating a Basic DynamoDB Setup 318

Developing a Basic Database 321

Configuring tables 322

Adding items 327

Modifying items 332

Copying items 332

Deleting items 333

Deleting a table 333

Performing Queries 333

Using the console 333

Querying the database programmatically 336

Part 5 The Part of Tens 339

Chapter 14 Ten Ways to Crete AWS Applications Quickly 341

Working at the Console 341

Using Example Source Code 342

Combining Trial-and-Error Techniques 343

Watching the Videos 343

Attending the Webinars 344

Discovering Others Efforts 345

Depending on Peer Support 345

Working with Blogs 346

Using Alternative Sources 347

Going Back to Tutorials 347

Chapter 15 Ten AWS Tools Every Developer Needs 349

Obtaining Additional Amazon Offerings 350

Enhancing ASW services directly 350

Employing Tools for Amazon Web Services 350

Wandering through Amazon Marketplace 351

Getting Amazon-supported peer help 352

Partnering with a Third Party 352

Developing New Knowledge 353

Getting an education 353

Locating online blogs and note sources 354

Rely on an information repository 354

Using Bitnami Developer Tools- 355

Relying on Device Emulators 355

Index 357

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews