<p><span>Apply cloud design patterns to overcome real-world challenges by building scalable, secure, highly available, and cost-effective solutions</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Apply AWS Well-Architected Framework concepts to common real-world use cases</span></spa
AWS for Solutions Architects: Design your cloud infrastructure by implementing DevOps, containers, and Amazon Web Services
β Scribed by Alberto Artasanchez
- Publisher
- Packt Publishing
- Year
- 2021
- Tongue
- English
- Leaves
- 450
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
Apply cloud design patterns to overcome real-world challenges by building scalable, secure, highly available, and cost-effective solutions
Key Features
- Apply AWS Well-Architected Framework concepts to common real-world use cases
- Understand how to select AWS patterns and architectures that are best suited to your needs
- Ensure the security and stability of a solution without impacting cost or performance
Book Description
One of the most popular cloud platforms in the world, Amazon Web Services (AWS) offers hundreds of services with thousands of features to help you build scalable cloud solutions; however, it can be overwhelming to navigate the vast number of services and decide which ones best suit your requirements. Whether you are an application architect, enterprise architect, developer, or operations engineer, this book will take you through AWS architectural patterns and guide you in selecting the most appropriate services for your projects.
AWS for Solutions Architects is a comprehensive guide that covers the essential concepts that you need to know for designing well-architected AWS solutions that solve the challenges organizations face daily. You'll get to grips with AWS architectural principles and patterns by implementing best practices and recommended techniques for real-world use cases. The book will show you how to enhance operational efficiency, security, reliability, performance, and cost-effectiveness using real-world examples.
By the end of this AWS book, you'll have gained a clear understanding of how to design AWS architectures using the most appropriate services to meet your organization's technological and business requirements.
What you will learn
- Rationalize the selection of AWS as the right cloud provider for your organization
- Choose the most appropriate service from AWS for a particular use case or project
- Implement change and operations management
- Find out the right resource type and size to balance performance and efficiency
- Discover how to mitigate risk and enforce security, authentication, and authorization
- Identify common business scenarios and select the right reference architectures for them
Who this book is for
This book is for application and enterprise architects, developers, and operations engineers who want to become well-versed with AWS architectural patterns, best practices, and advanced techniques to build scalable, secure, highly available, and cost-effective solutions in the cloud. Although existing AWS users will find this book most useful, it will also help potential users understand how leveraging AWS can benefit their organization.
Table of Contents
- Understanding AWS Cloud Principles and Key Characteristics
- Leveraging the Cloud for Digital Transformation
- Storage in AWS β Choosing the Right Tool for the Job
- Harnessing the Power of Cloud Computing
- Selecting the Right Database Service
- Amazon Athena β Combining the Simplicity of Files with the Power of SQL
- AWS Glue β Extracting, Transforming, and Loading Data the Simple Way
- Best Practices for Application Security, Identity, and Compliance
- Serverless and Container Patterns
- Microservice and Event-Driven Architectures
- Domain Driven Design
- Data Lake Patterns β Integrating Your Data across the Enterprise
- Availability, Reliability and Scalability Patterns
- Hands on Lab and Use Cases
β¦ Table of Contents
Cover
Title Page
Copyright and Credits
Dedication
About Packt
Contributors
Table of Contents
Preface
Section 1: Exploring AWS
Chapter 1: Understanding AWS Cloud Principles and Key Characteristics
What is cloud computing?
Cloud elasticity
Cloud virtualization
Definition of the cloud
Private versus public clouds
What is AWS cloud computing?
The market share, influence, and adoption of AWS
Basic cloud and AWS terminology
Why is cloud computing so popular?
Elasticity
Security
Availability
Faster hardware cycles
System administration staff
The five pillars of a well-architected framework
First pillar β security
Second pillar β reliability
Third pillar β performance efficiency
Fourth pillar β cost optimization
Fifth pillar β operational excellence
Building credibility and getting certified
AWS Certified Cloud Practitioner β Foundational
AWS Certified Solutions Architect β Associate
AWS Certified Developer β Associate
AWS Certified SysOps Administrator β Associate
AWS Certified Solutions Architect β Professional
AWS Certified DevOps Engineer β Professional
AWS Certified Advanced Networking β Specialty
AWS Certified Security β Specialty
AWS Certified Machine Learning β Specialty
AWS Certified Alexa Skill Builder β Specialty
AWS Certified Database β Specialty
AWS Certified Data Analytics β Specialty
Learning tips and tricks to obtain AWS certifications
Focus on one cloud provider
Focus on the Associate-level certifications
Get experience wherever you can
Some frequently asked questions about the AWS certifications
What is the best way to get certified?
How long will it take to get certified?
What are some last-minute tips for the days of the exam?
Summary
Chapter 2: Leveraging the Cloud for Digital Transformation
Learning about the AWS Global Infrastructure
Regions, Availability Zones, and Local Zones
Implementing a digital transformation program
Cloud migration
Migration assessment tools
What exactly is a digital transformation?
Digital transformation drivers
Digital transformation examples
Digital transformation tips
Digital transformation pitfalls
Summary
Section 2: AWS Service Offerings and Use Cases
Chapter 3: Storage in AWS β Choosing the Right Tool for the Job
Understanding Amazon Elastic Block Storage
General-purpose Solid State Devices (SSDs)
Provisioned IOPS SSD
Throughput Optimized HDD
Cold HDD
Amazon EBS Snapshots
Investigating Amazon Elastic File System (EFS)
Learning about Amazon Simple Storage Service (S3)
S3 Standard
Amazon S3 Intelligent-Tiering
Amazon S3 Standard-IA
Amazon S3 One Zone-IA
Amazon S3 Glacier
Amazon S3 Glacier Deep Archive
Understanding the difference between block storage and object storage
Versioning in Amazon S3
Exploring Amazon S3 best practices
Enhancing Amazon S3 performance
Protecting your data in Amazon S3
Summary
Chapter 4: Harnessing the Power of Cloud Computing
Brief introduction to cloud computing
Comparing PaaS, IaaS, and SaaS
Understanding IaaS
Advantages of IaaS
Disadvantages of IaaS
Use cases for IaaS
Examples of AWS IaaS services
Examples of non-AWS IaaS computing and storage services
Understanding PaaS
Advantages of PaaS
Disadvantages of PaaS
PaaS use cases
Examples of AWS PaaS services
Examples of non-AWS PaaS
Understanding SaaS
Characteristics of SaaS
Advantages of SaaS
Disadvantages of SaaS
Examples of AWS SaaS solutions
Examples of third-party SaaS solutions
Selection by use case of SaaS, PaaS, or IaaS
Learning about Amazon EC2
EC2 instance types
Amazon Machine Images
Reviewing Amazon EC2 best practices
Security
Storage
Resource management
Limit management
Backup, snapshots, and recovery
Learning about Amazon storage services
S3 Standard
S3 Intelligent-Tiering
S3 Standard-Infrequent Access
S3 One Zone-Infrequent Access
S3 Glacier
S3 Glacier Deep Archive
Summary
Chapter 5: Selecting the Right Database Service
A brief history of databases
Different methods to classify databases
Classifying databases by content
Classifying databases by usage
Classifying databases by transaction data consistency
Classifying databases by use case
Introducing different types of databases
Relational databases
Document and key-value databases
Wide-column store databases
Indexing and search services
In-memory databases
Graph databases
Time-series databases
Ledger databases
Online Analytics Processing (OLAP) and business intelligence databases
Choosing the right tool for the job
Summary
Chapter 6: Amazon Athena β Combining the Simplicity of Files with the Power of SQL
Introduction to Amazon Athena
Deep diving into Amazon Athena
CSV files
JSON files
ORC files
Apache Avro files
Apache Parquet files
Understanding how Amazon Athena works
Using Amazon Athena Federated Query
Data source connectors
Learning about Amazon Athena workgroups
Reviewing Amazon Athena's APIs
Optimizing Amazon Athena
Optimization of data partitions
Data bucketing
File compression
File size optimization
Columnar data store generation optimization
Column selection
Predicate pushdown
ORDER BY clause optimization
Join optimization
group by clause optimization
Approximate function use
Summary
Chapter 7: AWS Glue β Extracting, Transforming, and Loading Data the Simple Way
Why is AWS Glue a cornerstone service?
Introduction to AWS Glue
Operating the AWS Glue console
Cataloging with AWS Glue Data Catalog
Crawling with AWS Glue crawlers
Categorizing with AWS Glue classifiers
Generating code with AWS Glue code generators
AWS Glue serverless streaming ETL
Putting it all together
AWS Glue best practices
Choosing the right worker type
Optimizing file splitting
Exceeding Yarn's memory overhead allocation
Leveraging the Apache Spark UI
Processing many small files
Data partitioning and predicate pushdown
Partitioning data while writing to Amazon S3
Summary
Chapter 8: Best Practices for Application Security, Identity, and Compliance
Understanding the importance of security, identity, and compliance on AWS
Understanding the shared responsibility model
Getting familiar with Identity and Access Management
Managing resources, permissions, and identities using IAM
Users
Groups
Roles
Policies
Permissions
Learning about other AWS security services
AWS Organizations
AWS Control Tower
Amazon GuardDuty
AWS Shield
AWS Web Application Firewall
AWS Firewall Manager
Amazon Cloud Directory
Amazon Inspector
Amazon Macie
AWS Artifact Reports
AWS Certificate Manager
AWS CloudHSM
AWS Directory Service
AWS Key Management Service
AWS Secrets Manager
AWS Single Sign-On
AWS Security Hub
Summary
Section 3: Applying Architectural Patterns and Reference Architectures
Chapter 9: Serverless and Container Patterns
Understanding containerization
Advantages of containers
Disadvantages of containers
Virtual machines and virtualization
Containers versus VMs
Learning about Docker
Docker components
Learning about Kubernetes
Kubernetes advantages
Amazon Elastic Container Service for Kubernetes (Amazon EKS)
Learning about AWS Fargate
Learning about AWS Batch
AWS Batch components
Features of AWS Batch
AWS Batch best practices
Summary
Chapter 10: Microservice and Event-Driven Architectures
Understanding microservices
Microservice architecture patterns
Layered architecture
Event-driven architecture
Event-driven architecture models
Benefits of event-driven architecture
No more polling
Disadvantages of Event-Driven Architecture
Event-driven architectures are not a silver bullet
When things go wrong
Learning about microkernel architecture
Microservices best practices
Best practice #1: Decide whether microservices are the right tool
Best practice #2: Clearly define the requirements and design of the microservice
Best practice #3: Leverage Domain-Driven Design (DDD) to create microservices
Best practice #4: Ensure buy-in from all stakeholders
Best practice #5: Leverage logging and tracing tools
Best practice #6: Think microservices first
Best practice #7: Minimize the number of languages and technologies
Best practice #8: Leverage RESTful APIs
Best practice #9: Implement microservice communication asynchronously
Best practice #10: Implement clear separation between microservice frontends and backends
Best practice #11: Organize your team around microservices
Best practice #12: Provision individual data stores for each individual microservice
Best practice #13: Self-documentation and full documentation
Best practice #14: Use a DevOps toolset
Best practice #15: Invest in monitoring
Best practice #16: Two pizzas should be enough to feed your team
Best practice #17: Twelve-factor design
Summary
Chapter 11: Domain-Driven Design
Domain-driven design
History of domain-driven design
Definition of a domain
Reasons to use domain-driven design
Challenges with domain-driven design
Microservices
Microservices and serverless technologies
Monolithic architecture versus microservices architecture
Advantages of microservices
DDD and microservices
Communication between microservices
Microservices in AWS
Fundamental services for creating microservices in AWS
Microservice examples
Using microservices to transform media files
Text-to-speech microservice
Summary
Chapter 12: Data Lake Patterns β Integrating Your Data across the Enterprise
Definition of a data lake
What is a data lake?
Purpose of a data lake
Components of a data lake
Landing or transient data zone
Raw data zone
Organized or trusted data zone
Curated or refined data zone
Sandboxes
Characteristics of a data lake
Google β the gold standard
Data and metadata curation
Web content homogeneity
Enhancing document relevance based on document relationships
Veracity and validity of data
Locating documents across the enterprise using faceted search
Security
Maturity
Data lake best practices
Machine learning
Natural language processing and natural language understanding
Entity extraction
Security
The silo mentality
Data governance
Relevant metadata
Key metrics in a data lake
Metrics to gauge the success of your data lake
Summary
Chapter 13: Availability, Reliability, and Scalability Patterns
Availability in cloud computing
Reliability in cloud computing
Scalability in cloud computing
Architectures to provide high availability, reliability, and scalability
Active architecture
Active/passive architecture
Sharding architecture
Recovery Point Objective (RPO) and Recovery Time Objective (RTO)
RTO
RPO
Recovery Point Actual and Recovery Time Actual
Chaos engineering
Scaling in and scaling out versus scaling up and scaling down
Scaling up or vertical scaling
Scaling out or horizontal scaling
Advantages of cloud scalability
Availability in AWS
Availability for Amazon EC2 instances
AWS high availability for Amazon RDS
AWS high availability for storage services
Amazon Elastic Load Balancing
ELB rules
Host-based routing
Path-based routing
Elastic Load Balancer types
Classic Load Balancers
Application Load Balancers
Network Load Balancers
CLB versus ALB versus NLB comparison
CLB and ALB commonalities
The best choice of ELB by use case
Summary
Section 4: Hands-On Labs
Chapter 14: Hands-On Lab and Use Case
An introduction to the use cases
Reviewing the list of available AWS programming languages
Interpretive versus compiled languages
Java
Python
C++
.NET
JavaScript
Node.js
Ruby
Go
PHP
Swagger
Deciding which is the best language
Understanding the serverless AWS microservice architecture
Setting up services
AWS Command Line Interface
AWS CloudFormation
AWS Cloud Development Kit
AWS CodeDeploy
AWS Config
AWS Elastic Beanstalk
AWS Service Catalog
Learning about frontend user interfaces (UX)
Authenticating, authorizing, and managing users
AWS Identity and Access Management
Grasping CDN concepts
Understanding the asynchronous communication service
Amazon EventBridge
Learning about file uploads
Uploading to an AWS service via the AWS console
Uploading with signed URLs
Uploading files using the File Transfer Protocol
Uploading to an AWS service via the CLI
Uploading files to AWS via the AWS SDK
Uploading files to AWS using REST
Uploading files using AWS Snowball
Covering the AWS API gateway
Reviewing business APIs
Business rules engine
Understanding state-machine services
Exploring backend persistence services
Summary
Other Books You May Enjoy
Index
π SIMILAR VOLUMES
<p><em>Pro PowerShell for Amazon Web Services</em> is written specifically for Windows professionals who already know PowerShell and want to learn to host Windows workloads in the Amazon Elastic Cloud Compute (EC2) cloud service. The cloud offers information technology workers significant cost savin
Pro PowerShell for Amazon Web Services is written specifically for Windows professionals who already know PowerShell and want to learn to host Windows workloads in the Amazon Elastic Cloud Compute (EC2) cloud service. The cloud offers information technology workers significant cost savings and agili
Pro PowerShell for Amazon Web Services is written specifically for Windows professionals who already know PowerShell and want to learn to host Windows workloads in the Amazon Elastic Cloud Compute (EC2) cloud service. The cloud offers information technology workers significant cost savings and agili
<p><b>An expert guide for IT administrators needing to create and manage a public cloud and virtual network using Microsoft Azure</b></p> <p>With Microsoft Azure challenging Amazon Web Services (AWS) for market share, there has been no better time for IT professionals to broaden and expand their kno
<p><b>An expert guide for IT administrators needing to create and manage a public cloud and virtual network using Microsoft Azure</b></p> <p>With Microsoft Azure challenging Amazon Web Services (AWS) for market share, there has been no better time for IT professionals to broaden and expand their kno