CloudWiki
Resource

Route 53

Amazon Web Services
Network
Amazon Route 53 is a scalable and highly available Domain Name System (DNS) service used for routing end users to internet applications by translating domain names into their IP addresses.
Terraform Name
terraform
aws_route53_zone
Route 53
attributes:

  • name - (Required) This is the name of the hosted zone.
  • comment - (Optional) A comment for the hosted zone. Defaults to 'Managed by Terraform'.
  • delegation_set_id - (Optional) The ID of the reusable delegation set whose NS records you want to assign to the hosted zone. Conflicts with vpc as delegation sets can only be used for public zones.
  • force_destroy - (Optional) Whether to destroy all records (possibly managed outside of Terraform) in the zone when destroying the zone.
  • tags - (Optional) A map of tags to assign to the zone. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
  • vpc - (Optional) Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the delegation_set_id argument in this resource and any aws_route53_zone_association resource specifying the same zone ID. Detailed below.

vpc Argument Reference

  • vpc_id - (Required) ID of the VPC to associate.
  • vpc_region - (Optional) Region of the VPC to associate. Defaults to AWS provider region.

Associating resources with a
Route 53
Resources do not "belong" to a
Route 53
Rather, one or more Security Groups are associated to a resource.
Create
Route 53
via Terraform:
The following HCL creates a public zone
Syntax:

resource "aws_route53_zone" "primary" {
 name = "example.com"
}

Create
Route 53
via CLI:
Parameters:

create-hosted-zone
--name <value>
[--vpc <value>]
--caller-reference <value>
[--hosted-zone-config <value>]
[--delegation-set-id <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Example:

aws route53 create-hosted-zone --name example.com --caller-reference 2014-04-01-18:47 --hosted-zone-config Comment="command-line version"

aws cost
Costs
The cost of using Route 53 depends on the number of hosted zones, the number of queries and the amount of traffic that the DNS service handles. Basic usage of Route 53 starts at $0.50 per million queries, and the price decreases as the volume of queries increases.
Direct Cost

HostedZone

DNS-Queries

Indirect Cost
No items found.
Best Practices for
Route 53

Categorized by Availability, Security & Compliance and Cost

Low
Access allowed from VPN
No items found.
Low
Auto Scaling Group not in use
No items found.
Medium
Connections towards DynamoDB should be via VPC endpoints
No items found.
Medium
Container in CrashLoopBackOff state
No items found.
Low
EC2 with GPU capabilities
No items found.
Medium
EC2 with high privileged policies
No items found.
Medium
ECS cluster delete alarm
No items found.
Critical
ECS task with Admin access (*:*)
Medium
ECS task with high privileged policies
No items found.
Critical
EKS cluster delete alarm
No items found.
Medium
ElastiCache cluster delete alarm
No items found.
Medium
Ensure Container liveness probe is configured
No items found.
Medium
Ensure ECS task definition has memory limit
No items found.
Critical
Ensure EMR cluster master nodes are not publicly accessible
No items found.
More from
Amazon Web Services