kws

An Open Guide

The Open Guide to Amazon Web Services

Slack Chat โ‡ฆ Join us!

Credits โˆ™ Contributing guidelines

Table of Contents

Purpose

AWS in General

Specific AWS Services Basics Tips Gotchas
ALB ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
AMIs ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
API Gateway ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Auto Scaling ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Batch ๐Ÿ“— ๐Ÿ“˜ ย 
Certificate Manager ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
CLB (ELB) ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
CloudFront ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
CloudFormation ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
CloudWatch ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Device Farm ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
DirectConnect ๐Ÿ“— ๐Ÿ“˜ ย 
DynamoDB ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
EBS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
EC2 ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
ECS ๐Ÿ“— ๐Ÿ“˜ ย 
EKS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
EFS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Elastic Beanstalk ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Elastic IPs ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
ElastiCache ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
EMR ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Fargate ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Glacier ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
IoT ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Kinesis Firehose ย  ย  ๐Ÿ“™
Kinesis Streams ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
KMS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Lambda ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Load Balancers ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Mobile Hub ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
OpsWorks ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Quicksight ๐Ÿ“— ย  ๐Ÿ“™
RDS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS Aurora ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS Aurora MySQL ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS Aurora PostgreSQL ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS MySQL and MariaDB ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS PostgreSQL ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
RDS SQL Server ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Redshift ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Route 53 ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
S3 ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Security and IAM ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
SES ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
SNS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
SQS ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
Step Functions ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
WAF ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™
VPCs, Network Security, and Security Groups ๐Ÿ“— ๐Ÿ“˜ ๐Ÿ“™

Special Topics

Legal

Figures and Tables

Tools and Services Market Landscape AWS Data Transfer Costs

Why an Open Guide?

A lot of information on AWS is already written. Most people learn AWS by reading a blog or a โ€œgetting started guideโ€ and referring to the standard AWS references. Nonetheless, trustworthy and practical information and recommendations arenโ€™t easy to come by. AWSโ€™s own documentation is a great but sprawling resource few have time to read fully, and it doesnโ€™t include anything but official facts, so omits experiences of engineers. The information in blogs or Stack Overflow is also not consistently up to date.

This guide is by and for engineers who use AWS. It aims to be a useful, living reference that consolidates links, tips, gotchas, and best practices. It arose from discussion and editing over beers by several engineers who have used AWS extensively.

Before using the guide, please read the license and disclaimer.

Back to top :arrow_up:

Please help!

This is an early in-progress draft! Itโ€™s our first attempt at assembling this information, so is far from comprehensive still, and likely to have omissions or errors.

Slack Chat

Please help by joining the Slack channel (we like to talk about AWS in general, even if you only have questions โ€” discussion helps the community and guides improvements) and contributing to the guide. This guide is open to contributions, so unlike a blog, it can keep improving. Like any open source effort, we combine efforts but also review to ensure high quality.

Scope

Legend

General Information

When to Use AWS

Back to top :arrow_up:

Which Services to Use

Back to top :arrow_up:

Tools and Services Market Landscape

There are now enough cloud and โ€œbig dataโ€ enterprise companies and products that few can keep up with the market landscape.

Weโ€™ve assembled a landscape of a few of the services. This is far from complete, but tries to emphasize services that are popular with AWS practitioners โ€” services that specifically help with AWS, or a complementary, or tools almost anyone using AWS must learn.

Popular Tools and Services for AWS Practitioners

๐Ÿšง Suggestions to improve this figure? Please file an issue.

Back to top :arrow_up:

Common Concepts

Back to top :arrow_up:

Service Matrix

Many services within AWS can at least be compared with Google Cloud offerings or with internal Google services. And often times you could assemble the same thing yourself with open source software. This table is an effort at listing these rough correspondences. (Remember that this table is imperfect as in almost every case there are subtle differences of features!)

