Introduction xxix
Assessment Test xxxv
Chapter 1 Introduction to AWS Cloud API 1
Introduction to AWS 2
Calling an AWS Cloud Service 5
Working with Regions 9
API Credentials and AWS Identity and Access Management 14
Summary 24
Exam Essentials 24
Resources to Review 25
Exercises 26
Review Questions 33
Chapter 2 Introduction to Compute and Networking 37
Amazon Elastic Compute Cloud 38
Running Applications on Instances 44
Customizing the Network 51
Managing Your Resources 64
Developer Tools 66
Summary 66
Exam Essentials 67
Resources to Review 68
Exercises 69
Review Questions 80
Chapter 3 Hello, Storage 85
Introduction to AWS Storage 86
Storage Fundamentals 87
AWS Block Storage Services 92
AWS Object Storage Services 99
AWS File Storage Services 136
Storage Comparisons 142
Cloud Data Migration 145
Summary 154
Exam Essentials 154
Resources to Review 159
Exercises 162
Review Questions 170
Chapter 4 Hello, Databases 175
Introduction to Databases 176
Relational Databases 178
Nonrelational Databases 195
Data Warehouse 217
In-Memory Data Stores 226
Graph Databases 230
Cloud Database Migration 232
Running Your Own Database on Amazon Elastic Compliance and Security 236
Summary 237
Exam Essentials 237
Resources to Review 239
Exercises 242
Review Questions 256
Chapter 5 Encryption on AWS 259
Introduction to Encryption 260
AWS Key Management Service 260
AWS CloudHSM 262
Controlling the Access Keys 263
Summary 273
Exam Essentials 273
Resources to Review 274
Exercises 275
Review Questions 279
Chapter 6 Deployment Strategies 281
Deployments on the AWS Cloud 282
AWS Elastic Beanstalk 290
Deployment Strategies 299
Monitoring and Troubleshooting 303
Summary 307
Exam Essentials 307
Resources to Review 308
Exercises 309
Review Questions 313
Chapter 7 Deployment as Code 317
Introduction to AWS Code Services 318
Using AWS CodePipeline to Automate Deployments 320
Using AWS CodeCommit as a Source Repository 332
Using AWS CodeBuild to Create Build Artifacts 344
Using AWS CodeDeploy to Deploy Applications 352
Summary 371
Exam Essentials 372
Resources to Review 373
Exercises 374
Review Questions 377
Chapter 8 Infrastructure as Code 381
Introduction to Infrastructure as Code 382
Infrastructure as Code 382
Using AWS CloudFormation to Deploy Infrastructure 383
Summary 432
Exam Essentials 434
Resources to Review 436
Exercises 437
Review Questions 440
Chapter 9 Configuration as Code 445
Introduction to Configuration as Code 446
Using AWS OpsWorks Stacks to Deploy Applications 447
Using Amazon Elastic Container Service to Deploy Containers 471
Summary 483
Exam Essentials 485
Resources to Review 487
Exercises 488
Review Questions 491
Chapter 10 Authentication and Authorization 495
Introduction to Authentication and Authorization 496
Summary 508
Exam Essentials 509
Resources to Review 509
Exercises 510
Review Questions 517
Chapter 11 Refactor to Microservices 519
Introduction to Refactor to Microservices 521
Amazon Simple Queue Service 523
Amazon Simple Notification Service 534
Amazon Kinesis Data Streams 540
Amazon Kinesis Data Firehose 543
Amazon Kinesis Data Analytics 544
Amazon Kinesis Video Streams 545
Amazon DynamoDB Streams 546
AWS IoT Device Management 547
Amazon MQ 550
AWS Step Functions 551
Summary 568
Exam Essentials 569
Resources to Review 570
Exercises 573
Review Questions 582
Chapter 12 Serverless Compute 585
Introduction to Serverless Compute 586
AWS Lambda 586
AWS Lambda Functions 588
Inside the AWS Lambda Function 593
Configuring the AWS Lambda Function 596
Invoking AWS Lambda Functions 601
Monitoring AWS Lambda Functions 602
Summary 605
Exam Essentials 605
Resources to Review 606
Exercises 607
Review Questions 618
Chapter 13 Serverless Applications 621
Introduction to Serverless Applications 622
Web Server with Amazon Simple Storage Service (Presentation Tier) 622
Dynamic Data with Amazon API Gateway (Logic or App Tier) 627
User Authentication with Amazon Cognito 634
Standard Three-Tier vs. the Serverless Stack 640
Amazon Aurora Serverless 642
AWS Serverless Application Model 643
AWS SAM CLI 645
AWS Serverless Application Repository 647
Serverless Application Use Cases 647
Summary 647
Exam Essentials 649
Resources to Review 650
Exercises 651
Review Questions 660
Chapter 14 Stateless Application Patterns 663
Introduction to the Stateless Application Pattern 664
Amazon DynamoDB 664
Amazon ElastiCache 739
Amazon Simple Storage Service 747
Amazon Elastic File System 773
Summary 781
Exam Essentials 782
Resources to Review 785
Exercises 786
Review Questions 793
Chapter 15 Monitoring and Troubleshooting 797
Introduction to Monitoring and Troubleshooting 798
Amazon CloudWatch 800
AWS CloudTrail 818
AWS X-Ray 820
Summary 823
Exam Essentials 823
Resources to Review 825
Exercises 826
Review Questions 829
Chapter 16 Optimization 833
Introduction to Optimization 834
Cost Optimization: Everyone's Responsibility 834
Right Sizing 838
Using Instance Reservations 840
Using Spot Instances 843
Using AWS Auto Scaling 845
Using Containers 849
Using Serverless Approaches 850
Optimizing Storage 851
Optimizing Data Transfer 858
Relational Databases and Amazon DynamoDB 859
Monitoring Costs 864
Monitoring Performance 868
Summary 869
Exam Essentials 871
Resources to Review 874
Exercises 876
Review Questions 881
Appendix Answers to Review Questions 885
Index 917