Networking in AWS
These are some important definitions I noted while learning AWS
VPC(Virtual Private Cloud) — A Virtual Private Cloud is a logically isolated section where the user can launch EC2 instances by creating subnets in the VPC. By the definition, a VPC is a multi-availability zone. So a VPC can contain Multiple available zones.
Internet Gateway — An internet gateway serves two purposes: to provide a target in your VPC route tables for internet-routable traffic, and to perform network address translation (NAT) for instances that have been assigned public IPv4 addresses
Elastic Load Balancer — Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances. It can handle the varying load of your application traffic in a single Availability Zone or across multiple Availability Zones.
ELB offers three types of load balancers that all feature the high availability, automatic scaling, and robust security that are necessary to make your applications fault-tolerant.
An Application Load Balancer operates at the request level (Layer 7), routing traffic to targets — such as EC2 instances, microservices and containers — within Amazon VPC, based on the content of the request. It’s ideal for the advanced load balancing of Hypertext Transfer Protocol (HTTP) and Secure HTTP (HTTPS) traffic.
A Network Load Balancer operates at the connection level (Layer 4), routing connections to targets — such as Amazon EC2 instances, microservices, and containers — within Amazon VPC, based on IP protocol data. It’s ideal for load-balancing Transmission Control Protocol (TCP) traffic.
The Classic Load Balancer provides basic load balancing across multiple Amazon EC2 instances, and it operates at both the request level and the connection level.
Storage in AWS
Storage is a service which is provided by AWS for storing and retrieving data of the instances.
S3(Simple Storage Service) — S3 uses object-level storage. S3 is highly durable and highly scalable for storing images, videos and text files. What happens in Block level storage is when the user wants to change a file then he needs to change the entire file not the single component. S3 is used for backups and highly scalable storage.
Amazon Simple Storage Service (Amazon S3) stores data as objects within resources that are called buckets. You can store as many objects as you want within a bucket, and you can write, read, and delete objects in your bucket. Objects can be up to 5 TB in size.
You can control access to both the bucket and the objects (who can create, delete, and retrieve objects in the bucket for example), and view access logs for the bucket and its objects. You can also choose the AWS Region where a bucket is stored to optimize for latency, minimize costs, or address regulatory requirements.
Elastic Block Storage(EBS)— Storage for EC2 and databases uses EBS(Elastic Block Storage). EBS uses block-level storage. Amazon Elastic Block Store (Amazon EBS) provides persistent block storage volumes for use with Amazon EC2 instances in the AWS Cloud. Each Amazon EBS volume is automatically replicated inside an Availability Zone to protect you from component failure, which offers high availability and durability. Amazon EBS volumes offer consistent and low-latency performance that you need to run your workloads. EBS is attached to one particular EC2 instance.
EFS(Elastic File System) — Elastic File System(EFS) is a storage service used for file storing. Multiple Amazon EC2 instances can access an Amazon EFS file system at the same time, thus allowing Amazon EFS to provide a common data source for workloads and applications that run on more than one Amazon EC2 instance. Multiple instances from different zones or different VPC’s can access the EFS.