Some notes I took on a beginners course in AWS.
2022-05-23
Link to the course (it's free btw)
us-east-2
is a regionus-east-2a
is an availability zoneAMI: Amazon Machine Image
When selecting an instance type and size, you see: t3.medium
or a1.large
t3
and a1
is the instance family/type + generation, determines the hardware capabilitiesmedium
and large
is the instance size (vCPUS, memory, etc)To create a VPC, we need to set 2 things:
VPC are split into subnets, and then you put your AWS resources into these subnets.
To provide more control over access of resources.
To create a Subnet, we need 3 things:
VPCs need Internet Gateways (IGW) to connect to the internet.
If you only want traffic from a specific place, for example an on-premises datacenter, then you can create Virtual Private Gateway (VGW).
AWS reserves 5 IP addresses in each subnet.
How does traffic get routed through the VPC?
When you create a VPC, AWS creates a route table called the main route table.
A route table contains a set of rules, called routes, that are used to determine where traffic is directed.
Default configuration allows traffic between all the subnets in the local network.
Network Access Control List (Network ACL) can be thought of as a firewall at the subnet level.
You can use it to only allow HTTPS traffic in and out of your subnet. Remember if you make a rule to only allow HTTPS traffic in, you have to also make a rule to allow HTTPS traffic out.
A NAT Gateway provides internet connectivity to instances and private subnets. A NAT gateway is a Network Address Translation service. You can use a NAT gateway to so that instances in a private subnet can connect to services outside your subnet.
The next layer of security is a Security Group. This is a firewall at the EC2 level. Security groups are not optional. The default configuration of a new security group blocks all inbound traffic and allows all outbound traffic. This ok and works because security groups will remember if a connection if originally initiated by the EC2 instance or outside and will temporarily allow traffic to respond with modifying the inbound rules.
AWS storage services are grouped into 3 categories: block storage, file storage, and object storage.
File storage: It's what it sounds like, it’s a file system. Each file has metadata like file name, file size, created date, etc. And files have paths. File storage is good when you require centralized access to file that need to be easily shared and managed by multiple host computers.
Block storage: splits of data into block, considers each block it’s own thing
Object storage: considers each object its own thing. - WORM: write once, read many
EBS, elastic block storage , is like an external drive. Persistent storage.
S3 is object storage.
You can automate automatic tier transitions with object life cycle management. You can choose:
nothing of note
Application Load Balancer — Layer 7: HTTP/HTTPS
Network Load Balancer — Layer 4: TCP/UDP/TLS
Gateway Load Balancer — Layer 3+4: IP
You can have internal or external load balancers. For use within your network or internet facing.
ALB makes routing decisions based on the HTTP protocol, like the URL path (/upload) and host, HTTP headers and method, and the source IP address of the client.
ALB uses sticky sessions. If requests must be sent to the same backend server because the application is stateful, use the sticky session feature. This feature uses an HTTP cookie to remember across connections which server to send the traffic to.
NLBs do not understand what an HTTP request is.
NLBs use a flow hash routing algorithm. The algorithm is based on:
If all those params are the same, it goes to the same target