Introducing AWS Route 53 and Elastic Load Balancing

Tram Ho

To be able to build an AWS-based system, in addition to the main services such as EC2 for Cloud Server and S3 for storage, AWS also provides other services that can connect them and bring the Convenient, just to ensure security, speed, …

Here are 2 quite famous services that bring great convenience to your system

1. Route 53 (DNS)

Route 53 is a service named after two things.

The first is Route 66, a legendary highway that traverses America. The second is Port 53, this is the DNS service port, which receives requests to the DNS server. Combine that and we have Route 53.

Amazon Route 53 is a Domain Name System (DNS) service.

  • Full compliance with IPv6 standards
  • There are DNS servers all over the world

Route 53 also provides the ability to register a domain name. You can manually register and purchase a domain name using the Route 53 console and Route 53 will automatically configure DNS settings for that domain.

Note : Domain names “accidentally” registered with the wrong name, will not be changed and will not be refunded. It will cost you to buy a new domain name.

You can use Amazon Route 53 to check the DNS status, thereby routing traffic to active domains or independently monitoring application status and application endpoints.

On a global level, Route 53 provides three solutions to manage traffic:

  • Based on latency (latency)
  • Based on geographical distance
  • Based on the circular coordination algorithm (Weighted Round Robin).

These three methods can be combined simultaneously to solve the DNS failover problem to create a low latency and good failure architecture.

In summary, Benefits of using Route 53 include:

  • High availability and reliability
  • Flexible (adjust routing by the interface of amazon).
  • Easily integrated with other Amazon services (Elastic Load Balancing, AWS Elastic Beanstalk, VPC, S3, ..)
  • Simple, high speed
  • Cost effective (only charged by the amount used)
  • Security
  • Meet large systems.

2. Elastic Load Balancing (ELB)

Load Balancing (ELB) is a service that coordinates access to prevent a server from being overloaded. ELB works based on Auto-Scaling mechanism

ELB will coordinate so that the traffic to the servers is balanced, or according to user preferences (80-20 for example).

In addition, with the Auto-Scaling mechanism, the amount of resources will be optimized, increased or decreased based on the requirements from time to time. This will be extremely useful for systems with peak access times during certain times of the day or certain days of the week. This is also an advantage of cost savings compared to using a physical server of our own.

The ELB provides a way to coordinate access to:

  • Cloud Servers (EC2) through Auto-scaling Group
  • IP address
  • Lambda functions
  • In addition, ELB also works on combined systems, ie systems including both Cloud Server and the user’s physical server.

You can customize how ELB works based on several criteria such as:

  • Only receive requests from the private subnet or receive requests from the Internet.
  • Set up listeners based on protocol and port
  • Select Availability Zone (AZ)
  • Set up Target Groups to specify where the requests will go (EC2, Lambda Function) or to coordinate specific traffic.
  • The ELB also provides an intuitive interface so you can monitor the status of the ELB, see if requests are focused on a server, or if any requests are being sent to the server that is having problems.

AWS offers 3 different ELB packages, except for 1 classic package, the remaining 2 packages will be divided based on system usage.

Basically, the Network Load Balancer package will not care about the content of the request, but will only forward the request while the Application Load Balancer checks the content of the HTTP / HTTPS request header (content-type, cookies, user location). , ..) to determine where routing required.

This also leads to Network Load Balancer sometimes sending wrong requests to servers that are having trouble or offline, and Application Load Balancer will not be caught in this mistake because in fact it doesn’t just check the situation. The server’s status is based on the successful response (status code 200 for example), which will also calculate the expected result based on the input parameter.

Reference source:

Share the news now

Source : Viblo