Service AWS Google Cloud Google Internal Microsoft Azure Other providers Open source โ€œbuild your ownโ€ Openstack
Virtual server EC2 Compute Engine (GCE) ย  Virtual Machine DigitalOcean OpenStack Nova
PaaS Elastic Beanstalk App Engine App Engine Web Apps Heroku, AppFog, OpenShift Meteor, AppScale, Cloud Foundry, Convox ย 
Serverless, microservices Lambda, API Gateway Functions ย  Function Apps PubNub Blocks, Auth0 Webtask Kong, Tyk Qinling
Container, cluster manager ECS, EKS, Fargate Container Engine, Kubernetes Borg or Omega Container Service ย  Kubernetes, Mesos, Aurora Zun
Object storage S3 Cloud Storage GFS Storage Account DigitalOcean Spaces Swift, HDFS, Minio Swift
Block storage EBS Persistent Disk ย  Storage Account DigitalOcean Volumes NFS Cinder
SQL datastore RDS Cloud SQL ย  SQL Database ย  MySQL, PostgreSQL Trove (stores NoSQL as well)
Sharded RDBMS ย  Cloud Spanner F1, Spanner Azure Database for PostgreSQL - Hyperscale (Citus) ย  Crate.io, CockroachDB ย 
Bigtable ย  Cloud Bigtable Bigtable ย  ย  HBase ย 
Key-value store, column store DynamoDB Cloud Datastore Megastore Tables, DocumentDB ย  Cassandra, CouchDB, RethinkDB, Redis ย 
Memory cache ElastiCache App Engine Memcache ย  Redis Cache ย  Memcached, Redis ย 
Search CloudSearch, Elasticsearch (managed) ย  ย  Search Algolia, QBox, Elastic Cloud Elasticsearch, Solr ย 
Data warehouse Redshift BigQuery Dremel SQL Data Warehouse Oracle, IBM, SAP, HP, many others Greenplum ย 
Business intelligence QuickSight Data Studio 360 ย  Power BI Tableau ย  ย 
Lock manager DynamoDB (weak) ย  Chubby Lease blobs in Storage Account ย  ZooKeeper, Etcd, Consul ย 
Message broker SQS, SNS, IoT Pub/Sub PubSub2 Service Bus ย  RabbitMQ, Kafka, 0MQ ย 
Streaming, distributed log Kinesis Dataflow PubSub2 Event Hubs ย  Kafka Streams, Apex, Flink, Spark Streaming, Storm ย 
MapReduce EMR Dataproc MapReduce HDInsight, DataLake Analytics Qubole Hadoop ย 
Monitoring CloudWatch Stackdriver Monitoring Borgmon Monitor ย  Prometheus(?) ย 
Tracing X-Ray Stackdriver Trace ย  Monitor (Application Insights) DataDog, New Relic, Epsagon Zipkin, Jaeger, Appdash ย 
Metric management ย  ย  Borgmon, TSDB Application Insights ย  Graphite, InfluxDB, OpenTSDB, Grafana, Riemann, Prometheus ย 
CDN CloudFront Cloud CDN ย  CDN Akamai, Fastly, Cloudflare, Limelight Networks Apache Traffic Server ย 
Load balancer CLB/ALB Load Balancing GFE Load Balancer, Application Gateway ย  nginx, HAProxy, Apache Traffic Server ย 
DNS Route53 DNS ย  DNS ย  bind ย 
Email SES ย  ย  ย  Sendgrid, Mandrill, Postmark ย  ย 
Git hosting CodeCommit Cloud Source Repositories ย  Visual Studio Team Services GitHub, BitBucket GitLab ย 
User authentication Cognito Firebase Authentication ย  Azure Active Directory ย  oauth.io ย 
Mobile app analytics Mobile Analytics Firebase Analytics ย  HockeyApp Mixpanel ย  ย 
Mobile app testing Device Farm Firebase Test Lab ย  Xamarin Test Cloud BrowserStack, Sauce Labs, Testdroid ย  ย 
Managing SSL/TLS certificates Certificate Manager ย  ย  ย  Letโ€™s Encrypt, Comodo, Symantec, GlobalSign ย  ย 
Automatic speech recognition and natural language understanding Transcribe (ASR), Lex (NLU) Cloud Speech API, Natural Language API ย  Cognitive services AYLIEN Text Analysis API, Ambiverse Natural Language Understanding API Stanfordโ€™s Core NLP Suite, Apache OpenNLP, Apache UIMA, spaCy ย 
Text-to-speech engine in the cloud Polly ย  ย  ย  Nuance, Vocalware, IBM Mimic, eSpeak, MaryTTS ย 
Image recognition Rekognition Vision API ย  Cognitive services IBM Watson, Clarifai TensorFlow, OpenCV ย 
OCR (Text recognition) Textract (documents), Rekognition (photographs) Cloud Vision API ย  Computer Vision API ย  Tesseract ย 
Language Translation Translate Translate ย  Translator Text API ย  Apertium ย 
File Share and Sync WorkDocs Google Docs ย  OneDrive Dropbox, Box, Citrix File Share ownCloud ย 
Machine Learning SageMaker, DeepLens, ML ML Engine, Auto ML ย  ML Studio Watson ML ย  ย 
Data Loss Prevention Macie Cloud Data Loss Prevention ย  Azure Information Protection ย  ย  ย 

๐Ÿšง Please help fill this table in.

Selected resources with more detail on this chart:

Back to top :arrow_up:

AWS Product Maturity and Releases

Itโ€™s important to know the maturity of each AWS product. Here is a mostly complete list of first release date, with links to the release notes. Most recently released services are first. Not all services are available in all regions; see this table.

Service Original release Availability CLI Support HIPAA Compliant PCI-DSS Compliant
๐ŸฅX-Ray 2016-12 General โœ“ โœ“ โœ“
๐ŸฅLex 2016-11 Preview ย  ย  ย 
๐ŸฅPolly 2016-11 General โœ“ โœ“ โœ“
๐ŸฅRekognition 2016-11 General โœ“ โœ“ โœ“
๐ŸฅAthena 2016-11 General โœ“ โœ“ โœ“
๐ŸฅBatch 2016-11 General โœ“ โœ“ โœ“
๐ŸฅDatabase Migration Service 2016-03 General ย  โœ“ โœ“
๐ŸฅCertificate Manager 2016-01 General โœ“ โœ“ โœ“
๐ŸฅIoT 2015-08 General โœ“ โœ“ โœ“13
๐ŸฅWAF 2015-10 General โœ“ โœ“ โœ“
๐ŸฅData Pipeline 2015-10 General โœ“ ย  ย 
๐ŸฅElasticsearch 2015-10 General โœ“ โœ“ โœ“
๐ŸฅAurora 2015-07 General โœ“ โœ“3 โœ“3
๐ŸฅService Catalog 2015-07 General โœ“ โœ“ โœ“
๐ŸฅDevice Farm 2015-07 General โœ“ ย  ย 
๐ŸฅCodePipeline 2015-07 General โœ“ โœ“ ย 
๐ŸฅCodeCommit 2015-07 General โœ“ โœ“ โœ“
๐ŸฅAPI Gateway 2015-07 General โœ“ โœ“1 โœ“
๐ŸฅConfig 2015-06 General โœ“ โœ“ โœ“
๐ŸฅEFS 2015-05 General โœ“ โœ“ โœ“
๐ŸฅMachine Learning 2015-04 General โœ“ ย  ย 
Lambda 2014-11 General โœ“ โœ“ โœ“
ECS 2014-11 General โœ“ โœ“ โœ“
EKS 2018-06 General โœ“12 โœ“ โœ“
KMS 2014-11 General โœ“ โœ“ โœ“
CodeDeploy 2014-11 General โœ“ โœ“ ย 
Kinesis 2013-12 General โœ“ โœ“ โœ“11
CloudTrail 2013-11 General โœ“ โœ“ โœ“
AppStream 2013-11 Preview ย  โœ“ ย 
CloudHSM 2013-03 General โœ“ โœ“ โœ“
Silk 2013-03 Obsolete? ย  ย  ย 
OpsWorks 2013-02 General โœ“ โœ“ โœ“
Redshift 2013-02 General โœ“ โœ“ โœ“
Elastic Transcoder 2013-01 General โœ“ ย  ย 
Glacier 2012-08 General โœ“ โœ“ โœ“
CloudSearch 2012-04 General โœ“ ย  ย 
SWF 2012-02 General โœ“ โœ“ โœ“
Storage Gateway 2012-01 General โœ“ โœ“ โœ“
DynamoDB 2012-01 General โœ“ โœ“ โœ“
DirectConnect 2011-08 General โœ“ โœ“ โœ“
ElastiCache 2011-08 General โœ“ โœ“14 โœ“14
CloudFormation 2011-04 General โœ“ โœ“ โœ“
SES 2011-01 General โœ“ โœ“ ย 
Elastic Beanstalk 2010-12 General โœ“ โœ“ โœ“
Route 53 2010-10 General โœ“ โœ“ โœ“
IAM 2010-09 General โœ“ ย  โœ“
SNS 2010-04 General โœ“ โœ“ โœ“
EMR 2010-04 General โœ“ โœ“ โœ“
RDS 2009-12 General โœ“ โœ“2 โœ“9
VPC 2009-08 General โœ“ โœ“ โœ“
Snowball 2015-10 General โœ“ โœ“ โœ“15
Snowmobile 2016-11 General ย  โœ“ โœ“
CloudWatch 2009-05 General โœ“ โœ“ โœ“
CloudFront 2008-11 General โœ“ โœ“4 โœ“
Fulfillment Web Service 2008-03 Obsolete? ย  ย  ย 
SimpleDB 2007-12 โ—Nearly obsolete โœ“ ย  โœ“
DevPay 2007-12 General ย  ย  ย 
Flexible Payments Service 2007-08 Retired ย  ย  ย 
EC2 2006-08 General โœ“ โœ“5,6,7 โœ“6,7,10
SQS 2006-07 General โœ“ โœ“ โœ“
S3 2006-03 General โœ“ โœ“8 โœ“
Alexa Top Sites 2006-01 General โ—HTTP-only ย  ย  ย 
Alexa Web Information Service 2005-10 General โ—HTTP-only ย  ย  ย 

