Amazon Web Services
Cheat Sheet
Region
An AWS cloud in a specific geographical area.
- US East (N. Virginia)
- US West (Oregon)
- US West (N. California)
- EU (Ireland)
- EU (Frankfurt)
- Asia Pacific (Singapore)
- Asia Pacific (Sydney)
- Asia Pacific (Tokyo)
- South America (Sao Paulo)
Availability Zone
A distinct location within a region that is insulated from failures in other Availability Zones, and provides inexpensive, low-latency network connectivity to other Availability Zones in the same region. Essentially, a data center.
EC2
- Elastic Compute Cloud
- virtual machine
- multiple instances
- variable CPU, memory, network and storage attributes
- templates available
- tied to availability zone
- storage is ephemeral or persistent
- network is isolated from the rest of the AWS network
- can connect to on-premises network
- built-in firewall (security groups)
- SSH access by default using key pairs
- ip address is dynamic
- place meta-data on instances for easier management
EC2
Family | Purpose | Notes |
---|---|---|
T2 | General purpose | build servers |
M4 | General purpose | caching fleets |
M3 | General purpose | medium dbs |
C4 | Compute Optimized | web-servers |
C3 | Compute Optimized | batch processing |
R3 | Memory Optimized | database, cache |
G2 | GPU optimized | NVIDIA GPUs |
I2 | High I/O | MongoDB |
D2 | Dense Storage | spinning disk |
EC2
Model | vCPU | RAM | Storage |
---|---|---|---|
t2.micro | 1 | 1GB | EBS-only |
t2.small | 1 | 2 GB | EBS-only |
t2.medium | 2 | 4GB | EBS-only |
t2.large | 2 | 8GB | EBS-only |
m4.large | 2 | 8GB | EBS-only |
m4.xlarge | 4 | 16GB | EBS-only |
m4.2xlarge | 8 | 32GB | EBS-only |
m4.4xlarge | 16 | 64GB | EBS-only |
m4.10xlarge | 40 | 160GB | EBS-only |
EC2
Model | vCPU | RAM | Storage |
---|---|---|---|
m3.medium | 1 | 3.75GB | 4GB (SSD) |
m3.large | 2 | 7.5 GB | 32GB (SSD) |
m3.xlarge | 4 | 15GB | 40GB (SSD) |
m3.2xlarge | 8 | 30GB | 80GB (SSD) |
c4.large | 2 | 3.75GB | EBS-only |
c4.xlarge | 4 | 7.5GB | EBS-only |
c4.2xlarge | 8 | 15GB | EBS-only |
c4.4xlarge | 16 | 30GB | EBS-only |
c4.8xlarge | 36 | 60GB | EBS-only |
EC2
Model | vCPU | RAM | Storage |
---|---|---|---|
c3.large | 2 | 3.75GB | 16GB (SSD) |
c3.xlarge | 4 | 7.5 GB | 40GB (SSD) |
c3.2xlarge | 8 | 15GB | 80GB (SSD) |
c3.4xlarge | 16 | 30GB | 160GB (SSD) |
c3.8xlarge | 32 | 30GB | 320GB (SSD) |
r3.large | 2 | 15.25GB | 32GB (SSD) |
r3.xlarge | 4 | 30.5GB | 80GB (SSD) |
r3.2xlarge | 8 | 61GB | 160GB (SSD) |
r3.4xlarge | 16 | 122GB | 320GB (SSD) |
r3.8xlarge | 32 | 244GB | 320GB (SSD) |
EC2
Model | vCPU | RAM | Storage |
---|---|---|---|
g2.2xlarge | 8 | 15GB | 60GB (SSD) |
g2.8xlarge | 32 | 60 GB | 120GB (SSD) |
i2.xlarge | 4 | 30.5GB | 800GB (SSD) |
i2.2xlarge | 8 | 61GB | 800GB (SSD) |
i2.4xlarge | 16 | 122GB | 800GB (SSD) |
i2.8xlarge | 32 | 244GB | 800GB (SSD) |
d2.xlarge | 4 | 30.5GB | 2TB (HDD) |
d2.2xlarge | 8 | 61GB | 2TB (HDD) |
d2.4xlarge | 16 | 122GB | 2TBB (HDD) |
d2.8xlarge | 36 | 244GB | 2TBB (HDD) |
Lambda
- reactive compute service
- functions must be written in node.js or Java
- logic triggered by events
- automated scaling
- performance remains constant
- compute capacity spread across availability zones
- reaction usually starts within milliseconds after getting the event
EC2 Container Service
- Docker container management
- containers distributed across an EC2 cluster
- load balancing provides via ELB
- failed health check results in container restart
- containers relocated based on resource needs, isolation policies, availability requirements
- Docker must installed on all instances
- Amazon agent must be installed on all instances
- mandatory co-location of containers supported
- single use containers (tasks)
- long lived use (services)
- JSON based descriptor
RDS
- Amazon Relational Database Service
- HA via primary and secondary instances
- read scaling via MySQL and PostgreSQL read replicas
- MySQL
- Amazon Aurora DB
- Microsoft SQL Server
- Oracle
- PostgreSQL
- scale CPU, RAM, storage and IOPs independently
- automated backups, patching and failure detection
- storage options include magnetic, general purpose SSD and provisioned SSD
DynamoDB
- NoSQL database
- column-oriented
- low latency
- consistent throughput
- reliable
- automated backups
ElastiCache
- distributed, in-memory cache
- Memecached
- Redis (replication and multi-Availability Zone supported)
- failed nodes automatically detected and replaced
- automatic scale up and scale down
- automated backups and snapshots
Red Shift
- petabyte scale data warehouse solution
- compatible with standard BI tools
S3
- Amazon Simple Storage Service
- BLOB storage solution
- up to 5TB per blob
- unlimited storage
- versioned
- BLOBs stored within 'buckets'
- buckets are assigned to regions
- each BLOB has a user-assigned key
- in-flight and at-rest encryption available
- data automatically moved to 'cold storage' after a period of inactivity
- access controlled
Storage Gateway
- on-premises virtual appliance
- on-premises application integration to AWS storage
- visible as iSCSI storage volumes
- data on-premises for low-latency access
- asynchronously uploading data to Amazon S3
Glacier
- cold storage, aka archival storage
- retrieval time measured in hours
- same durability guarantees as S3
- $0.01 per GB per month
- SNS notifications supported
Import/Export Snowball

