Skip to content
GitHubXDiscordRSS

RecordSet

Learn how to create, update, and manage AWS Route53 RecordSets using Alchemy Cloud Control.

The RecordSet resource lets you manage AWS Route53 RecordSets for DNS configurations and settings.

Create a basic A record for a domain.

import AWS from "alchemy/aws/control";
const basicRecordSet = await AWS.Route53.RecordSet("basicRecordSet", {
Name: "example.com",
Type: "A",
TTL: "300",
ResourceRecords: ["192.0.2.1"],
HostedZoneId: "Z1234567890" // Replace with your actual hosted zone ID
});

Create an alias record pointing to an AWS resource.

const aliasRecordSet = await AWS.Route53.RecordSet("aliasRecordSet", {
Name: "www.example.com",
Type: "A",
AliasTarget: {
DNSName: "dualstack.awselb-example-1234567890.us-east-1.elb.amazonaws.com",
HostedZoneId: "Z1234567890" // Replace with the actual hosted zone ID for the load balancer
},
HostedZoneId: "Z1234567890" // Replace with your actual hosted zone ID
});

Configure a GeoLocation record for specific regions.

const geoLocationRecordSet = await AWS.Route53.RecordSet("geoLocationRecordSet", {
Name: "example.com",
Type: "A",
TTL: "300",
ResourceRecords: ["203.0.113.0"],
GeoLocation: {
CountryCode: "US" // Targeting users in the United States
},
HostedZoneId: "Z1234567890" // Replace with your actual hosted zone ID
});

Set up a multi-value answer record for load balancing.

const multiValueRecordSet = await AWS.Route53.RecordSet("multiValueRecordSet", {
Name: "example.com",
Type: "A",
TTL: "60",
MultiValueAnswer: true,
ResourceRecords: ["192.0.2.1", "192.0.2.2", "192.0.2.3"],
HostedZoneId: "Z1234567890" // Replace with your actual hosted zone ID
});

Create a failover record for high availability.

const failoverRecordSet = await AWS.Route53.RecordSet("failoverRecordSet", {
Name: "example.com",
Type: "A",
TTL: "300",
ResourceRecords: ["198.51.100.1"],
HealthCheckId: "abc12345-6789-0123-4567-89abcdef0123", // Replace with your actual health check ID
Failover: "PRIMARY",
HostedZoneId: "Z1234567890" // Replace with your actual hosted zone ID
});