Back to top :arrow_up:

Footnotes

1: Excludes use of Amazon API Gateway caching
2: RDS MySQL, Oracle, and PostgreSQL engines only
3: MySQL-compatible Aurora edition only
4: Excludes Lambda@Edge
5: Includes EC2 Systems Manager
6: Includes Elastic Block Storage (EBS)
7: Includes Elastic Load Balancing
8: Includes S3 Transfer Acceleration
9: Includes RDS MySQL, Oracle, PostgreSQL, SQL Server, and MariaDB</br> 10: Includes Auto-Scaling</br> 11: Data Analytics, Streams, Video Streams and Firehose</br> 12: Kubernetes uses a custom CLI for Pod/Service management called kubectl. AWS CLI only handles Kubernetes Master concerns</br> 13: IoT Core (includes Device Management) and Greengrass</br> 14: ElastiCache for Redis only</br> 15: Snowball and Snowball Edge</br>

Compliance

Getting Help and Support

Restrictions and Other Notes

Learning and Career Development

Certifications

Associate level certifications were once required as pre-requisites to taking the Professional examinations - this is no longer the case.

Certifications are required to access certificate lounges at official AWS events such as Summits and re:Invent. Lounges typically provide power charging points, seats and relatively better coffee.

Managing AWS

Managing Infrastructure State and Change

A great challenge in using AWS to build complex systems (and with DevOps in general) is to manage infrastructure state effectively over time. In general, this boils down to three broad goals for the state of your infrastructure:

Much of what we discuss below is really about how to improve the answers to these questions.

There are several approaches to deploying infrastructure with AWS, from the console to complex automation tools, to third-party services, all of which attempt to help achieve visibility, automation, and flexibility.

AWS Configuration Management

The first way most people experiment with AWS is via its web interface, the AWS Console. But using the Console is a highly manual process, and often works against automation or flexibility.

So if youโ€™re not going to manage your AWS configurations manually, what should you do? Sadly, there are no simple, universal answers โ€” each approach has pros and cons, and the approaches taken by different companies vary widely, and include directly using APIs (and building tooling on top yourself), using command-line tools, and using third-party tools and services.

AWS Console

Command-Line tools

APIs and SDKs

Boto

Back to top :arrow_up:

General Visibility

Managing Servers and Applications

Back to top :arrow_up:

AWS vs Server Configuration

This guide is about AWS, not DevOps or server configuration management in general. But before getting into AWS in detail, itโ€™s worth noting that in addition to the configuration management for your AWS resources, there is the long-standing problem of configuration management for servers themselves.

