Amazon Route 53 is a DNS (Domain Name System) web service on AWS Cloud. As we all know that we access an application or website through IP address or domain over the internet. For example, journaldev.com is the host or domain.
We have learned about the AWS Cloud Platform, EC2 – Elastic Compute Cloud, Amazon S3 and Run a static website on Amazon S3. But how internet traffic is being routed to these resources. Here Amazon Route 53 comes in the picture, it routes the internet traffic to your application or website running on AWS Cloud. If you have an idea of the Domain Name System and how it works then you will find Amazon Route 53 service very familiar. Similar to other services on AWS Cloud, Amazon Route 53 is also highly scalable.
What is a DNS (Domain Name System)?
Before understanding Amazon Route 53, we need to understand what is a Domain Name System (DNS) service?
Domain Name System is a service which is globally distributed to translate the human-readable domain names (for example, www.journaldev.com) to the specific IP address (for example, 192.0.0.1). Domain names are easy to remember for a human instead of the IP address. The IP address is the actual location/address of a computer on the internet. It’s just like the phone book where names are mapped with the telephone number.
Domain Name Servers translates the domain name into an IP address and locate the computer where the end user will reach.
What is Amazon Route 53?
Amazon Route 53 is a Domain Name System (DNS) web service on AWS Cloud. It’s highly scalable and available service. It’s just like any other DNS service with AWS cloud benefits. Amazon Route 53 connects the user requests to the infrastructure services running on AWS. It can route the request to the service such as – EC2 Instances, Load Balancer or S3 buckets, etc. Amazon Route 53 can also route user request to the service outside of the AWS infrastructure.
Amazon Route 53 can be mainly used for:
- Register Domain Names on AWS
- Routing the internet traffic to other AWS services
- Check the Health of your resources
Why Amazon Route 53?
There are a number of reasons to use Amazon Route 53:
Amazon Route 53 is very cost effective, you only have to pay for the services that you use. For example, you pay for the number of queries that the service answers for each of your domains, hosted zones, and Health check.
You can learn more about pricing here at Amazon Pricing.
2. Highly Available
Amazon Route 53 uses a highly available and reliable network backbone of AWS cloud. Domain Name Servers are distributed in nature and offer very low latency. Which helps to route the user request consistently without any failure.
3. Very Simple
It’s very easy to control Amazon Route 53 from its APIs. For example, create a DNS record whenever you create an EC2 instance. It’s APIs makes the job pretty simple to use. You can do the setup from the AWS Management Console and service would be available in a few minutes.
After a point of time, everything comes down to the scaling when the number of user requests increases. Amazon Route 53 scales automatically when the number of queries increases.
You are doing everything within the boundary of AWS Cloud. AWS Cloud is highly secure which makes it’s service secure as well. With AWS Identity and Access Management (IAM), you can grant unique credentials. And can manage permissions for every user within your AWS account
6. Compatible with Other Services
When you use a service on AWS cloud, you are meant to use that in association with many other services. Amazon Route 53 is designed to use other AWS services. You can map your domain to EC2 instances, S3 bucket, Load Balancer, and Amazon CloudFront, etc.
Amazon Route 53 Concepts
To understand the concept of Amazon Route 53 we need to learn about the Domain Registration, Domain Name System, and Health Check concepts. These are generic concepts but are the core of Amazon Route 53.
Domain Registration concept contains a series of components.
1. Domain Name
Domain names are human readable names, for example, journaldev.com. You can choose any name as per the domain name rules.
If the domain name has already been taken by someone else then you can choose by changing the TLD name. OR you can try choosing similar names.
2. top-level-Domain (TLD)
The top-level-domain is the last part of your domain name such as .com, .in, .be, and .org, etc. The TLD gives an idea to users that what they will find here.
With few restrictions and exceptions, you can choose any name as a top-level-domain. For example, if I choose .car as a TLD then it means the website content is related to cars.
The top-level-domain can be:
- Generic TLD – Generic top-level-domain as described in above section.
- Geographical TLD – Geographical area based top-level-domain such as country, city, etc.
3. Domain Registrar
Domain Registrars are the companies which are allowed or accredited by ICANN to register the domain names. ICANN (Internet Corporation for Assigned Names and Numbers) can accredit companies to process the registration of top-level-domains.
Amazon is a registrar for .com, .org, and .net domains.
4. Domain Registry
Typically a company that owns all rights to see the top-level-domains. A domain registry defines the rules to register the domains and it stores the data of the domain administrators.
5. Domain Reseller
Just like Amazon Route 53, a company or service that sells the domain for the registrar. Amazon also has an associate registrar Gandi. So, Amazon Route 53 is a domain reseller for both Amazon Registrar and the Gandi.
Domain Name System (DNS) Concepts
Domain name system is itself a big topic for the discussion but let’s explore a few of the very important concepts that you will see on AWS Cloud.
1. Domain Name System (DNS)
We have already discussed what is DNS? For your reference again:
“Domain Name System is a service which is globally distributed to translate the human-readable domain names (for example, www.journaldev.com) to the specific IP address (for example, 192.0.0.1). Domain names are easy to remember for a human instead of the IP address. The IP address is the actual location/address of a computer on the internet. It’s just like the phone book where names are mapped with the telephone number.
Domain Name Servers translates the domain name into an IP address and locate the computer where the end user will reach.”
2. DNS Query
DNS query is the request to domain name system (DNS) for the resource. When you type a domain name in your browser address bar then the browser sends a query to DNS server/resolver to resolve the domain name. The result of DNS typically contains the IP address.
3. DNS Resolver
When you enter a domain name in your browser’s address bar, the query to resolve the IP Address goes to DNS resolver first. DNS resolver is the intermediate server between the DNS server and your browser. DNS servers are often managed by the IPS(internet service provider).
4. IP Address
IP stands of the Internet Protocol. An IP address is a number that is assigned to a device on the internet. The device could be a computer, laptop, mobile or a server.
There are two versions of IP address:
- IPv4 – Internet protocol version 4 (IPv4), for example, 192.0.0.1.
- IPv6 – Internet protocol version 6(IPv6), for example, 1101:0cd4:45b1:0000:0000:bcdf:0002:5678
Amazon Route52 supports both IPv4 and IPv6.
5. Name Server
Name servers are the servers in Domain Name System (DNS) which actually helps to translate the domain name into the IP address.
6. record (DNS record)
A record tells that how you want to route the traffic to a domain or its subdomain. Typically, a record is an object in the hosted zone.
7. hosted zone
A hosted zone is a container of DNS record. A hosted zone has the same name as the corresponding domain. For example, a hosted zone might include the record of traffic routing for a web server. And it may contain a record of traffic routing for the email server.
Any valid name pre-appended to the domain name is called subdomain. For example, journaldev.com is a domain and blog.journaldev.com, shop.journaldev.com are the valid subdomains. You can create a record to route the traffic to the subdomain as well.
9. TTL (time-to-live)
The DNS resolver always does not send a query to the DNS server. DNS resolver has the cache and it usually returns the IP address from the cache itself. If you do update a record then you have to wait for the TTL after which the cache will expire.
Note: A longer TTL reduces the charges of the Amazon Route 53. As we discussed that AWS billing works on pay-as-you-go, if you do a query then you have to pay. A longer TTL reduces the number of queries going to the DNS server which intern reduce the usage cost.
Health Check Concepts
You can monitor your DNS failovers, the health check of the particular resource in your deployment through Amazon Route 53.
1. DNS failover
You can monitor the health of DNS by monitoring the DNS failures. This helps you to route the traffic from unhealthy resource to a healthy one.
An endpoint could be any resource such as a web server or an email server which you configure for the health check.
3. health check
This is an Amazon Route 53 component which allows you to:
- Monitor an endpoint to know the helath
- Alarm or notify you when endpoint is un-healthy
- Configure the DNS failover mechanism to route traffic to a healthy resource
This is all about the basic concepts and understanding of Amazon Route 53. In our next topics, we will do the setup of the basic functions of Amazon Route 53.