Petabyte data transfer device sent to your premises
Cloud Front
- content delivery network
- low latency
- high data transfer speeds
- United States
- Europe
- Asia
- Australia
- South America
- complex pricing model but appears to be cheap
EFS
- Amazon Elastic File System
- shared file system
- auto-scales up or down
- NFS v4
- access data from EC2
- replicated within a region
- access controls
VPC
- Amazon Virtual Private Cloud
- virtual network dedicated to your AWS account
- logically isolated from other virtual networks
- can connect your VPC to your own corporate data center using an IPsec hardware VPN connection
Direct Connect
- dedicated network connection from your premises to AWS
- industry standard 802.1q VLANs
- reduces bandwidth costs
- consistent network performance
- compatible with all AWS services
- private connectivity to your Amazon VPC
Route 53
- scalable Domain Name System (DNS)
- can configure Amazon Route 53 to check the health of your resources and respond to DNS queries using only the healthy resources
- latency-based routing
Directory Service
- use corporate identities to access AWS services
- simplifies deployment of directory-dependent Microsoft Windows applications
- connect to your existing on-premises Microsoft Active Directory
- set up and operate a new directory in the AWS cloud
IAM
- Identity & Access Management
- ACLs to resources
- users
- groups
- permissions
- applied to all API calls
- very fine grained control
- auditing via Cloud Trail
- Active Directory integration
Trusted Advisor
- customized cloud expert
- cost
- performance
- security
- fault tolerance
Cloud Trail
- provides a record of your AWS API calls
- visibility into user activity
- troubleshoot operational and security incidents
- help demonstrate compliance
- store log files in S3
- look up API history
- get notified of specific API activity
Config
- inventory of your AWS resources
- notifications of configuration changes
- audit the history of configuration changes
Cloud Watch
- collect and track metrics
- cloud resources
- applications
- 38 metrics currently available
- custom metrics generated by applications
- collect and monitor log files
- set alarms
- view graphs and statistics
Elastic Beanstalk
- deploy and manage applications in the AWS cloud without worrying about the infrastructure
- defer resource choices to Beanstalk
- package your bits with a descriptor
- Beanstalk provisions the required resources
- automated software updates and patching not supported
- limited environments
- Docker, Java, Go, PHP, .NET, Node.js, Python, Ruby
- environment support -- test, production, stress
- web applications get their own ELB
- automated deployment, monitoring and scaling
OpsWorks
- automated deployment, configuration, scaling and healing
- templates for common layers
- custom layers use Chef for provisioning
- automated OS updates not supported
- model your application as layers
- pre-built layers available - Ruby, PHP, Node.js, Java, Amazon RDS, HA Proxy, MySQL, memcached
- automatic scaling by load and time-of-day
Cloud Formation
- templated deployment
- from Amazon
- derived from working deployment
Service Catalog
- catalog of approved services and software
- images, services, software and databases
- enables self-service
- fine-grain access controls and configuration
- version controlled
- no lawyers involved
Code Deploy
- automated deployment
- geared towards continuous deployment
- rolling updates
- platform agnostic
- provide a deployment descriptor
- deploy from S3
- deploy from GitHub
CodeCommit
- hosted version control
- Git based
- secure
- scalable
- easy integration from other repos
CodePipeline
- hosted continuous delivery pipeline
- build
- test
- deploy
- GitHub
- Jenkins
- S3
- Beanstalk
- CodeDeploy
- EC2
AWS IoT
- provides secure, bi-directional communication between Internet-connected things and the AWS cloud
- collect telemetry data from multiple devices and store and analyze the data
- create applications that enable users to control these devices
- message broker
- rules engine
- thing registry
- thing shadows
- security and identity service
EMR
- Amazon Elastic MapReduce
- Hadoop based
- data is uploaded to S3
- results stored in S3
- cluster automatically shuts down when job is finished
Elasticsearch Service
- run Elasticsearch at scale
- self-healing
- auto-scaling
- data replication
- secure
- monitoring
- convenient
Kinesis
- big data stream processing
- process terabytes of data per hour
- Log and Event Data Collection
- Application and Service Alert
- Real-time Analytics
- Mobile Data Capture
- Social Data Firehose
- Gaming Data Feed
Data Pipeline
- automate the movement and transformation of data
- define data-driven workflows
- can be scheduled
- moves data between other Amazon services
- on-premises resources supported
- S3, DynamoDB, Redshift, RDS, and JDBC sources
- EMR, Hive, Pig, SQL, and Shell scripts
- manages the pipeline execution, resources, retry logic and failure notifications
Machine Learning
- for building ML models
- generating predictions
SQS
- Amazon Simple Queue Service
- at least once semantics
- multiple readers
- multiple writers
- manual acknowledgement required
- messages not acknowledged in time are returned to the queue
- up to 256 KB of text in any format
- no guarantee of first in, first out delivery of messages
- 120,000 limit for the number of inflight messages per queue
- dead letter queue support
SWF
- Amazon Simple Workflow Service
- background jobs -- parallel or sequential steps
- state tracker and task coordinator
- tracking workflow executions and logging their progress
- holding and dispatching tasks
- controlling which tasks each of your application hosts will be assigned to execute
- maintaining application state
AppStream
- application streaming service
- audio
- video
- multi-platform
- variable transport based on current network conditions
- STX streaming protocol
Elastic Transcoder
- transcodes media from S3
- 30 formats supported
- common presets available
- notifications of job status
- caption and sub-titles supported
- watermarks supported
SES
- Amazon Simple Email Service
- trusted by ISPs
- bounce management
- complaint management
- e-mail authentication
CloudSearch
- elastic search service
- can search most anything
- data is uploaded to the search service
- geospatial support
- 34 languages
Cognito
- securely store, manage, and sync identities and data across multiple devices, platforms, and applications
- recognize end users across devices and platforms
- save data to end user profiles and keep it in sync across all of the user's devices
- Multiple Identity Providers
- Amazon, Facebook, Google, Twitter, OpenID Connect compatible provider
- custom providers supported
- analytics
Mobile Hub
- in beta
- integrated console
- build, test and monitor mobile apps
- auto provisions required services
- iOS (Objective-C) and Android (Java) supported
Mobile Analytics
- collect and analyze app usage data
- use RedShift for custom analysis
- Daily Active Users (DAU), Monthly Active Users (MAU), and New Users
- Sticky Factor (DAU divided by MAU)
- Session Count and Average Sessions per Daily Active User
- Average Revenue per Daily Active User (ARPDAU) and Average Revenue per Daily Paying Active User (ARPPDAU)
- Custom Events
SNS
- Simple Notification Service
- push messaging service
- to mobile devices and Amazon services
- publication is asynchronous
- cryptographically signed
- consumption via multiple protocols
- Lambda, SQS, HTTP, Email, SMS
WorkSpaces
- provides users with a desktop experience in the cloud that can be accessed from any connected device
- multi-device support
- PC, Mac, iPad, Kindle tablet, Android tablet
- Active Directory integration
- on-premises
- Amazon
- hybrid
WorkDocs
- enterprise storage and sharing service
- selected folders on your local computer in sync with your cloud folders
WorkMail
- managed email and calendaring service
- Outlook Compatible
API Gateway
- publish, maintain, monitor and secure APIs
- proxy to any internet endpoint, EC2 endpoint or Lambda function
- versioning and stages, eg alpha, milestone
- metering and throttling
- caching
- signing & authorization via AWS Signature v4
- SDK generation, JavaScript, iOS, Android -- throttling and retries baked in
- manages API key distribution
- DDoS protection and latency reduction via CloudFront
- TLS termination support
Device Farm
- test apps on real smartphones and tablets
- large selection of devices
- detailed reports, searchable logs and screenshots
- configure location, network settings, language and application data prior to running the test
- integrate with existing development workflow
- Android and FireOS supported (no iOS)
- run provided tests eg. Calibash or JUnit
- fuzzing used if you don't have your own tests
- CPU and memory utilization captured and reported
"Amazon Sucks"
- virtual hardware has shorter life span than physical hardware. Have to move your bits every so often.
- be in multiple zones or you will go down
- multi-zone failures can occur but multi-region is expensive
- EBS fails with the region, has poor I/O and cause Linux boxes to lockup when unavailable
- many AWS services are backed by EBS and will fail when EBS fails, eg. ELB and RDS
- the same sized physical machine costs less the its virtual equivalent
Cost Estimates
DevOps Day 05 - Git 5.5
By Tarun Sharma
DevOps Day 05 - Git 5.5
My description
- 1,198