Back to top :arrow_up:

Philosophy

Back to top :arrow_up:

Server Configuration Management

Back to top :arrow_up:

Containers and AWS

Back to top :arrow_up:

Visibility

Back to top :arrow_up:

Tips for Managing Servers

Security and IAM

We cover security basics first, since configuring user accounts is something you usually have to do early on when setting up your system.

Security and IAM Basics

Back to top :arrow_up:

Security and IAM Tips

Back to top :arrow_up:

Security and IAM Gotchas and Limitations

S3

S3 Basics

Back to top :arrow_up:

S3 Tips

Back to top :arrow_up:

S3 Gotchas and Limitations

Back to top :arrow_up:

Storage Durability, Availability, and Price

As an illustration of comparative features and price, the table below gives S3 Standard, RRS, IA, in comparison with Glacier, EBS, EFS, and EC2 d2.xlarge instance store using Virginia region as of Sept 2017.

ย  Durability (per year) Availability โ€œdesignedโ€ Availability SLA Storage (per TB per month) GET or retrieve (per million) Write or archive (per million)
Glacier Eleven 9s Sloooow โ€“ $4 $50 $50
S3 IA Eleven 9s 99.9% 99% $12.50 $1 $10
S3 RRS 99.99% 99.99% 99.9% $24 (first TB) $0.40 $5
S3 Standard Eleven 9s 99.99% 99.9% $23 $0.40 $5
EBS 99.8% Unstated 99.99% $25/$45/$100/$125+ (sc1/st1/gp2/io1) ย  ย 
EFS โ€œHighโ€ โ€œHighโ€ โ€“ $300 ย  ย 
EC2 d2.xlarge instance store Unstated Unstated โ€“ $25.44 $0 $0

Especially notable items are in boldface. Sources: S3 pricing, S3 SLA, S3 FAQ, RRS info (note that this is considered deprecated), Glacier pricing, EBS availability and durability, EBS pricing, EFS pricing, EC2 SLA

EC2

EC2 Basics

Back to top :arrow_up:

EC2 Alternatives and Lock-In

Back to top :arrow_up:

EC2 Tips

Back to top :arrow_up:

EC2 Gotchas and Limitations

CloudWatch

CloudWatch Basics

Back to top :arrow_up:

CloudWatch Alternatives and Lock-In

Back to top :arrow_up:

CloudWatch Tips

Back to top :arrow_up:

CloudWatch Gotchas and Limitations

AMIs

AMI Basics

Back to top :arrow_up:

AMI Tips

Back to top :arrow_up:

AMI Gotchas and Limitations

Auto Scaling

Auto Scaling Basics

Back to top :arrow_up:

Auto Scaling Tips

Back to top :arrow_up:

Auto Scaling Gotchas and Limitations

EBS

EBS Basics

Back to top :arrow_up:

EBS Tips

Back to top :arrow_up:

EBS Gotchas and Limitations

EFS

EFS Basics

Back to top :arrow_up:

EFS Tips

Back to top :arrow_up:

EFS Gotchas and Limitations

Load Balancers

Load Balancer Basics

Back to top :arrow_up:

Load Balancer Tips

Back to top :arrow_up:

Load Balancer Gotchas and Limitations

CLB

CLB Basics

Back to top :arrow_up:

CLB Tips

Back to top :arrow_up:

CLB Gotchas and Limitations

ALB

ALB Basics

Back to top :arrow_up:

ALB Tips

Back to top :arrow_up:

ALB Gotchas and Limitations

Elastic Beanstalk

Elastic Beanstalk Basics

Back to top :arrow_up:

Elastic Beanstalk Tips

Back to top :arrow_up:

Elastic Beanstalk Gotchas and Limitations

Elastic IPs

Elastic IP Basics

Back to top :arrow_up:

Elastic IP Tips

Back to top :arrow_up:

Elastic IP Gotchas and Limitations

Glacier

Glacier Basics

Back to top :arrow_up:

Glacier Tips

Back to top :arrow_up:

Glacier Gotchas and Limitations

Quicksight

Quicksight Basics

Back to top :arrow_up:

Quicksight Gotchas and Limitations

RDS

RDS Basics

Back to top :arrow_up:

RDS Tips

Back to top :arrow_up:

RDS Gotchas and Limitations

RDS MySQL and MariaDB

RDS MySQL and MariaDB Basics

Back to top :arrow_up:

RDS MySQL and MariaDB Tips

Back to top :arrow_up:

RDS MySQL and MariaDB Gotchas and Limitations

RDS PostgreSQL

RDS PostgreSQL Basics

Back to top :arrow_up:

RDS PostgreSQL Tips

Back to top :arrow_up:

RDS PostgreSQL Gotchas and Limitations

RDS SQL Server

RDS SQL Server Basics

Back to top :arrow_up:

RDS SQL Server Tips

Back to top :arrow_up:

RDS SQL Server Gotchas and Limitations

RDS Aurora

RDS Aurora Basics

Aurora is a cloud only database service designed to provide a distributed, fault-tolerant relational database with self-healing storage and auto-scaling up to 64TB per instance. It currently comes in two versions, a MySQL compatible system, and a PostgreSQL compatible system.

RDS Aurora MySQL

RDS Aurora MySQL Basics

Back to top :arrow_up:

RDS Aurora MySQL Tips

Back to top :arrow_up:

RDS Aurora MySQL Gotchas and Limitations

RDS Aurora PostgreSQL

RDS Aurora PostgreSQL Basics

Back to top :arrow_up:

RDS Aurora PostgreSQL Tips

Back to top :arrow_up:

RDS Aurora PostgreSQL Gotchas and Limitations

ElastiCache

ElastiCache Basics

Back to top :arrow_up:

ElastiCache Tips

Back to top :arrow_up:

ElastiCache Gotchas and Limitations

DynamoDB

DynamoDB Basics

Back to top :arrow_up:

DynamoDB Alternatives and Lock-in

Back to top :arrow_up:

DynamoDB Tips

Back to top :arrow_up:

DynamoDB Gotchas and Limitations

ECS

ECS Basics

Back to top :arrow_up:

ECS Tips

Back to top :arrow_up:

ECS Alternatives and Lock-in

๐Ÿšง Please help expand this incomplete section.

EKS

EKS Basics

Back to top :arrow_up:

EKS Tips

Back to top :arrow_up:

EKS Alternatives and Lock-in

Back to top :arrow_up:

EKS Gotchas and Limitations

Back to top :arrow_up:

Footnotes

1: https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
2: https://aws.amazon.com/about-aws/whats-new/2019/05/amazon-eks-simplifies-kubernetes-cluster-authentication/

Fargate

Fargate Basics

Back to top :arrow_up:

Fargate Tips

Back to top :arrow_up:

Fargate Alternatives and Lock-in

Back to top :arrow_up:

Fargate Gotchas and Limitations

Lambda

Lambda Basics

Back to top :arrow_up:

Lambda Tips

Back to top :arrow_up:

Lambda Alternatives and Lock-in

Back to top :arrow_up:

Lambda Gotchas and Limitations

Back to top :arrow_up:

Lambda Code Samples

๐Ÿšง Please help expand this incomplete section.

API Gateway

API Gateway Basics

Back to top :arrow_up:

API Gateway Alternatives and Lock-In

Back to top :arrow_up:

API Gateway Tips

Back to top :arrow_up:

API Gateway Gotchas and Limitations

๐Ÿšง Please help expand this incomplete section.

Step Functions

Step Functions Basics

Back to top :arrow_up:

Step Functions Tips

Back to top :arrow_up:

Step Functions Gotchas and Limitations

Route 53

Route 53 Basics

Back to top :arrow_up:

Route 53 Alternatives and Lock-In

Back to top :arrow_up:

Route 53 Tips

Back to top :arrow_up:

Route 53 Gotchas and Limitations

CloudFormation

CloudFormation Basics

Back to top :arrow_up:

CloudFormation Alternatives and Lock-In

Back to top :arrow_up:

CloudFormation Tips

Back to top :arrow_up:

CloudFormation Gotchas and Limitations

VPCs, Network Security, and Security Groups

VPC Basics

Back to top :arrow_up:

VPC and Network Security Tips

Back to top :arrow_up:

Back to top :arrow_up:

