What I have learned about High Availability on AWSAmazon-Web-Services ·
This is the ninth post of content for preparing yourself for becoming an AWS Solutions Architect Associate.
In this post, we are going to focus on High Availability features within AWS.
As I have done previously let’s look at the similarities and differences to the closest equivalent in Azure. As I go through this section, I will point out some of the similar platforms.
Elastic Load Balancers (ELB)
Balances network load across virtual machines. Typically public facing.
Application - HTTP/HTTPs - layer 7 and application aware. Can balance base on local language or currency - sees the requests within the application to make intelligent routing.
Network - TCP traffic where extreme performance is required. Layer 4 device, ultra-low latency. These LB are the most expensive.
Classic - legacy ELB. Layer 7 specific features but not application aware. Strict Layer 4 load balancer for TCP. Round-robin use case as an inexpensive. Application LB is the best option in most cases.
X-forward-for header provides the IP information on where it has been forwarded to end user.
504 error is an gateway time out and application has not responded.
Load balancers are given a DNS URL and not a public IP address. This is different from Azure where Load Balancers do have Public IP addresses. In AWS, Load balancers are not free where in Azure a basic load balancer is free.
Registering a Target group in AWS is the same as creating a backend pool in Azure LB.
Sticky sessions - bind a users session to a particular EC2 instance. Helpful for shopping sites with shopping carts. If you are testing and only going to a single EC2 instance, disable sticky sessions to troubleshoot.
Cross zone load balancing - Will send traffic across availability zones. Creates a better balance across availability zones even if EC2 instances are not balanced between AZs.
Path patterns - Direct different traffic using a listener with rules to forward requests based on the URL path. Scenario is a URL for images that are in a different AZ.
- Groups - logical component
- Configuration templates - launch configuration, size, specifications, security groups for the instances.
- Scaling options - ways to scale, conditions (dynamic) or scheduled.
Maintain current instance levels at all times - allows for the number of instances to remain the same level. If an instance fails, it will be stopped and another instance will deploy.
Scale manually - only the change in max, min, or desired capacity.
Scale based on a schedule - based on date and time.
Scale based on demand - CPU utilization as an example. Defined parameters for changing conditions.
Use predictive scaling - across multiple services. Proactive and reactive approach to scale faster.
Launch configuration is required before creating a scaling group.
High Availability Architecture
Plan for failure - everything fails
Netflix - simulation tools to introduce failure to make sure HA works. <goo.gl/UR2nzM>
Fail-over from one region to another or one availability zone to another with Route 53 doing a heath check.
Management and governance
Templates to deploy workloads such as a WordPress site
Enter the parameters, instance types, key pairs, permissions to Create an instance stack.
Similar to Azure Marketplace instances and ARM template deployments.
AWS Quick starts is the AWS marketplace that launches into CloudFormation.
Json Scriping a cloud environment.
Application and Platform
Deploys code without needing to know CloudFormation
Configure with elastic provisioning and auto-scaling
Upload code and Elastic Beanstalk will check code and deploy.
No need to worry about the infrastructure. Grow out the infrastructure to fit the need for the application to run.
HA with Bastion
Two bastions in two AZ within public subnets behind a network load balancer.
Lower cost options is to use an auto scaling group with a minimum of one for the Bastion instance using an elastic IP.
Database migration service - works with Oracle, MySQL, DynamoDB, etc. Homogenous and heterogenous migration. Oracle - Oracle or Oracle - MySQL.
Server migration service - similar to Azure Recovery Service. Migration as well as a DR tool.
AWS application discovery service - gather information through a virtual appliance on VMware vCenter to identify dependencies of infrastructure. Map the entire on-premises data center.
VM Import/Export - migrate applications to EC2 or export EC2 into data center.
Download Amazon Linux to an ISO image - run EC2 in VMware, Hyper-V.
I hope that you are enjoying this information so far. It is helping me to continue to comprehend these services as I prepare for the exam myself. Thank you very much.
What I’ve Learned about IAM on AWS
What I’ve Learned about S3 on AWS
What I’ve Learned about EC2 on AWS
What I’ve Learned about EBS on AWS
What I’ve Learned about Cloudwatch on AWS
What I’ve Learned about RDS on AWS
What I’ve Learned about Route 53 on AWS
What I’ve Learned about VPC on AWS
What I’ve Learned about High Availability on AWS
What I’ve Learned about Applications on AWS
What I’ve Learned about Security on AWS
What I’ve Learned about Lambda and serverless on AWS