Auto Scaling and Monitoring Flashcards
Elastic Load Balancing
*Distributes incoming application / network traffic across multiple targets in a single Availability Zone or across multiple Availability Zones.
*Scales your load balancer as traffic to your application changes over time.
Application Load Balancer
Load balancing of HTTP(S) traffic.
Operates at the application level (OSI model layer 7). It routes traffic to targets(EC2 Instances etc…).
Provides advanced request routing that is targeted at delivery of modern application architectures, including microservices and container-based applications. It simplifies and improves the security of your application by ensuring that the latest SSL/TLS ciphers and protocols are used at all times.
You register targets in target groups, and route traffic to the target groups
Network Load Balancer
Load Balancing of TCP, UDP and TLS traffic, where extreme performance is required.
Operates at the network transport level (OSI model layer 4), routing connections to targets—EC2instances, microservices, and containers—based on IP protocol data. It is capable of handling millions of requests per second while maintaining ultra-low latencies and is optimized to handle sudden and volatile network traffic patterns.
You register targets in target groups, and route traffic to the target groups
Classic Load Balancer
Load Balancing of HTTP, HTTPS, TCP and SSL traffic across multiple EC2 Instances.
Operates at Application/Transport Layers.
Elastic Load Balancing use cases
Available and Fault Tolerant,
Containerized,
Elasticity/Scalability,
VPC,
Hybrid Environments,
Invoke Lambda functions over HTTP(s).
Load balancer Monitoring
Amazon CloudWatch metrics – Used to verify that the system is performing as expected and creates an alarm to initiate an action if a metric goes outside an acceptable range.
Access logs – Capture detailed information about requests sent to your load balancer.
AWS CloudTrail logs – Capture the who, what, when, and where of API interactions in AWS services.
Amazon CloudWatch
A monitoring and observability service. Monitors your AWS resources (and the applications that you run on AWS) in real time. You can use it to collect and track metrics, which are variables that you can measure for your resources and applications.
CloudWatch alarms
Create alarms based on:
*Static threshold
*Anomaly detection
*Metric math expression
*Specify :
*Namespace
*Metric
*Statistic
*Period
*Conditions
*Additional configuration
*Actions
Amazon EC2 Auto Scaling
*Helps you maintain application availability.
*Enables you to automatically add or remove EC2 instances according to conditions that you define.
*Detects impaired EC2 instances and unhealthy applications, and replaces the instances without your intervention.
*Provides several scaling options –Manual, scheduled, dynamic or on-demand, and predictive.
Auto Scaling groups
A collection of EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management.
Scaling out versus Scaling In
With Amazon EC2 Auto Scaling, launching instances is referred to as scaling out, and terminating instances is referred to as scaling in.
Implementing Dynamic Scaling
Create a CloudWatch alarm that is based on performance information from your EC2 instances or load balancer. When a performance threshold is breached, a CloudWatch alarm triggers an automatic scaling event that either scales out or scales in EC2 instances in the Auto Scaling group.
AWS Auto Scaling
*Monitors your applications and automatically adjusts capacity to maintain steady, predictable performance at the lowest possible cost.
*Provides a simple, powerful user interface that enables you to build scaling plans for resources, including:
*Amazon EC2 instances and Spot Fleets.
*Amazon Elastic Container Service (Amazon ECS) Tasks.
*Amazon DynamoDB tables and indexes.
*Amazon Aurora Replicas.