VPC and Network Security Gotchas and Limitations

KMS

KMS Basics

Back to top :arrow_up:

KMS Tips

Back to top :arrow_up:

KMS Gotchas and Limitations

CloudFront

CloudFront Basics

Back to top :arrow_up:

CloudFront Alternatives and Lock-in

Back to top :arrow_up:

CloudFront Tips

Back to top :arrow_up:

CloudFront Gotchas and Limitations

DirectConnect

DirectConnect Basics

Back to top :arrow_up:

DirectConnect Tips

Redshift

Redshift Basics

Back to top :arrow_up:

Redshift Alternatives and Lock-in

Back to top :arrow_up:

Redshift Tips

Back to top :arrow_up:

Redshift Gotchas and Limitations

EMR

EMR Basics

Back to top :arrow_up:

EMR Alternatives and Lock-in

Back to top :arrow_up:

EMR Tips

Back to top :arrow_up:

EMR Gotchas and Limitations

Kinesis Streams

Kinesis Streams Basics

Back to top :arrow_up:

Kinesis Streams Alternatives and Lock-in

Back to top :arrow_up:

Kinesis Streams Tips

Back to top :arrow_up:

Kinesis Streams Gotchas and Limitations

Kinesis Firehose

Back to top :arrow_up:

Kinesis Firehose Gotchas and Limitations

Device Farm

Device Farm Basics

Back to top :arrow_up:

Device Farm Tips

Back to top :arrow_up:

Device Farm Gotchas and Limitations

Mobile Hub

Mobile Hub Basics

Back to top :arrow_up:

Mobile Hub Tips

Back to top :arrow_up:

Mobile Hub Gotchas and Limitations

IoT

IoT Basics

How AWS IoT Works

Back to top :arrow_up:

IoT Greengrass

IoT Greengrass

Back to top :arrow_up:

IoT Alternatives and Lock-in

Back to top :arrow_up:

IoT Tips

Back to top :arrow_up:

IoT Gotchas and Limitations

Back to top :arrow_up:

IoT Code Samples

SES

SES Basics

Back to top :arrow_up:

SES Tips

Back to top :arrow_up:

SES Gotchas and Limitations

Certificate Manager

Certificate Manager Basics

Back to top :arrow_up:

Certificate Manager Alternatives and Lock-in

Back to top :arrow_up:

Certificate Manager Tips

Back to top :arrow_up:

Certificate Manager Gotchas and Limitations

WAF

WAF Basics

Back to top :arrow_up:

WAF Tips

Back to top :arrow_up:

WAF Gotchas and Limitations

OpsWorks

OpsWorks Basics

Back to top :arrow_up:

OpsWorks Alternatives and Lock-in

Back to top :arrow_up:

OpsWorks Tips

Back to top :arrow_up:

OpsWorks Gotchas and Limitations

Batch

Batch Basics

Back to top :arrow_up:

Batch Tips

SQS

SQS Basics

Back to top :arrow_up:

SQS Alternatives and Lock-In

Back to top :arrow_up:

SQS Tips

Back to top :arrow_up:

SQS Gotchas and Limitations

SNS

SNS Basics

Back to top :arrow_up:

SNS Alternatives and Lock-In

Back to top :arrow_up:

SNS Tips

Back to top :arrow_up:

SNS Gotchas and Limitations

High Availability

This section covers tips and information on achieving high availability.

High Availability Tips

Back to top :arrow_up:

High Availability Gotchas and Limitations

Billing and Cost Management

Billing and Cost Visibility

Back to top :arrow_up:

AWS Data Transfer Costs

AWS Data Transfer Costs

Back to top :arrow_up:

EC2 Cost Management

Further Reading

This section covers a few unusually useful or โ€œmust know aboutโ€ resources or lists.

Disclaimer

The authors and contributors to this content cannot guarantee the validity of the information found here. Please make sure that you understand that the information provided here is being provided freely, and that no kind of agreement or contract is created between you and any persons associated with this content or project. The authors and contributors do not assume and hereby disclaim any liability to any party for any loss, damage, or disruption caused by errors or omissions in the information contained in, associated with, or linked from this content, whether such errors or omissions result from negligence, accident, or any other cause.

License

Creative Commons License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.