Zum Hauptinhalt springen

Route 53

DNS Management

Amazon Route 53 manages DNS for amply-impact.org.

Hosted Zone

HostedZone:
Name: amply-impact.org
Type: Public

DNS Records

Root Domain

# Root domain → CloudFront
- Name: amply-impact.org
Type: A
AliasTarget:
DNSName: dxxxxx.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2 # CloudFront hosted zone

- Name: amply-impact.org
Type: AAAA
AliasTarget:
DNSName: dxxxxx.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2

WWW Subdomain

# www → same as root
- Name: www.amply-impact.org
Type: A
AliasTarget:
DNSName: dxxxxx.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2

API Subdomain

# API → ALB
- Name: api.amply-impact.org
Type: A
AliasTarget:
DNSName: amply-api-alb-xxxxx.eu-central-1.elb.amazonaws.com
HostedZoneId: Z215JYRZR1TBD5 # ALB hosted zone (eu-central-1)

Docs Subdomain

# Docs → Netlify
- Name: docs.amply-impact.org
Type: CNAME
TTL: 300
ResourceRecords:
- amply-docs.netlify.app

Widgets Subdomain

# Widgets → CloudFront
- Name: widgets.amply-impact.org
Type: A
AliasTarget:
DNSName: dyyyyy.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2

Email (SES)

# MX records (if using SES for receiving)
- Name: amply-impact.org
Type: MX
TTL: 300
ResourceRecords:
- "10 inbound-smtp.eu-central-1.amazonaws.com"

# SPF
- Name: amply-impact.org
Type: TXT
TTL: 300
ResourceRecords:
- "v=spf1 include:amazonses.com ~all"

# DKIM
- Name: xxxxx._domainkey.amply-impact.org
Type: CNAME
TTL: 300
ResourceRecords:
- xxxxx.dkim.amazonses.com

# DMARC
- Name: _dmarc.amply-impact.org
Type: TXT
TTL: 300
ResourceRecords:
- "v=DMARC1; p=quarantine; rua=mailto:dmarc@amply-impact.org"

Verification Records

# Domain verification (if needed)
- Name: _amazonses.amply-impact.org
Type: TXT
TTL: 300
ResourceRecords:
- "verification-token-from-aws"

# Google/other verifications
- Name: amply-impact.org
Type: TXT
TTL: 300
ResourceRecords:
- "google-site-verification=xxxxx"

Environment Subdomains

Staging

- Name: staging.amply-impact.org
Type: A
AliasTarget:
DNSName: staging-cloudfront.cloudfront.net

- Name: api.staging.amply-impact.org
Type: A
AliasTarget:
DNSName: staging-alb.eu-central-1.elb.amazonaws.com

Sandbox

- Name: sandbox.amply-impact.org
Type: A
AliasTarget:
DNSName: sandbox-cloudfront.cloudfront.net

- Name: api.sandbox.amply-impact.org
Type: A
AliasTarget:
DNSName: sandbox-alb.eu-central-1.elb.amazonaws.com

Health Checks

# API health check
HealthCheck:
Name: amply-api-health
Type: HTTPS
FullyQualifiedDomainName: api.amply-impact.org
Port: 443
ResourcePath: /health
RequestInterval: 30
FailureThreshold: 3

# CloudWatch alarm on failure
AlarmIdentifier:
Name: route53-api-unhealthy
Region: us-east-1

Traffic Policies

For future multi-region:

# Geolocation routing
TrafficPolicy:
Name: amply-geo-routing
Document:
AWSPolicyFormatVersion: "2015-10-01"
RecordType: A
Endpoints:
eu-endpoint:
Type: cloudfront-distribution
Value: dxxxxx.cloudfront.net
us-endpoint:
Type: cloudfront-distribution
Value: dyyyyy.cloudfront.net
Rules:
- GeolocationRule:
Locations:
- EU
RuleReference: eu-endpoint
- GeolocationRule:
Locations:
- NA
RuleReference: us-endpoint

Dev

# Dev dashboard → CloudFront
- Name: dashboard.dev.amply-impact.org
Type: A
AliasTarget:
DNSName: dlglnald08jfq.cloudfront.net
HostedZoneId: Z2FDTNDATAQYW2

# Dev API → ALB
- Name: api.dev.amply-impact.org
Type: A
AliasTarget:
DNSName: amply-dev-alb-1911956868.eu-central-1.elb.amazonaws.com
HostedZoneId: Z215JYRZR1TBD5

Complete Record Summary

RecordTypeTarget
amply-impact.orgACloudFront
www.amply-impact.orgACloudFront
api.amply-impact.orgAALB
docs.amply-impact.orgCNAMENetlify
widgets.amply-impact.orgACloudFront
api.dev.amply-impact.orgAALB (dev)
dashboard.dev.amply-impact.orgACloudFront (dev)
staging.amply-impact.orgACloudFront (staging)
api.staging.amply-impact.orgAALB (staging)
sandbox.amply-impact.orgACloudFront (sandbox)
api.sandbox.amply-impact.orgAALB (sandbox)

Cost

  • Hosted zone: $0.50/month
  • Queries: $0.40 per million
  • Health checks: $0.50/month each

Estimated: ~$2/month


Related: