AWS certified developer : associate guide : your one-stop solution to passing the AWS developer's 2019 (DVA-C01) certification [Second ed.] 9781789617313, 1789617316

2,201 332 37MB

English Pages [790] Year 2019

Report DMCA / Copyright

DOWNLOAD FILE

AWS certified developer : associate guide : your one-stop solution to passing the AWS developer's 2019 (DVA-C01) certification [Second ed.]
 9781789617313, 1789617316

Table of contents :
Cover
Title Page
Copyright and Credits
About Packt
Contributors
Table of Contents
Preface
Chapter 1: Overview of AWS Certified Developer - Associate Certification
Frequently asked questions about the exam
Chapter 2: Understanding the Fundamentals of Amazon Web Services
Examples of cloud services
The evolution of cloud computing
More about AWS
The benefits of using AWS over a traditional data center
Comparing AWS cloud and on-premises data centers
Total cost of ownership versus return on investment
TCO
ROI
Accessing AWS services
An overview of AWS
AWS' global infrastructure
Regions and AZs
What are SaaS, PaaS, and IaaS?
Understanding virtualization
Virtualization types based on virtualization software
Virtualization types based on virtualization methods
Elasticity versus scalability
Creating a new AWS account
AWS' free tier
Root user versus non-root user
Deleting an AWS account
Understanding the AWS dashboard
Components of the AWS dashboard
Core AWS services
AWS compute services
AWS storage services
AWS database services
AWS networking and content delivery services
AWS migration services
AWS developer tools
AWS management tools
AWS security, identity, and compliance services
AWS analytics services
AWS machine learning services
AWS IoT services
AWS game development services
AWS mobile services
AWS application integration services
AWS desktop and app streaming services
AWS business productivity services
AWS customer engagement services
AWS media services
The shared security responsibility model
AWS soft limits
DR with AWS
The backup and restore DR model
The pilot light DR model
The warm standby DR model
The multi-site DR model
Summary
Chapter 3: Identity and Access Management (IAM)
Understanding the AWS root user
Elements of IAM
Users
Access key ID and secret key
Password policies
Multi-factor authentication
Security token-based MFA
Steps for enabling a virtual MFA device for a user
Creating an AWS IAM user using the AWS dashboard
Introducing the AWS CLI
Installing the AWS CLI
Getting an AWS user access key and secret key
Configuring the AWS CLI
AWS CLI syntax
Getting AWS CLI help
Creating an IAM user using the AWS CLI
Groups
Creating a new IAM group
Creating an IAM group using the CLI
Adding existing users to a group
IAM role
Creating roles for an AWS service
Creating IAM roles using the AWS CLI
Policy
Managed policies
Inline policies
Resource-based policies
IAM policy simulator
Active Directory Federation Service (AD FS)
Integration between AD FS and the AWS console
Web identity federation
Security Token Service (STS)
AWS account ID and alias
AWS account IDs
AWS account aliases
Controlling user access to the AWS Management Console
IAM best practices
Exam tips
Summary
Chapter 4: Virtual Private Clouds
Introduction to VPCs
Subnets
Private subnets
Public subnets
IP addressing
Private IPs
Public IPs
Elastic IP addresses
Creating a VPC
VPCs with a single public subnet
VPCs with private and public subnets
VPCs with public and private subnets and hardware VPN access
VPCs with a private subnet only and hardware VPN access
Security
Security groups
NACLs
Security groups versus NACLs
Flow logs
Controlling access
VPC networking components
ENI
Route tables
IGWs
Egress-only IGWs
NATs
Comparison of NAT instances and NAT gateways
DHCP option sets
DNS
VPC peering
VPC endpoints
ClassicLink
VPC best practices
Summary
Chapter 5: Getting Started with Elastic Compute Cloud (EC2)
Introducing EC2
Pricing for EC2
On-demand
Spot instances
Reserved instances
Scheduled reserved instances
Dedicated hosts
EC2 instance life cycle
Instance launch
Instance stop and start
Instance reboot
Instance retirement
Instance termination
Amazon Machine Images (AMIs)
Root device types
EC2 instance virtualization types
Creating an EC2 instance
Changing the EC2 instance type
Connecting to the EC2 instance
Connecting to a Linux EC2 instance from a Microsoft Windows system
Converting a PEM file to a private key (PPK) 
Connecting to an EC2 instance using a PuTTY session
Troubleshooting SSH connection issues
EC2 instance metadata and user data
Placement groups
Introducing EBS
Types of EBS
General Purpose SSD (gp2)
Provisioned IOPS SSD (io1)
Throughput optimized HDD (st1)
Cold HDD (sc1)
Encrypted EBS
Monitoring EBS volumes with CloudWatch
Snapshots
EBS-optimized EC2 instances
EC2 best practices
Summary
Chapter 6: Handling Application Traffic with ELB
Introducing ELB
Benefits of using ELB
Types of ELB
Classic Load Balancer
Creating a Classic Load Balancer
Application Load Balancer
Network Load Balancer
Features of ELB
How ELB works
The working of the Classic Load Balancer
The working of the Application Load Balancer
ELB best practices
Summary
Chapter 7: Monitoring with CloudWatch
Introducing CloudWatch
How Amazon CloudWatch works
Elements of Amazon CloudWatch
Namespaces
Metrics
Dimensions
Statistics
Percentile
Alarms
Creating a CloudWatch alarm
Billing alerts
CloudWatch dashboards
Monitoring types – basic and detailed
CloudWatch best practices
Summary
Chapter 8: Simple Storage Service, Glacier, and CloudFront
Introducing Amazon S3
Creating a bucket
Bucket restrictions and limitations
Bucket access control
Bucket policy
User policies
Transfer Acceleration
Enabling Transfer Acceleration
Requester Pays model
Enabling Requester Pays on a bucket
Understanding objects
Object keys
Object key naming guide
Object metadata
System-defined metadata
User-defined metadata
Versioning
Enabling versioning on a bucket
Object tagging
S3 storage classes
S3 Standard storage
S3-IA storage
S3 One Zone-IA
S3 RRS
S3 Intelligent-Tiering 
Glacier
Comparison of S3 storage classes and Glacier
Life cycle management
Life cycle configuration use cases
Defining a life cycle policy for a bucket
Hosting a static website on S3
Cross-origin resource sharing (CORS)
Using CORS in different scenarios
Configuring CORS on a bucket
Enabling CORS on a bucket
Cross-region replication
Enabling cross-region replication
CloudFront
CloudFront regional edge caches
Setting up CloudFront content and delivery
Summary
Chapter 9: Other AWS Storage Options
Storage and backup services provided by AWS
Amazon EFS
AWS Storage Gateway
File gateways
Volume gateways
Gateway–cached volumes
Gateway–stored volumes
Tape-based storage solutions
VTL
AWS Snowball
AWS Snowmobile
Summary
Chapter 10: AWS Relational Database Service
Introducing RDS
Amazon RDS components
DB instances
Regions and AZs
Security groups
DB parameter groups
DB option groups
RDS engine types
Amazon Aurora DB
Comparing Amazon RDS Aurora to Amazon RDS MySQL
MariaDB
Microsoft SQL Server
MySQL
Oracle
PostgreSQL
Creating an Amazon RDS MySQL DB instance
Monitoring RDS instances
Creating a snapshot
Restoring a DB from a snapshot
Changing an RDS instance type
Amazon RDS and VPC
Amazon RDS and high availability
Connecting to an Amazon RDS DB instance
Connecting to an Amazon Aurora DB cluster
Connecting to a MariaDB instance
Connecting to a MySQL instance
Connecting to an Oracle instance
RDS best practices
Summary
Chapter 11: AWS DynamoDB - A NoSQL Database Service
Understanding RDBMSes
Understanding SQL
Understanding NoSQL
Key-value pair databases
Document databases
Graph databases
Wide column databases
Using NoSQL databases
SQL versus NoSQL
Introducing DynamoDB
DynamoDB components
Primary key
Secondary indexes
DynamoDB Streams
Read consistency model
Naming rules and data types
Naming rules
Data types
Scalar data types
Document types
Set types
Creating a DynamoDB table
Adding a sort key while creating a DynamoDB table
Using advanced settings while creating a DynamoDB table
Creating secondary indexes
Read/write capacity mode
Provisioned capacity
Auto Scaling
Encryption at rest
Methods of accessing DynamoDB
DynamoDB console
DynamoDB CLI
Working with APIs
DynamoDB provisioned throughput
Read capacity units
Write capacity units
Calculating table throughput
Examples for understanding throughput calculation
Example 1
Example 2
Example 3
Example 4
Partitions and data distribution
Data distribution – partition key
Data distribution – partition key and sort key
GSIs and LSIs
The difference between GSIs and LSIs
DynamoDB Query
Query with AWS CLI
DynamoDB Scan
Reading an item from a DynamoDB table
Writing an item to a DynamoDB table
PutItem
UpdateItem
DeleteItem
Conditional writes
User authentication and access control
Managing policies
DynamoDB API permissions
DynamoDB best practices
Summary
Chapter 12: Amazon Simple Queue Service (SQS)
Why use SQS?
How do queues work?
Main features of SQS
Types of queues
Standard queues and FIFO queues
Dead Letter Queue (DLQ)
Queue attributes
Operations in a queue
Creating a queue
Sending a message in a queue
Viewing/deleting a message from a queue
Purging a queue
Deleting a queue
Subscribing a queue to a topic
Adding user permissions to a queue
SQS limits
Queue monitoring and logging
CloudWatch metrics available for SQS
Logging SQS API actions
SQS security
Authentication
Server-Side Encryption (SSE)
Summary
Chapter 13: Simple Notification Service (SNS)
Introducing Amazon SNS
Amazon SNS fanout
Application and system alerts
Mobile device push notifications
Push emails and text messaging
Creating an Amazon SNS topic
Subscribing to an SNS topic
Publishing a message to an SNS topic
Deleting an SNS topic
Managing access to Amazon SNS topics
When to use access control
Key concepts
Architectural overview
Accessing request evaluation logic
Invoking the Lambda function using SNS notifications
Sending Amazon SNS messages to Amazon SQS queues
Monitoring SNS with CloudWatch
SNS best practices
Summary
Chapter 14: AWS Simple Workflow Service (SWF)
When to use Amazon SWF
Workflow
Example workflow
Workflow history
How workflow history helps
Actors
Workflow starter
Decider
Activity worker
Tasks
SWF domains
Object identifiers
Task lists
Workflow-execution closure
Life cycle of a workflow execution
Polling for tasks
SWF endpoints
Managing access with IAM
SWF – IAM policy examples
Summary
Chapter 15: CloudFormation Overview
Understanding templates
Understanding a stack
The template structure
AWSTemplateFormatVersion
Description
Metadata
Parameters
AWS-specific parameters
Mappings
Conditions
Transform
Resources
Outputs
A sample CloudFormation template
CloudFormer
Rolling updates for auto scaling groups
CloudFormation best practices
Summary
Chapter 16: Understanding Elastic Beanstalk
Introduction to Elastic Beanstalk
Elastic Beanstalk components
Elastic Beanstalk environment tiers
The web server environment tier
The worker environment tier
Elastic Beanstalk-supported platforms
Creating a web application source bundle
Getting started using Elastic Beanstalk
Step 1 – signing in to the AWS account
Step 2 – creating an application
Step 3 – viewing information about the recently created environment
Step 4 – deploying a new application version
Step 5 – changing the configuration
Verifying the changes on the load balancer
Step 6 – cleaning up
The version life cycle
Deploying web applications to Elastic Beanstalk environments
Monitoring the web application environment
Elastic Beanstalk best practices
Summary
Chapter 17: Overview of AWS Lambda
Introducing AWS Lambda
Understanding a Lambda function
The Lambda function invocation types
Writing a Lambda function
A Lambda function handler in Node.js
A Lambda function handler in Java
A Lambda function handler in Python
A Lambda function handler in C#
Deploying a Lambda function
AWS Lambda function versioning and aliases
Environment variables
Tagging Lambda functions
Lambda functions over VPC
Building applications with AWS Lambda
Event source mapping for AWS services
Event source mapping for AWS stream-based services
Event source mapping for custom applications
AWS Lambda best practices
Summary
Chapter 18: Key Management Services
Introducing encryption
Symmetric encryption
Asymmetric encryption
How does KMS work?
Types of keys
Different types of CMKs
Creating a CMK
Viewing existing keys
Modifying existing CMKs
Updating the administrators or users of a key
Tagging a key
Enabling or disabling keys
AWS services supported by KMS
Summary
Chapter 19: Working with AWS Kinesis
Kinesis Video Streams
The Kinesis Video Streams API
The producer API
The consumer APIs
Kinesis Data Streams
Architecture
Kinesis Data Streams terminology
Kinesis Data Firehose
Kinesis Data Firehose – key concepts
Kinesis Data Firehose – data flow
Kinesis Data Analytics
Kinesis Data Analytics for SQL applications
Kinesis Data Analytics for Java applications
Summary
Chapter 20: Working with AWS CodeBuild
Introducing AWS CodeBuild
Understanding AWS CodeBuild
Working with AWS CodeBuild
Configuring a build project in AWS CodeBuild
Project configuration
Source code
Environment
Additional configuration
Buildspec
Artifacts
Logs
Summary
Chapter 21: Getting Started with AWS CodeDeploy
The need for CodeDeploy
Introducing CodeDeploy 
Components of CodeDeploy
Summary
Chapter 22: Working with AWS CodePipeline
Introducing CodePipeline and workflows
AWS CodePipeline usages
AWS CodePipeline – a higher-level view
A high-level view of the input and output artifacts at each stage of the pipeline
AWS CodePipeline concepts
CI with AWS CodePipeline
Continuous delivery with AWS CodePipeline
Working with CodePipeline
Summary
Chapter 23: CI/CD on AWS
Understanding CI/CD
CI
CD
Continuous deployment
AWS tools for CI/CD
Summary
Chapter 24: Serverless Computing
Recapping AWS Lambda
An overview of API Gateway
Things that API Gateway can do for you
How API Gateway works
Understanding step functions
The difference between Step Functions and a Lambda function
The difference between Step Functions and SWF
How Step functions works
Understanding states
Commonly used state fields
Tasks
Creating a state machine
Amazon Cognito
Cognito user pool 
Cognito identity pool
Common Amazon Cognito applications
Amazon Cognito Sync
Summary
Chapter 25: Amazon Route 53
Introduction to Route 53
Working with Route 53
Hosted zones
DNS record types
A record type
AAAA record type
CAA record type
CNAME record type
MX record type
NAPTR record type
NS record type
PTR record type
SOA record type
SPF record type
SRV record type
TXT record type
Routing policies
Health checking
Summary
Chapter 26: ElastiCache Overview
Introduction to ElastiCache
ElastiCache engine types
Amazon ElastiCache for Memcached
Amazon ElastiCache for Redis
Designing the right cache for your workload
Summary
Chapter 27: Mock Tests
Mock test 1
Mock test 2
Assessments
Mock Test 1
Mock Test 2
Another Book You May Enjoy
Index

Polecaj historie