AWS SA-A Summary - Notes
AWS SA-A Summary - Notes
AWS SA-A Summary - Notes
Compute:
EC2 – Elastic Compute Cloud – virtual machines in the cloud; (similar to VMware).
EC2 Container Service – highly scalable to run VM’s on a managed cluster. (Docker).
Elastic Beanstalk – upload code to EB – MySQL/PHP – it will then provision the infra as needed.
Lambda – serverless; no OS access; host doesn’t matter; code is directly uploaded to the lambda
instance. Every time you speak with amazon echo you’re speaking with lambda.
Storage:
(Simple Storage Service) S3 - virtual disk in the cloud; object based storage for files; not block-
based storage (installation of applications). Dropbox is an example of s3 customer.
Glacier – regulatory requirements – 7-year storage; if files can wait for 4/5-hours they would be
stored here; low cost.
EFS – Elastic file service; file based storage that can be shared. Databases/applications can be
stored here.
Storage Gateway – virtual machine installed on premise; this communicates with S3 – this is used
to migrate local storage to AWS.
Databases:
RDS – Relational database service; MySQL Postgres; Maria DB; SQL Server; Oracle; Aurora
(MySQL/Postgres)
Redshift – Amazon data warehouse solution; query only when reports need to be
created/generated; move prod databases to redshift – good idea; “reporting server”.
Elasticache – this is the most accessed data in a particular database.
Migration Services:
Snowball – allowed for the moving of TB of data/briefcase; storage would move onto the device
and be sent to amazon. Snowball edge; isn’t just a data/storage appliance; now it has compute
capacity (on premise) AWS server.
DMS – Database migration services; allows for on–premise databases to be moved to the AWS
cloud. Databases on the AWS cloud can be moved to other regions. You don’t have to stay with
the database you’re migrating from. You can migrate your Oracle Database to another database.
No down-time/ using replication. Supports, Oracle/SQL/MySQL/Aurora/PostgreSQL/SAP ASC
SMS – Server Migration Services, same as DMS; this targets VMware; this will replicate to the
AWS cloud; up to 50 at the same time.
Analytics:
Athena – allows to run SQL queries on S3; announced at re: invent 2016; if a lot of JSON files; it
can make flat files; searchable databases.
EMR – Elastic Map Reduce; big data processing. Understand high level; how to access etc. Log
analysis; web indexing; analyze financial markets; using Hadoop; can also use apache spark
apache h-space; spark. Big Data.
Elastic Search – service using open source framework; allows for search in application
Data Pipeline – allows the movement of data from one place to another. Move from S3 possibly
into Dynamo DB – or vice versa
Quick Sight – Visualizations/rich dashboards. Business analytics tool; analyze data in S3/Dynamo
DB/RDS/Redshift.
WAF – Web Application Firewall; application level protection to your website; this stops SQL
injections/cross site scripting at the application layer.
Artifacts – Where the documentation in the AWS console lives; “Compliance Reports” AWS
Artifacts; ISO certs; PCI certification/compliance documents.
Management Tools:
Cloud Watch: Used to monitor performance in the AWS environment; EC2; manage disk/CPU etc.
Cloud watch event can kick off something based on an action.
Cloud Formation: Turns infra into code; instead of having physical devices; you apply a cloud
formation templates to your environment; 1-command that can provision a 50 server
environment that has multiple availability zones and auto-scaling; turns infra into code. Gonna
create a fault tolerant WordPress site.
Cloud Trail: Used for auditing AWS resources; if a new user is created cloud trail keeps track of
that.
Applications Services:
Step Function: Way of visualizing what’s going on in an applications; displays what micro services
are being used.
SWF (Simple workflow Services): Coordinating automated tasks and human tasks. Amazon uses this
for package picking.
API Gateway: A door that allows you to create publish and monitor API’s at scale; can access
business logic and back end data via lambda;
Elastic Transcoder: Video formatting for custom devices (iPad vs Laptop). Upload 1-video and
multiple outputs are created.
Developer Tools:
Code Commit: Basically GitHub this can be open or closed.
Cognito: Easy for sign-up and sign into apps; this allows people to sign in w/Gmail etc.
Device Farm: Improve quality of applications to test on real phones. All physical devices in AWS
datacenter.
Pinpoint: Understand and engage with users; google analytics for mobile apps. Where they are,
different purchases, user behavior. When to send notifications for marketing campaigns, google
analytics with targeted marketing campaigns.
Business Productivity:
WorkDocs: Storing work documents online.
Internet of Things:
IOT: Keeping track of devices.
Artificial Intelligence:
Alexa: Amazon voice service in the cloud.
Rekognition: Analyze a photo and provide tags identified from within the image.
Messaging:
SNS: Simple Notification Services; E-mail or text; can publish to http or https endpoints.
Review:
In order to pass the AWS Certified Solutions Architect Associate exam I will need to know the following
sections:
Messaging -
Desktop & App Streaming – workspaces; virtual desktop in the cloud.
Security & Identify
Management Tools – Cloud Formations
Storage
Databases
Networking & Content Delivery
Compute
AWS Global Infrastructure – Difference between a region and an availability zone:
Region: Geographical area. (Not all regions have the same services).
Policy documents can be applied to Users/Groups/Roles. JSON value; key value pair;
{“Version”: 2012-10-17”,
“Statement”:
[
{“Effect”: “Allow”,
“Action”: “*”,
“Resource”: “*”}
]
}
IAM is universal; the region doesn’t matter. The “root” account is created when first creating the AWS
account.
New Users are assigned Access Key ID & Secret Access Keys when first created – SAVE THIS
INFROMATION SOMEWHERE; IT WON’T BE ACCESSABLE AGAIN.
These are not the same as a password, and you cannot use the Access key ID & Secret Access Key to
Login to the console. You can use this to access AWS via the APIs and Command Line however.
Always setup MFA (Multi-Factor Authentication) on the root account; this removes IAM warning
message. The password rotation policy has been customized to meet security policy.
S3 – Exam Tips for S3 101
S3 is Object based; i.e. allows you to upload files, not Block based.
Files can be from 0Bytes to 5TB.
There is unlimited storage.
By default an account is allowed 100 S3 buckets
Files are stored in Buckets (folders).
o Buckets have universal namespace, they must be unique globally
Examples:
http://bucket.example.com/foo.txt
http://bucket.example.com.s3.amazonaws.com/foo.txt
http://bucket.example.com.s3[-region].amazonaws.com/foo.txt
http://s3[-region].amazonaws.com/bucket.example.com/foo.txt
Read after Write consistency for PUTS of new Objects.
Eventual Consistency for overwrite PUTS and DELETES (can take some time to propagate)
S3 Storage Classes/Tiers
o S3 (durable, immediately available, frequently accessed)
o S3-IA (durable, immediately available, infrequently accessed)
o S3-Reduced Redundancy Storage (data that is easily reproducible, such as thumb nails
etc.).
o Glacier – Archived data, where you can wait 3 – 5 hours before accessing.
Remember the core fundamentals of S3;
o Key (name)
o Value (data)
o Version ID
o Metadata
o Access control lists
Object based storage only (for files).
NOT SUITABLE TO INSTALL AN OPERATING SYSTEM ON.
Stores all versions of an object (including all writes and even if you delete an object). All
versions paid for.
Great backup tool.
Once enabled, Versioning cannot be disabled, only suspended.
Integrates with Lifecycle rules
Versioning’s MFA Delete capability, which uses multi-factor authentication, can be used to
provide an additional layer of security.
S3 Lifecycle Management
o Can be used in conjunction with versioning.
o Can be applied to current versions and previous versions
o Following actions can now be done;
Transition to the Standard – Infrequent Access Storage Class (128Kb and 30
days after the creation)
Archive to Glacier Storage Class (30 days after IA, if relevant) – 60-days from
first creation.
Permanently delete
CloudFront
o Edge Location – this is the location where content will be cached. This is separate to an
AWS Region/AZ
o Origin – This is the origin of all the files that the CDN will distribute. This can be either an
S3 bucket, an EC2 instance, an Elastic Load Balancer or Route53.
o Distribution – this is the name given to the CDN which consists of a collection of Edge
Locations.
Web Distribution – Typically used for Websites.
RTMP – Used for Media Streaming.
Edge locations are not just READ only, you can write to them.
Objects are cached for the life of the TTL (Time to Live – in seconds); by default
24-hours.
You can clear cached objects, but you will be charged.
Security & Encryption
o By default, all newly created buckets are PRIVATE.
o You can setup ACL to your buckets;
Bucket policies
ACL
o S3 bucket can be configured to create access logs which log all requests made to the S3
bucket, this can be done to another bucket.
o Encryption
In Transit
SSL/TLS
At Rest
Service Side Encryption
o S3 Managed Keys – SSE – S3 – AES 256
o AWS Key Management Service, Managed Keys – SSE – KMS
o Server Side Encryption with a Customer Provided Key – SSE – C
Client Side Encryption
Storage Gateway
o File Gateway – for flat files stored on S3
o Volume Gateway (iSCSI) –Block Based
Stored Volumes – Entire Dataset is stored on site and is asynchronously backed
up to S3.
Cached Volumes – Entire Dataset is stored on S3 and the most frequently
accessed data is cached on site.
o Gateway Virtual Tape Library (VTL)
Used for backup and uses popular backup applications like NetBackup, Backup
Exec, Veam etc.
Snowball
o Standard – 50TB – 80TB
o Snowball Edge (Storage + Compute); mini AWS datacenter.
o Snowmobile – 100PB of storage; can come with armored guards.
o What a Snowball is
o Understand what Import/Export is
o Snowball can import to S3 and export
S3 Transfer Acceleration
o You can speed up information by putting it in edge locations.
S3 Static Websites
o You can host static sites;
o Server less
When writing to S3 – HTTP 200 code for successful write
You can load files to S3 much faster by enabling multipart upload –
Read the S3 FAQ before taking the exam.
EC2 101
EC2 – Summary & Exam Tips
Know the differences between;
o On Demand
o Spot
o Reserved
o Dedicated Hosts
Remember with spot instances;
o If you terminate the instance, you pay for the hour
o If AWS terminates the spot instance, you get the hour it was terminated in for
free.
Dr. Mc. GIFT PX (D2; R4; M4; C4; G2; I2; F1; T2; P2; X1)
EBS consists of;
Volumes vs Snapshots
Roles are more secure than storing your access key and secret access key on individual
EC2 instances.
Roles are easier to manage.
Roles can be assigned to an EC2 instance AFTER it has been provisioned using both the
CLI and the AWS console.
Roles are universal, you can use them in any region.
Instance Meta-data
EFS Features
What is Lambda?
What is Lambda? AWS Lambda is a compute service where you can upload your code and create a
Lambda function. AWS Lambda takes care of provisioning and managing the servers that you use to run
the code. You don’t have to worry about operating systems, patching, scaling, etc. You can use Lambda
in the following ways.
As an event-driven compute service where AWS Lambda runs your code in response to
events. These events could be changes to data in an Amazon S3 bucket or an Amazon
DynamoDB table.
As a compute service to run your code in response to HTTP requests using Amazon API
Gateway or API calls made using AWS SDKs. This is what we use at A Cloud Guru.
Function cannot take longer than 5-minutes to execute; if it does then it needs to be
broken apart into multiple Lambda calls.
Route53
Geolocation
DNS Exam Tips
ELB’s do not have pre-defined IPv4 addresses, you resolve to them using a DNS name.
Understand the difference between an Alias Record and a CNAME. The difference is that
an alias can resolve individual AWS resources (ELB/CloudFront distro).
Given the choice, always choose an Alias Record over a CNAME.
DynamoDB vs RDS
DynamoDB offers “push button” scaling, meaning that you can scale your database on the fly, without
any down time.
RDS is not so easy – you usually have to use a bigger instance size or to add a read replica.
Elasticache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the
cloud. The service improves the performance of web applications by allowing you to retrieve
information from fast, managed, in-memory caches, instead of relying entirely on slower disk-based
databases. ElastiCache supports two open-source in-memory caching engines:
MemcahceD
Redis
VPC Overview – Don’t take the exam until you can build out a VPC by
Memory
What is a VPC?
Exam tips –
NAT Instance
When creating a NAT instance, disable source/destination check on the instance.
NAT instances must be in a public subnet.
There must be a route out of the private subnet to the NAT instance, in order for this to work.
The amount of traffic that NAT instances can support depends on the instance size. If you are
bottlenecking, increase the instance size.
You can create high availability using AutoScaling groups, multiple subnets in different AZs, and
a script to automate failover.
Behind a Security Group
NAT Gateway
Preferred by the enterprise
Scale automatically up to 10Gbps
No need to patch
Not associated with security groups
Automatically assigned a public ip address
Remember to update your route tables
No need to disable source/destination checks
More secure than a NAT instance
Ephemeral ports
An ephemeral port is a short-lived transport protocol port for Internet Protocol (IP) communications.
Ephemeral ports are allocated automatically from a predefined range by the IP stack software. An
ephemeral port is typically used by the Transmission Control Protocol (TCP), User Datagram Protocol
(UDP), or the Stream Control Transmission Protocol (SCTP) as the port assignment for the client end of a
client–server communication to a well-known port on a server.
VPC
Subnet
Network Interface Level
You cannot enable flow logs for VPCs that are peered with your VPC unless the peer VPC is in
your account.
You cannot tag a flow log.
After you’ve created a flow log, you cannot change its configuration; for example, you can’t
associate a different IAM role with the flow log.
Not all IP traffic is monitored;
Traffic generated by instances when they contact the Amazon DNS server. If you use your own
DNS server, then all traffic to that DNS server is logged.
Traffic generated by a Windows instance for Amazon Windows License activation.
Traffic to and from 169.254.169.254 for instance meta data.
DHCP Traffic.
Traffic to the reserved IP address for the default VPC router.
NAT vs Bastion
Travel Website:
SWF Actors
Workflow Starters – An application that can initiate (start) a workflow. Could be your e-
commerce website when placing an order or a mobile app searching for bus times.
Deciders – Control the flow of activity tasks in a workflow execution. If something has finished in
a workflow (or fails) a Decider decides what to do next.
Activity Workers – Carry out the activity tasks.
HTTP
HTTPS
Email
Email-JSON
SQS
Application
Lambda
SNS vs SQS
Both messaging services in AWS
SNS-Push
SQS – Polls (Pulls)
Elastic Transcoder
What is elastic transcoder?
Media Transcoder in the cloud.
Convert media files from their original source format in to different formats that will play on
smartphones, tables, PC’s etc.
Provides transcoding preset for popular output formats, which means that you don’t need to guess
about which settings work best on particular devices. Pay based on the minutes that you transcode and
the resolution at which you transcode.
Kinesis Summary
What is Kinesis Streams?
Kinesis Firehose
No automatic data retention window. As soon as the data comes in its analyzed using Lambda or sent to
S3
Advantages of cloud
Compliance
SOC 1/SSAW 16/ISAE 3402 (formerly SAS 70 Type II)
SOC2
SOC3
FISMA, DIACAP, AND FedRAMP
PCI DSS Level 1
ISO 27001
ISO 9001
ITAR
FIPS 140-2
HIPPA
Cloud Security Alliance (CSA)
Motion Picture Association of America (MPAA)
Overview of Security Processes (Part 1) – Most Important White Paper
(READ THIS)
Shared Security Model
AWS is responsible for securing the underlying infrastructure that supports the cloud, and you’re
responsible for anything you put on the cloud or connect to the cloud
AWS is responsible for the security configuration of its products that are considered managed services.
Examples of these types of services include Amazon DynamoDB, Amazon RDS, Amazon Redshift,
Amazon Elastic MapReduce, and Amazon WorkSpaces.
Managed Services, AWS is responsible for patching, antivirus etc., however you are responsible for
account management and user access. It’s recommended that MFA be implemented, communicate to
these services using SSL/TLS and that API/user activity logging be setup with CloudTrail.
Storage Decommissioning
When a storage device has reached the end of its useful life, AWS procedures include a
decommissioning process that is designed to prevent customer data from being exposed to
unauthorized individuals.
AWS uses the techniques detailed in DoD 5220.22-M (“National Industrial Security Program Operating
Manual”) or NIST 800-88 (“Guidelines for Media Sanitization”) to destroy data as part of the
decommissioning process.
All decommissioned magnetic storage devices are degaussed and physically destroyed in accordance
with industry-standard practices.
Network Security
Transmission Protection – you can connect to an AWS access point via HTTP or HTTPS using SSL. For
customer who require additional layers of security can use a VPC and the ability to use an IPsec VPN
device to provide an encrypted tunnel to your AWS environment.
Amazon Corporate Segregation – Logically, the AWS Production network is segregated from the Amazon
Corporate network by means of a complex series of network security/segregation devices.
It provides alerts on several of the most common security misconfigurations that can occur, including
leaving certain ports open that make you vulnerable to hacking and unauthorized access, neglecting to
create IAM accounts for your internal users, allowing public access to Amazon S3 buckers, not turning on
user activity logging (AWS CloudTrail), or not using MFA on your root AWS Account.
Instance Isolation
Different instances running on the same physical machine are isolated from each other via the Xen
hypervisor. In addition, the AWS firewall resides within the hypervisor layer, between the physical
network interface and the instance’s virtual interface. RAM also works the same way.
Customer instances have no access to raw disk devices, but instead are presented with virtualized disks.
The AWS proprietary disk virtualization layer automatically resets every block of storage used by the
customer, so that one customer’s data is never unintentionally exposed to another. In addition, memory
allocated to guests is scrubbed (set to zero) by the hypervisor when it is unallocated to a guest.
Other considerations
Guest OS – Encryption of sensitive data is generally a good security practice, and AWS provides the
ability to encrypt EBS volumes and their snapshots with AES – 256. The encryption occurs on the servers
that host the EC2 instances, providing encryption of data as it moves between EC2 instances and EBS
storage. In order to be able to do this efficiently and with low latency, the EBS encryption feature is only
available on EC2’s more powerful instance types (e.g. M3, C3, R3, and G2).
Implement Elasticity
1. Proactive Cyclic Scaling; periodic scaling that occurs at fixed interval (daily, weekly, monthly,
quarterly).
2. Proactive Event-based Scaling: Scaling just when you are expecting a big surge of traffic requests
due to a scheduled business event (new product launch, marketing campaigns).
3. Auto-scaling based on demand
Design Principles
Apply security at all layers
Enable Traceability
Automate responses to security events
Focus on security your system
Automate security best practices
Definition
Data protection
o Organize and classify your data into segments such as public/private. Determine who
should have access to specific data, users/devices/etc. Implement a least privilege
access system. Encrypt everything where possible, at rest and in transit.
Privilege management
o This ensures that only authorized and authenticated users are able to access your
resources.
ACL
Role Based Access Controls
Password Management (such as password rotation policies)
Manage AWS root account
Roles & Responsibilities of system users to access to AWS Management console
and API’
How are you limiting automation?
Infrastructure protection
o This is at a VPC level.
o NACLs in place.
o Subnet public or private
Detective controls
o Detect or identify a security breach such as the following
AWS CloudTrail
AWS CloudWatch
AWS Congif
Amazon S3
Amazon Glacier
o How are logs analyzed?
Definition
Foundations
o Before architecting make sure you have the prerequisite foundations.
Change Management
Failure Management
AWS Services
Foundations
o IAM, VPC
Change Management
o AWS CloudTrail
Failure Management
o AWS CloudFormation
Well Architected Framework –Pillar Three Performance Efficiency
Design Principles
Democratize advanced technologies
Go global in minutes
Use server-less architectures
Experiment more often
Definition
Compute
Storage
o Access method
o Patterns of access – Random or Sequential
o Throughput required
o Frequency of access
Databases
Space-time tradeoff
AWS Services
o Compute
AutoScaling
o Storage
EBS, S3, Glacier
o Database
RDS, DynamoDB, Redshift
o Space-Time Trade-Off
CloudFront, ElasticCache, Direct Connect, RDS Read Replicas etc.
Definition
Matched supply and demand
Cost-effective resources
Expenditure awareness
Optimizing over time
AWS Services
o Matched supply and demand
AutoScaling
o Cost-effective resources
EC2 (reserved instances), AWS Trusted Advisor
o Expenditure awareness
CloudWatch Alarms, SNS
o Optimizing over time
AWS Blog, AWS Trusted Advisor
Definition
Preparation
o Runbooks
o Playbooks
Operation
Response