2

My goal is to be able to add/drop subdomains for a multi-tenant app via Route53: tenant.example.com. Account provisioning should place the new tenant on a hosting node and then add the newly onboarded tenant subdomain to Route53. The parent DNS is currently handled by a 3rd party (dnsmadeeasy). Currently DNS provider has something like this:

example.com -> A -> <someIP>
example.com -> MX -> <mailhost>
mail.example.com -> CNAME ->  <mailhost>
www.example.com -> CNAME -> example.com
example.com -> NS -> <several provider name servers>

I'm also pretty sure the DNS parent provider (dnsmadeeasy) has a SOA record too which is implicit (not shown in management UI). So I did the following:

  • I added a wildcard hosted zone in Route53: *.example.com. This has 5 records right now, 4 NS records with various name servers and a SOA record
  • I added the Route53 NS records to the parent DNS provider (dnsmadeeasy)

    *.example.com -> NS -> <Route53 name server for hostzone above>

My thinking was that now I can start adding A records in the Route53 zone for each tenant:

tenant1.example.com -> A -> <tenant1 hosting IP>
tenant2.example.com -> A -> <tenant1 hosting IP>
...

But trying to add A records in Route53 results in tenant1.\052.example.com which is not what I want. And I'm not even sure it will work.

My question is whether this is a correct way to go ahead or I'm of the wrong path.

ewwhite
  • 197,159
  • 92
  • 443
  • 809
Remus Rusanu
  • 8,283
  • 1
  • 21
  • 23

1 Answers1

4

In order to do this, you will need an NS record on the zone hosted at DnsMadeEasy for each subdomain. This action is called "delegating a subdomain" to an external DNS server. Here's the DNS Made Easy guide for that.

For instance, you would need an NS record in the parent zone for: tenant1.example.com, which points to the four namserver addresses assigned to you when you create a tenant1.example.com hosted zone in Amazon Route 53.

Create your hosted subdomains in Amazon Route 53:

enter image description here

Then make sure DNS Made Easy has an entry like this for each subdomain:

enter image description here

ewwhite
  • 197,159
  • 92
  • 443
  • 809
  • Thanks, but that is exactly what I'm trying to avoid (going through dnsmadeasy API for each account provisioning). Would adding a 4 part name solve this, eg. `tenant1.accounts.example.com` and delegate the entire `accounts.example.com` to Route53 work? – Remus Rusanu Dec 07 '12 at 13:48
  • Yep. Delegate an entire subdomain, then add the sub-subdomains via Amazon's API/console. Or, could you just change the entire primary zone to Route 53? – ewwhite Dec 07 '12 at 13:50
  • I can change the entire primary to Route53, agree. I guess I was just trying to go the lazy route... – Remus Rusanu Dec 07 '12 at 13:52