Terraform can use aws_route53_record resources to provide DNS records for your cluster.

In addition to the normal DNS variables, you will need to specify the hosted_zone_id parameter. You can find your own hosted zone ID in your AWS Route 53 console.

AWS Route53 Hosted Zone Id example

Route53 uses your normal Amazon Web Services provider credentials.

# Example setup for an AWS Route53
module "route53" {
  source = "./terraform/aws/route53/dns"
  control_count = "${var.control_count}"
  control_ips = "${module.control-nodes.ec2_ips}"
  domain = ""
  edge_count = "${var.edge_count}"
  edge_ips = "${module.edge-nodes.ec2_ips}"
  hosted_zone_id = "XXXXXXXXXXXX"
  short_name = "${var.short_name}"
  subdomain = ".dev"
  worker_count = "${var.worker_count}"
  worker_ips = "${module.worker-nodes.ec2_ips}"
  kubeworker_count = "${var.kubeworker_count}"
  kubeworker_ips = "${module.kubeworker-nodes.ec2_ips}"