Module route53
This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-awsrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-awsrepo.
namespace RecordTypes
Resources
- DelegationSet
- HealthCheck
- QueryLog
- Record
- ResolverEndpoint
- ResolverRule
- ResolverRuleAssociation
- Zone
- ZoneAssociation
Functions
Others
- DelegationSetArgs
- DelegationSetState
- GetDelegationSetArgs
- GetDelegationSetResult
- GetResolverRuleArgs
- GetResolverRuleResult
- GetResolverRulesArgs
- GetResolverRulesResult
- GetZoneArgs
- GetZoneResult
- HealthCheckArgs
- HealthCheckState
- QueryLogArgs
- QueryLogState
- RecordArgs
- RecordState
- RecordType
- ResolverEndpointArgs
- ResolverEndpointState
- ResolverRuleArgs
- ResolverRuleAssociationArgs
- ResolverRuleAssociationState
- ResolverRuleState
- ZoneArgs
- ZoneAssociationArgs
- ZoneAssociationState
- ZoneState
namespace RecordTypes
const A
const A: RecordType = "A";const AAAA
const AAAA: RecordType = "AAAA";const CAA
const CAA: RecordType = "CAA";const CNAME
const CNAME: RecordType = "CNAME";const MX
const MX: RecordType = "MX";const NAPTR
const NAPTR: RecordType = "NAPTR";const NS
const NS: RecordType = "NS";const PTR
const PTR: RecordType = "PTR";const SOA
const SOA: RecordType = "SOA";const SPF
const SPF: RecordType = "SPF";const SRV
const SRV: RecordType = "SRV";const TXT
const TXT: RecordType = "TXT";Resources
Resource DelegationSet
class DelegationSet extends CustomResourceProvides a Route53 Delegation Set resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const main = new aws.route53.DelegationSet("main", {
referenceName: "DynDNS",
});
const primary = new aws.route53.Zone("primary", {
delegationSetId: main.id,
});
const secondary = new aws.route53.Zone("secondary", {
delegationSetId: main.id,
});constructor
new DelegationSet(name: string, args?: DelegationSetArgs, opts?: pulumi.CustomResourceOptions)Create a DelegationSet resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DelegationSetState, opts?: pulumi.CustomResourceOptions): DelegationSetGet an existing DelegationSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DelegationSetReturns true if the given object is an instance of DelegationSet. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property nameServers
public nameServers: pulumi.Output<string[]>;A list of authoritative name servers for the hosted zone (effectively a list of NS records).
property referenceName
public referenceName: pulumi.Output<string | undefined>;This is a reference name used in Caller Reference (helpful for identifying single delegation set amongst others)
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource HealthCheck
class HealthCheck extends CustomResourceProvides a Route53 health check.
Example Usage
Connectivity and HTTP Status Code Check
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.route53.HealthCheck("example", {
failureThreshold: 5,
fqdn: "example.com",
port: 80,
requestInterval: 30,
resourcePath: "/",
tags: {
Name: "tf-test-health-check",
},
type: "HTTP",
});Connectivity and String Matching Check
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.route53.HealthCheck("example", {
failureThreshold: 5,
fqdn: "example.com",
port: 443,
requestInterval: 30,
resourcePath: "/",
searchString: "example",
type: "HTTPS_STR_MATCH",
});Aggregate Check
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const parent = new aws.route53.HealthCheck("parent", {
childHealthThreshold: 1,
childHealthchecks: [aws_route53_health_check_child.id],
tags: {
Name: "tf-test-calculated-health-check",
},
type: "CALCULATED",
});CloudWatch Alarm Check
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const foobar = new aws.cloudwatch.MetricAlarm("foobar", {
alarmDescription: "This metric monitors ec2 cpu utilization",
comparisonOperator: "GreaterThanOrEqualToThreshold",
evaluationPeriods: 2,
metricName: "CPUUtilization",
namespace: "AWS/EC2",
period: 120,
statistic: "Average",
threshold: 80,
});
const foo = new aws.route53.HealthCheck("foo", {
cloudwatchAlarmName: foobar.alarmName,
cloudwatchAlarmRegion: "us-west-2",
insufficientDataHealthStatus: "Healthy",
type: "CLOUDWATCH_METRIC",
});constructor
new HealthCheck(name: string, args: HealthCheckArgs, opts?: pulumi.CustomResourceOptions)Create a HealthCheck resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HealthCheckState, opts?: pulumi.CustomResourceOptions): HealthCheckGet an existing HealthCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is HealthCheckReturns true if the given object is an instance of HealthCheck. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property childHealthThreshold
public childHealthThreshold: pulumi.Output<number | undefined>;The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
property childHealthchecks
public childHealthchecks: pulumi.Output<string[] | undefined>;For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
property cloudwatchAlarmName
public cloudwatchAlarmName: pulumi.Output<string | undefined>;The name of the CloudWatch alarm.
property cloudwatchAlarmRegion
public cloudwatchAlarmRegion: pulumi.Output<string | undefined>;The CloudWatchRegion that the CloudWatch alarm was created in.
property enableSni
public enableSni: pulumi.Output<boolean>;A boolean value that indicates whether Route53 should send the fqdn to the endpoint when performing the health check. This defaults to AWS’ defaults: when the type is “HTTPS” enableSni defaults to true, when type is anything else enableSni defaults to false.
property failureThreshold
public failureThreshold: pulumi.Output<number | undefined>;The number of consecutive health checks that an endpoint must pass or fail.
property fqdn
public fqdn: pulumi.Output<string | undefined>;The fully qualified domain name of the endpoint to be checked.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property insufficientDataHealthStatus
public insufficientDataHealthStatus: pulumi.Output<string | undefined>;The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are Healthy , Unhealthy and LastKnownStatus.
property invertHealthcheck
public invertHealthcheck: pulumi.Output<boolean | undefined>;A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
property ipAddress
public ipAddress: pulumi.Output<string | undefined>;The IP address of the endpoint to be checked.
property measureLatency
public measureLatency: pulumi.Output<boolean | undefined>;A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
property port
public port: pulumi.Output<number | undefined>;The port of the endpoint to be checked.
property referenceName
public referenceName: pulumi.Output<string | undefined>;This is a reference name used in Caller Reference (helpful for identifying single healthCheck set amongst others)
property regions
public regions: pulumi.Output<string[] | undefined>;A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
property requestInterval
public requestInterval: pulumi.Output<number | undefined>;The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
property resourcePath
public resourcePath: pulumi.Output<string | undefined>;The path that you want Amazon Route 53 to request when performing health checks.
property searchString
public searchString: pulumi.Output<string | undefined>;String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with HTTP_STR_MATCH and HTTPS_STR_MATCH.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the health check.
property type
public type: pulumi.Output<string>;The protocol to use when performing health checks. Valid values are HTTP, HTTPS, HTTP_STR_MATCH, HTTPS_STR_MATCH, TCP, CALCULATED and CLOUDWATCH_METRIC.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource QueryLog
class QueryLog extends CustomResourceProvides a Route53 query logging configuration resource.
NOTE: There are restrictions on the configuration of query logging. Notably, the CloudWatch log group must be in the
us-east-1region, a permissive CloudWatch log resource policy must be in place, and the Route53 hosted zone must be public. See Configuring Logging for DNS Queries for additional details.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const us_east_1 = new aws.Provider("us-east-1", {
region: "us-east-1",
});
const exampleComZone = new aws.route53.Zone("example_com", {});
const awsRoute53ExampleCom = new aws.cloudwatch.LogGroup("aws_route53_example_com", {
retentionInDays: 30,
}, { provider: us_east_1 });
const route53_query_logging_policyPolicyDocument = pulumi.output(aws.iam.getPolicyDocument({
statements: [{
actions: [
"logs:CreateLogStream",
"logs:PutLogEvents",
],
principals: [{
identifiers: ["route53.amazonaws.com"],
type: "Service",
}],
resources: ["arn:aws:logs:*:*:log-group:/aws/route53/*"],
}],
}, { async: true }));
const route53_query_logging_policyLogResourcePolicy = new aws.cloudwatch.LogResourcePolicy("route53-query-logging-policy", {
policyDocument: route53_query_logging_policyPolicyDocument.json,
policyName: "route53-query-logging-policy",
}, { provider: us_east_1 });
const exampleComQueryLog = new aws.route53.QueryLog("example_com", {
cloudwatchLogGroupArn: awsRoute53ExampleCom.arn,
zoneId: exampleComZone.zoneId,
}, { dependsOn: [route53_query_logging_policyLogResourcePolicy] });constructor
new QueryLog(name: string, args: QueryLogArgs, opts?: pulumi.CustomResourceOptions)Create a QueryLog resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: QueryLogState, opts?: pulumi.CustomResourceOptions): QueryLogGet an existing QueryLog resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is QueryLogReturns true if the given object is an instance of QueryLog. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property cloudwatchLogGroupArn
public cloudwatchLogGroupArn: pulumi.Output<string>;CloudWatch log group ARN to send query logs.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zoneId
public zoneId: pulumi.Output<string>;Route53 hosted zone ID to enable query logs.
Resource Record
class Record extends CustomResourceProvides a Route53 record resource.
Example Usage
Simple routing policy
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const www = new aws.route53.Record("www", {
name: "www.example.com",
records: [aws_eip_lb.publicIp],
ttl: 300,
type: "A",
zoneId: aws_route53_zone_primary.zoneId,
});Weighted routing policy
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const www_dev = new aws.route53.Record("www-dev", {
name: "www",
records: ["dev.example.com"],
setIdentifier: "dev",
ttl: 5,
type: "CNAME",
weightedRoutingPolicies: [{
weight: 10,
}],
zoneId: aws_route53_zone_primary.zoneId,
});
const www_live = new aws.route53.Record("www-live", {
name: "www",
records: ["live.example.com"],
setIdentifier: "live",
ttl: 5,
type: "CNAME",
weightedRoutingPolicies: [{
weight: 90,
}],
zoneId: aws_route53_zone_primary.zoneId,
});Alias record
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const main = new aws.elb.LoadBalancer("main", {
availabilityZones: ["us-east-1c"],
listeners: [{
instancePort: 80,
instanceProtocol: "http",
lbPort: 80,
lbProtocol: "http",
}],
});
const www = new aws.route53.Record("www", {
aliases: [{
evaluateTargetHealth: true,
name: main.dnsName,
zoneId: main.zoneId,
}],
name: "example.com",
type: "A",
zoneId: aws_route53_zone_primary.zoneId,
});NS and SOA Record Management
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const exampleZone = new aws.route53.Zone("example", {});
const exampleRecord = new aws.route53.Record("example", {
allowOverwrite: true,
name: "test.example.com",
records: [
exampleZone.nameServers[0],
exampleZone.nameServers[1],
exampleZone.nameServers[2],
exampleZone.nameServers[3],
],
ttl: 30,
type: "NS",
zoneId: exampleZone.zoneId,
});constructor
new Record(name: string, args: RecordArgs, opts?: pulumi.CustomResourceOptions)Create a Record resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RecordState, opts?: pulumi.CustomResourceOptions): RecordGet an existing Record resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RecordReturns true if the given object is an instance of Record. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property aliases
public aliases: pulumi.Output<RecordAlias[] | undefined>;An alias block. Conflicts with ttl & records.
Alias record documented below.
property allowOverwrite
public allowOverwrite: pulumi.Output<boolean>;Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. false by default. This configuration is not recommended for most environments.
property failoverRoutingPolicies
public failoverRoutingPolicies: pulumi.Output<RecordFailoverRoutingPolicy[] | undefined>;A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
property fqdn
public fqdn: pulumi.Output<string>;FQDN built using the zone domain and name.
property geolocationRoutingPolicies
public geolocationRoutingPolicies: pulumi.Output<RecordGeolocationRoutingPolicy[] | undefined>;A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
property healthCheckId
public healthCheckId: pulumi.Output<string | undefined>;The health check the record should be associated with.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property latencyRoutingPolicies
public latencyRoutingPolicies: pulumi.Output<RecordLatencyRoutingPolicy[] | undefined>;A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
property multivalueAnswerRoutingPolicy
public multivalueAnswerRoutingPolicy: pulumi.Output<boolean | undefined>;Set to true to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
property name
public name: pulumi.Output<string>;DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.
property records
public records: pulumi.Output<string[] | undefined>;A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the configuration string (e.g. "first255characters\"\"morecharacters").
property setIdentifier
public setIdentifier: pulumi.Output<string | undefined>;Unique identifier to differentiate records with routing policies from one another. Required if using failover, geolocation, latency, or weighted routing policies documented below.
property ttl
public ttl: pulumi.Output<number | undefined>;The TTL of the record.
property type
public type: pulumi.Output<string>;PRIMARY or SECONDARY. A PRIMARY record will be served if its healthcheck is passing, otherwise the SECONDARY will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property weightedRoutingPolicies
public weightedRoutingPolicies: pulumi.Output<RecordWeightedRoutingPolicy[] | undefined>;A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
property zoneId
public zoneId: pulumi.Output<string>;Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See resource_elb.zone_id for example.
Resource ResolverEndpoint
class ResolverEndpoint extends CustomResourceProvides a Route 53 Resolver endpoint resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const foo = new aws.route53.ResolverEndpoint("foo", {
direction: "INBOUND",
ipAddresses: [
{
subnetId: aws_subnet_sn1.id,
},
{
ip: "10.0.64.4",
subnetId: aws_subnet_sn2.id,
},
],
securityGroupIds: [
aws_security_group_sg1.id,
aws_security_group_sg2.id,
],
tags: {
Environment: "Prod",
},
});constructor
new ResolverEndpoint(name: string, args: ResolverEndpointArgs, opts?: pulumi.CustomResourceOptions)Create a ResolverEndpoint resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ResolverEndpointState, opts?: pulumi.CustomResourceOptions): ResolverEndpointGet an existing ResolverEndpoint resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ResolverEndpointReturns true if the given object is an instance of ResolverEndpoint. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<string>;The ARN of the Route 53 Resolver endpoint.
property direction
public direction: pulumi.Output<string>;The direction of DNS queries to or from the Route 53 Resolver endpoint.
Valid values are INBOUND (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
or OUTBOUND (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
property hostVpcId
public hostVpcId: pulumi.Output<string>;The ID of the VPC that you want to create the resolver endpoint in.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property ipAddresses
public ipAddresses: pulumi.Output<ResolverEndpointIpAddress[]>;The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
property name
public name: pulumi.Output<string>;The friendly name of the Route 53 Resolver endpoint.
property securityGroupIds
public securityGroupIds: pulumi.Output<string[]>;The ID of one or more security groups that you want to use to control access to this VPC.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ResolverRule
class ResolverRule extends CustomResourceProvides a Route53 Resolver rule.
Example Usage
System rule
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const sys = new aws.route53.ResolverRule("sys", {
domainName: "subdomain.example.com",
ruleType: "SYSTEM",
});Forward rule
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const fwd = new aws.route53.ResolverRule("fwd", {
domainName: "example.com",
resolverEndpointId: aws_route53_resolver_endpoint_foo.id,
ruleType: "FORWARD",
tags: {
Environment: "Prod",
},
targetIps: [{
ip: "123.45.67.89",
}],
});constructor
new ResolverRule(name: string, args: ResolverRuleArgs, opts?: pulumi.CustomResourceOptions)Create a ResolverRule resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ResolverRuleState, opts?: pulumi.CustomResourceOptions): ResolverRuleGet an existing ResolverRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ResolverRuleReturns true if the given object is an instance of ResolverRule. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arn
public arn: pulumi.Output<string>;The ARN (Amazon Resource Name) for the resolver rule.
property domainName
public domainName: pulumi.Output<string>;DNS queries for this domain name are forwarded to the IP addresses that are specified using targetIp.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
property ownerId
public ownerId: pulumi.Output<string>;When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
property resolverEndpointId
public resolverEndpointId: pulumi.Output<string | undefined>;The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using targetIp.
This argument should only be specified for FORWARD type rules.
property ruleType
public ruleType: pulumi.Output<string>;The rule type. Valid values are FORWARD, SYSTEM and RECURSIVE.
property shareStatus
public shareStatus: pulumi.Output<string>;Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
Values are NOT_SHARED, SHARED_BY_ME or SHARED_WITH_ME
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A map of tags to assign to the resource.
property targetIps
public targetIps: pulumi.Output<ResolverRuleTargetIp[] | undefined>;Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
This argument should only be specified for FORWARD type rules.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ResolverRuleAssociation
class ResolverRuleAssociation extends CustomResourceProvides a Route53 Resolver rule association.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.route53.ResolverRuleAssociation("example", {
resolverRuleId: aws_route53_resolver_rule_sys.id,
vpcId: aws_vpc_foo.id,
});constructor
new ResolverRuleAssociation(name: string, args: ResolverRuleAssociationArgs, opts?: pulumi.CustomResourceOptions)Create a ResolverRuleAssociation resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ResolverRuleAssociationState, opts?: pulumi.CustomResourceOptions): ResolverRuleAssociationGet an existing ResolverRuleAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ResolverRuleAssociationReturns true if the given object is an instance of ResolverRuleAssociation. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;A name for the association that you’re creating between a resolver rule and a VPC.
property resolverRuleId
public resolverRuleId: pulumi.Output<string>;The ID of the resolver rule that you want to associate with the VPC.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vpcId
public vpcId: pulumi.Output<string>;The ID of the VPC that you want to associate the resolver rule with.
Resource Zone
class Zone extends CustomResourceManages a Route53 Hosted Zone.
Example Usage
Public Zone
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const primary = new aws.route53.Zone("primary", {});Public Subdomain Zone
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const main = new aws.route53.Zone("main", {});
const dev = new aws.route53.Zone("dev", {
tags: {
Environment: "dev",
},
});
const dev_ns = new aws.route53.Record("dev-ns", {
name: "dev.example.com",
records: [
dev.nameServers[0],
dev.nameServers[1],
dev.nameServers[2],
dev.nameServers[3],
],
ttl: 30,
type: "NS",
zoneId: main.zoneId,
});Private Zone
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const privateZone = new aws.route53.Zone("private", {
vpcs: [{
vpcId: aws_vpc_example.id,
}],
});constructor
new Zone(name: string, args?: ZoneArgs, opts?: pulumi.CustomResourceOptions)Create a Zone resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ZoneState, opts?: pulumi.CustomResourceOptions): ZoneGet an existing Zone resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ZoneReturns true if the given object is an instance of Zone. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property comment
public comment: pulumi.Output<string>;A comment for the hosted zone. Defaults to ‘Managed by Pulumi’.
property delegationSetId
public delegationSetId: pulumi.Output<string | undefined>;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.
property forceDestroy
public forceDestroy: pulumi.Output<boolean | undefined>;Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;This is the name of the hosted zone.
property nameServers
public nameServers: pulumi.Output<string[]>;A list of name servers in associated (or default) delegation set. Find more about delegation sets in AWS docs.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the zone.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vpcs
public vpcs: pulumi.Output<ZoneVpc[] | undefined>;Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the delegationSetId argument in this resource and any aws.route53.ZoneAssociation resource specifying the same zone ID. Detailed below.
property zoneId
public zoneId: pulumi.Output<string>;The Hosted Zone ID. This can be referenced by zone records.
Resource ZoneAssociation
class ZoneAssociation extends CustomResourceManages a Route53 Hosted Zone VPC association. VPC associations can only be made on private zones.
NOTE: Unless explicit association ordering is required (e.g. a separate cross-account association authorization), usage of this resource is not recommended. Use the
vpcconfiguration blocks available within theaws.route53.Zoneresource instead.NOTE: This provider provides both this standalone Zone VPC Association resource and exclusive VPC associations defined in-line in the
aws.route53.Zoneresource viavpcconfiguration blocks. At this time, you cannot use those in-line VPC associations in conjunction with this resource and the same zone ID otherwise it will cause a perpetual difference in plan output. You can optionally useignoreChangesin theaws.route53.Zoneresource to manage additional associations via this resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const primary = new aws.ec2.Vpc("primary", {
cidrBlock: "10.6.0.0/16",
enableDnsHostnames: true,
enableDnsSupport: true,
});
const secondaryVpc = new aws.ec2.Vpc("secondary", {
cidrBlock: "10.7.0.0/16",
enableDnsHostnames: true,
enableDnsSupport: true,
});
const example = new aws.route53.Zone("example", {
// NOTE: The aws_route53_zone vpc argument accepts multiple configuration
// blocks. The below usage of the single vpc configuration, the
// lifecycle configuration, and the aws_route53_zone_association
// resource is for illustrative purposes (e.g. for a separate
// cross-account authorization process, which is not shown here).
vpcs: [{
vpcId: primary.id,
}],
}, { ignoreChanges: ["vpcId", "vpcRegion", "vpcs"] });
const secondaryZoneAssociation = new aws.route53.ZoneAssociation("secondary", {
vpcId: secondaryVpc.id,
zoneId: example.zoneId,
});constructor
new ZoneAssociation(name: string, args: ZoneAssociationArgs, opts?: pulumi.CustomResourceOptions)Create a ZoneAssociation resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ZoneAssociationState, opts?: pulumi.CustomResourceOptions): ZoneAssociationGet an existing ZoneAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ZoneAssociationReturns true if the given object is an instance of ZoneAssociation. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vpcId
public vpcId: pulumi.Output<string>;The VPC to associate with the private hosted zone.
property vpcRegion
public vpcRegion: pulumi.Output<string>;The VPC’s region. Defaults to the region of the AWS provider.
property zoneId
public zoneId: pulumi.Output<string>;The private hosted zone to associate.
Functions
Function getDelegationSet
getDelegationSet(args: GetDelegationSetArgs, opts?: pulumi.InvokeOptions): Promise<GetDelegationSetResult>aws.route53.DelegationSet provides details about a specific Route 53 Delegation Set.
This data source allows to find a list of name servers associated with a specific delegation set.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const dset = pulumi.output(aws.route53.getDelegationSet({
id: "MQWGHCBFAKEID",
}, { async: true }));Function getResolverRule
getResolverRule(args?: GetResolverRuleArgs, opts?: pulumi.InvokeOptions): Promise<GetResolverRuleResult>aws.route53.ResolverRule provides details about a specific Route53 Resolver rule.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = pulumi.output(aws.route53.getResolverRule({
domainName: "subdomain.example.com",
ruleType: "SYSTEM",
}, { async: true }));Function getResolverRules
getResolverRules(args?: GetResolverRulesArgs, opts?: pulumi.InvokeOptions): Promise<GetResolverRulesResult>aws.route53.getResolverRules provides details about a set of Route53 Resolver rules.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = pulumi.output(aws.route53.getResolverRules({
tags: [{
Environment: "dev",
}],
}, { async: true }));Function getZone
getZone(args?: GetZoneArgs, opts?: pulumi.InvokeOptions): Promise<GetZoneResult>aws.route53.Zone provides details about a specific Route 53 Hosted Zone.
This data source allows to find a Hosted Zone ID given Hosted Zone name and certain search criteria.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const selected = pulumi.output(aws.route53.getZone({
name: "test.com.",
privateZone: true,
}, { async: true }));
const www = new aws.route53.Record("www", {
name: pulumi.interpolate`www.${selected.name!}`,
records: ["10.0.0.1"],
ttl: 300,
type: "A",
zoneId: selected.zoneId!,
});Others
interface DelegationSetArgs
interface DelegationSetArgsThe set of arguments for constructing a DelegationSet resource.
property referenceName
referenceName?: pulumi.Input<string>;This is a reference name used in Caller Reference (helpful for identifying single delegation set amongst others)
interface DelegationSetState
interface DelegationSetStateInput properties used for looking up and filtering DelegationSet resources.
property nameServers
nameServers?: pulumi.Input<pulumi.Input<string>[]>;A list of authoritative name servers for the hosted zone (effectively a list of NS records).
property referenceName
referenceName?: pulumi.Input<string>;This is a reference name used in Caller Reference (helpful for identifying single delegation set amongst others)
interface GetDelegationSetArgs
interface GetDelegationSetArgsA collection of arguments for invoking getDelegationSet.
property id
id: string;The Hosted Zone id of the desired delegation set.
interface GetDelegationSetResult
interface GetDelegationSetResultA collection of values returned by getDelegationSet.
property callerReference
callerReference: string;property id
id: string;property nameServers
nameServers: string[];interface GetResolverRuleArgs
interface GetResolverRuleArgsA collection of arguments for invoking getResolverRule.
property domainName
domainName?: undefined | string;The domain name the desired resolver rule forwards DNS queries for. Conflicts with resolverRuleId.
property name
name?: undefined | string;The friendly name of the desired resolver rule. Conflicts with resolverRuleId.
property resolverEndpointId
resolverEndpointId?: undefined | string;The ID of the outbound resolver endpoint of the desired resolver rule. Conflicts with resolverRuleId.
property resolverRuleId
resolverRuleId?: undefined | string;The ID of the desired resolver rule. Conflicts with domainName, name, resolverEndpointId and ruleType.
property ruleType
ruleType?: undefined | string;The rule type of the desired resolver rule. Valid values are FORWARD, SYSTEM and RECURSIVE. Conflicts with resolverRuleId.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the resolver rule.
interface GetResolverRuleResult
interface GetResolverRuleResultA collection of values returned by getResolverRule.
property arn
arn: string;The ARN (Amazon Resource Name) for the resolver rule.
property domainName
domainName: string;property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name: string;property ownerId
ownerId: string;When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
property resolverEndpointId
resolverEndpointId: string;property resolverRuleId
resolverRuleId: string;property ruleType
ruleType: string;property shareStatus
shareStatus: string;Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
Values are NOT_SHARED, SHARED_BY_ME or SHARED_WITH_ME
property tags
tags: {[key: string]: any};A map of tags assigned to the resolver rule.
interface GetResolverRulesArgs
interface GetResolverRulesArgsA collection of arguments for invoking getResolverRules.
property ownerId
ownerId?: undefined | string;When the desired resolver rules are shared with another AWS account, the account ID of the account that the rules are shared with.
property resolverEndpointId
resolverEndpointId?: undefined | string;The ID of the outbound resolver endpoint for the desired resolver rules.
property ruleType
ruleType?: undefined | string;The rule type of the desired resolver rules. Valid values are FORWARD, SYSTEM and RECURSIVE.
property shareStatus
shareStatus?: undefined | string;Whether the desired resolver rules are shared and, if so, whether the current account is sharing the rules with another account, or another account is sharing the rules with the current account.
Values are NOT_SHARED, SHARED_BY_ME or SHARED_WITH_ME
interface GetResolverRulesResult
interface GetResolverRulesResultA collection of values returned by getResolverRules.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ownerId
ownerId?: undefined | string;property resolverEndpointId
resolverEndpointId?: undefined | string;property resolverRuleIds
resolverRuleIds: string[];The IDs of the matched resolver rules.
property ruleType
ruleType?: undefined | string;property shareStatus
shareStatus?: undefined | string;interface GetZoneArgs
interface GetZoneArgsA collection of arguments for invoking getZone.
property name
name?: undefined | string;The Hosted Zone name of the desired Hosted Zone.
property privateZone
privateZone?: undefined | false | true;Used with name field to get a private Hosted Zone.
property resourceRecordSetCount
resourceRecordSetCount?: undefined | number;The number of Record Set in the Hosted Zone.
property tags
tags?: undefined | {[key: string]: any};Used with name field. A map of tags, each pair of which must exactly match a pair on the desired Hosted Zone.
property vpcId
vpcId?: undefined | string;Used with name field to get a private Hosted Zone associated with the vpcId (in this case, privateZone is not mandatory).
property zoneId
zoneId?: undefined | string;The Hosted Zone id of the desired Hosted Zone.
interface GetZoneResult
interface GetZoneResultA collection of values returned by getZone.
property callerReference
callerReference: string;Caller Reference of the Hosted Zone.
property comment
comment: string;The comment field of the Hosted Zone.
property id
id: string;The provider-assigned unique ID for this managed resource.
property linkedServiceDescription
linkedServiceDescription: string;The description provided by the service that created the Hosted Zone (e.g. arn:aws:servicediscovery:us-east-1:1234567890:namespace/ns-xxxxxxxxxxxxxxxx).
property linkedServicePrincipal
linkedServicePrincipal: string;The service that created the Hosted Zone (e.g. servicediscovery.amazonaws.com).
property name
name: string;property nameServers
nameServers: string[];The list of DNS name servers for the Hosted Zone.
property privateZone
privateZone?: undefined | false | true;property resourceRecordSetCount
resourceRecordSetCount: number;The number of Record Set in the Hosted Zone.
property tags
tags: {[key: string]: any};property vpcId
vpcId: string;property zoneId
zoneId: string;interface HealthCheckArgs
interface HealthCheckArgsThe set of arguments for constructing a HealthCheck resource.
property childHealthThreshold
childHealthThreshold?: pulumi.Input<number>;The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
property childHealthchecks
childHealthchecks?: pulumi.Input<pulumi.Input<string>[]>;For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
property cloudwatchAlarmName
cloudwatchAlarmName?: pulumi.Input<string>;The name of the CloudWatch alarm.
property cloudwatchAlarmRegion
cloudwatchAlarmRegion?: pulumi.Input<string>;The CloudWatchRegion that the CloudWatch alarm was created in.
property enableSni
enableSni?: pulumi.Input<boolean>;A boolean value that indicates whether Route53 should send the fqdn to the endpoint when performing the health check. This defaults to AWS’ defaults: when the type is “HTTPS” enableSni defaults to true, when type is anything else enableSni defaults to false.
property failureThreshold
failureThreshold?: pulumi.Input<number>;The number of consecutive health checks that an endpoint must pass or fail.
property fqdn
fqdn?: pulumi.Input<string>;The fully qualified domain name of the endpoint to be checked.
property insufficientDataHealthStatus
insufficientDataHealthStatus?: pulumi.Input<string>;The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are Healthy , Unhealthy and LastKnownStatus.
property invertHealthcheck
invertHealthcheck?: pulumi.Input<boolean>;A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
property ipAddress
ipAddress?: pulumi.Input<string>;The IP address of the endpoint to be checked.
property measureLatency
measureLatency?: pulumi.Input<boolean>;A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
property port
port?: pulumi.Input<number>;The port of the endpoint to be checked.
property referenceName
referenceName?: pulumi.Input<string>;This is a reference name used in Caller Reference (helpful for identifying single healthCheck set amongst others)
property regions
regions?: pulumi.Input<pulumi.Input<string>[]>;A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
property requestInterval
requestInterval?: pulumi.Input<number>;The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
property resourcePath
resourcePath?: pulumi.Input<string>;The path that you want Amazon Route 53 to request when performing health checks.
property searchString
searchString?: pulumi.Input<string>;String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with HTTP_STR_MATCH and HTTPS_STR_MATCH.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the health check.
property type
type: pulumi.Input<string>;The protocol to use when performing health checks. Valid values are HTTP, HTTPS, HTTP_STR_MATCH, HTTPS_STR_MATCH, TCP, CALCULATED and CLOUDWATCH_METRIC.
interface HealthCheckState
interface HealthCheckStateInput properties used for looking up and filtering HealthCheck resources.
property childHealthThreshold
childHealthThreshold?: pulumi.Input<number>;The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
property childHealthchecks
childHealthchecks?: pulumi.Input<pulumi.Input<string>[]>;For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
property cloudwatchAlarmName
cloudwatchAlarmName?: pulumi.Input<string>;The name of the CloudWatch alarm.
property cloudwatchAlarmRegion
cloudwatchAlarmRegion?: pulumi.Input<string>;The CloudWatchRegion that the CloudWatch alarm was created in.
property enableSni
enableSni?: pulumi.Input<boolean>;A boolean value that indicates whether Route53 should send the fqdn to the endpoint when performing the health check. This defaults to AWS’ defaults: when the type is “HTTPS” enableSni defaults to true, when type is anything else enableSni defaults to false.
property failureThreshold
failureThreshold?: pulumi.Input<number>;The number of consecutive health checks that an endpoint must pass or fail.
property fqdn
fqdn?: pulumi.Input<string>;The fully qualified domain name of the endpoint to be checked.
property insufficientDataHealthStatus
insufficientDataHealthStatus?: pulumi.Input<string>;The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are Healthy , Unhealthy and LastKnownStatus.
property invertHealthcheck
invertHealthcheck?: pulumi.Input<boolean>;A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
property ipAddress
ipAddress?: pulumi.Input<string>;The IP address of the endpoint to be checked.
property measureLatency
measureLatency?: pulumi.Input<boolean>;A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
property port
port?: pulumi.Input<number>;The port of the endpoint to be checked.
property referenceName
referenceName?: pulumi.Input<string>;This is a reference name used in Caller Reference (helpful for identifying single healthCheck set amongst others)
property regions
regions?: pulumi.Input<pulumi.Input<string>[]>;A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
property requestInterval
requestInterval?: pulumi.Input<number>;The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
property resourcePath
resourcePath?: pulumi.Input<string>;The path that you want Amazon Route 53 to request when performing health checks.
property searchString
searchString?: pulumi.Input<string>;String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with HTTP_STR_MATCH and HTTPS_STR_MATCH.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the health check.
property type
type?: pulumi.Input<string>;The protocol to use when performing health checks. Valid values are HTTP, HTTPS, HTTP_STR_MATCH, HTTPS_STR_MATCH, TCP, CALCULATED and CLOUDWATCH_METRIC.
interface QueryLogArgs
interface QueryLogArgsThe set of arguments for constructing a QueryLog resource.
property cloudwatchLogGroupArn
cloudwatchLogGroupArn: pulumi.Input<string>;CloudWatch log group ARN to send query logs.
property zoneId
zoneId: pulumi.Input<string>;Route53 hosted zone ID to enable query logs.
interface QueryLogState
interface QueryLogStateInput properties used for looking up and filtering QueryLog resources.
property cloudwatchLogGroupArn
cloudwatchLogGroupArn?: pulumi.Input<string>;CloudWatch log group ARN to send query logs.
property zoneId
zoneId?: pulumi.Input<string>;Route53 hosted zone ID to enable query logs.
interface RecordArgs
interface RecordArgsThe set of arguments for constructing a Record resource.
property aliases
aliases?: pulumi.Input<pulumi.Input<RecordAlias>[]>;An alias block. Conflicts with ttl & records.
Alias record documented below.
property allowOverwrite
allowOverwrite?: pulumi.Input<boolean>;Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. false by default. This configuration is not recommended for most environments.
property failoverRoutingPolicies
failoverRoutingPolicies?: pulumi.Input<pulumi.Input<RecordFailoverRoutingPolicy>[]>;A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
property geolocationRoutingPolicies
geolocationRoutingPolicies?: pulumi.Input<pulumi.Input<RecordGeolocationRoutingPolicy>[]>;A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
property healthCheckId
healthCheckId?: pulumi.Input<string>;The health check the record should be associated with.
property latencyRoutingPolicies
latencyRoutingPolicies?: pulumi.Input<pulumi.Input<RecordLatencyRoutingPolicy>[]>;A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
property multivalueAnswerRoutingPolicy
multivalueAnswerRoutingPolicy?: pulumi.Input<boolean>;Set to true to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
property name
name: pulumi.Input<string>;DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.
property records
records?: pulumi.Input<pulumi.Input<string>[]>;A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the configuration string (e.g. "first255characters\"\"morecharacters").
property setIdentifier
setIdentifier?: pulumi.Input<string>;Unique identifier to differentiate records with routing policies from one another. Required if using failover, geolocation, latency, or weighted routing policies documented below.
property ttl
ttl?: pulumi.Input<number>;The TTL of the record.
property type
type: pulumi.Input<string | RecordType>;PRIMARY or SECONDARY. A PRIMARY record will be served if its healthcheck is passing, otherwise the SECONDARY will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets
property weightedRoutingPolicies
weightedRoutingPolicies?: pulumi.Input<pulumi.Input<RecordWeightedRoutingPolicy>[]>;A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
property zoneId
zoneId: pulumi.Input<string>;Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See resource_elb.zone_id for example.
interface RecordState
interface RecordStateInput properties used for looking up and filtering Record resources.
property aliases
aliases?: pulumi.Input<pulumi.Input<RecordAlias>[]>;An alias block. Conflicts with ttl & records.
Alias record documented below.
property allowOverwrite
allowOverwrite?: pulumi.Input<boolean>;Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. false by default. This configuration is not recommended for most environments.
property failoverRoutingPolicies
failoverRoutingPolicies?: pulumi.Input<pulumi.Input<RecordFailoverRoutingPolicy>[]>;A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
property fqdn
fqdn?: pulumi.Input<string>;FQDN built using the zone domain and name.
property geolocationRoutingPolicies
geolocationRoutingPolicies?: pulumi.Input<pulumi.Input<RecordGeolocationRoutingPolicy>[]>;A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
property healthCheckId
healthCheckId?: pulumi.Input<string>;The health check the record should be associated with.
property latencyRoutingPolicies
latencyRoutingPolicies?: pulumi.Input<pulumi.Input<RecordLatencyRoutingPolicy>[]>;A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
property multivalueAnswerRoutingPolicy
multivalueAnswerRoutingPolicy?: pulumi.Input<boolean>;Set to true to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
property name
name?: pulumi.Input<string>;DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.
property records
records?: pulumi.Input<pulumi.Input<string>[]>;A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add \"\" inside the configuration string (e.g. "first255characters\"\"morecharacters").
property setIdentifier
setIdentifier?: pulumi.Input<string>;Unique identifier to differentiate records with routing policies from one another. Required if using failover, geolocation, latency, or weighted routing policies documented below.
property ttl
ttl?: pulumi.Input<number>;The TTL of the record.
property type
type?: pulumi.Input<string | RecordType>;PRIMARY or SECONDARY. A PRIMARY record will be served if its healthcheck is passing, otherwise the SECONDARY will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets
property weightedRoutingPolicies
weightedRoutingPolicies?: pulumi.Input<pulumi.Input<RecordWeightedRoutingPolicy>[]>;A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
property zoneId
zoneId?: pulumi.Input<string>;Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See resource_elb.zone_id for example.
type RecordType
type RecordType = "A" | "AAAA" | "CNAME" | "CAA" | "MX" | "NAPTR" | "NS" | "PTR" | "SOA" | "SPF" | "SRV" | "TXT";interface ResolverEndpointArgs
interface ResolverEndpointArgsThe set of arguments for constructing a ResolverEndpoint resource.
property direction
direction: pulumi.Input<string>;The direction of DNS queries to or from the Route 53 Resolver endpoint.
Valid values are INBOUND (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
or OUTBOUND (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
property ipAddresses
ipAddresses: pulumi.Input<pulumi.Input<ResolverEndpointIpAddress>[]>;The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
property name
name?: pulumi.Input<string>;The friendly name of the Route 53 Resolver endpoint.
property securityGroupIds
securityGroupIds: pulumi.Input<pulumi.Input<string>[]>;The ID of one or more security groups that you want to use to control access to this VPC.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
interface ResolverEndpointState
interface ResolverEndpointStateInput properties used for looking up and filtering ResolverEndpoint resources.
property arn
arn?: pulumi.Input<string>;The ARN of the Route 53 Resolver endpoint.
property direction
direction?: pulumi.Input<string>;The direction of DNS queries to or from the Route 53 Resolver endpoint.
Valid values are INBOUND (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
or OUTBOUND (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
property hostVpcId
hostVpcId?: pulumi.Input<string>;The ID of the VPC that you want to create the resolver endpoint in.
property ipAddresses
ipAddresses?: pulumi.Input<pulumi.Input<ResolverEndpointIpAddress>[]>;The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
property name
name?: pulumi.Input<string>;The friendly name of the Route 53 Resolver endpoint.
property securityGroupIds
securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;The ID of one or more security groups that you want to use to control access to this VPC.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
interface ResolverRuleArgs
interface ResolverRuleArgsThe set of arguments for constructing a ResolverRule resource.
property domainName
domainName: pulumi.Input<string>;DNS queries for this domain name are forwarded to the IP addresses that are specified using targetIp.
property name
name?: pulumi.Input<string>;A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
property resolverEndpointId
resolverEndpointId?: pulumi.Input<string>;The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using targetIp.
This argument should only be specified for FORWARD type rules.
property ruleType
ruleType: pulumi.Input<string>;The rule type. Valid values are FORWARD, SYSTEM and RECURSIVE.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
property targetIps
targetIps?: pulumi.Input<pulumi.Input<ResolverRuleTargetIp>[]>;Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
This argument should only be specified for FORWARD type rules.
interface ResolverRuleAssociationArgs
interface ResolverRuleAssociationArgsThe set of arguments for constructing a ResolverRuleAssociation resource.
property name
name?: pulumi.Input<string>;A name for the association that you’re creating between a resolver rule and a VPC.
property resolverRuleId
resolverRuleId: pulumi.Input<string>;The ID of the resolver rule that you want to associate with the VPC.
property vpcId
vpcId: pulumi.Input<string>;The ID of the VPC that you want to associate the resolver rule with.
interface ResolverRuleAssociationState
interface ResolverRuleAssociationStateInput properties used for looking up and filtering ResolverRuleAssociation resources.
property name
name?: pulumi.Input<string>;A name for the association that you’re creating between a resolver rule and a VPC.
property resolverRuleId
resolverRuleId?: pulumi.Input<string>;The ID of the resolver rule that you want to associate with the VPC.
property vpcId
vpcId?: pulumi.Input<string>;The ID of the VPC that you want to associate the resolver rule with.
interface ResolverRuleState
interface ResolverRuleStateInput properties used for looking up and filtering ResolverRule resources.
property arn
arn?: pulumi.Input<string>;The ARN (Amazon Resource Name) for the resolver rule.
property domainName
domainName?: pulumi.Input<string>;DNS queries for this domain name are forwarded to the IP addresses that are specified using targetIp.
property name
name?: pulumi.Input<string>;A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
property ownerId
ownerId?: pulumi.Input<string>;When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
property resolverEndpointId
resolverEndpointId?: pulumi.Input<string>;The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using targetIp.
This argument should only be specified for FORWARD type rules.
property ruleType
ruleType?: pulumi.Input<string>;The rule type. Valid values are FORWARD, SYSTEM and RECURSIVE.
property shareStatus
shareStatus?: pulumi.Input<string>;Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
Values are NOT_SHARED, SHARED_BY_ME or SHARED_WITH_ME
property tags
tags?: pulumi.Input<{[key: string]: any}>;A map of tags to assign to the resource.
property targetIps
targetIps?: pulumi.Input<pulumi.Input<ResolverRuleTargetIp>[]>;Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
This argument should only be specified for FORWARD type rules.
interface ZoneArgs
interface ZoneArgsThe set of arguments for constructing a Zone resource.
property comment
comment?: pulumi.Input<string>;A comment for the hosted zone. Defaults to ‘Managed by Pulumi’.
property delegationSetId
delegationSetId?: pulumi.Input<string>;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.
property forceDestroy
forceDestroy?: pulumi.Input<boolean>;Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
property name
name?: pulumi.Input<string>;This is the name of the hosted zone.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the zone.
property vpcs
vpcs?: pulumi.Input<pulumi.Input<ZoneVpc>[]>;Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the delegationSetId argument in this resource and any aws.route53.ZoneAssociation resource specifying the same zone ID. Detailed below.
interface ZoneAssociationArgs
interface ZoneAssociationArgsThe set of arguments for constructing a ZoneAssociation resource.
property vpcId
vpcId: pulumi.Input<string>;The VPC to associate with the private hosted zone.
property vpcRegion
vpcRegion?: pulumi.Input<string>;The VPC’s region. Defaults to the region of the AWS provider.
property zoneId
zoneId: pulumi.Input<string>;The private hosted zone to associate.
interface ZoneAssociationState
interface ZoneAssociationStateInput properties used for looking up and filtering ZoneAssociation resources.
property vpcId
vpcId?: pulumi.Input<string>;The VPC to associate with the private hosted zone.
property vpcRegion
vpcRegion?: pulumi.Input<string>;The VPC’s region. Defaults to the region of the AWS provider.
property zoneId
zoneId?: pulumi.Input<string>;The private hosted zone to associate.
interface ZoneState
interface ZoneStateInput properties used for looking up and filtering Zone resources.
property comment
comment?: pulumi.Input<string>;A comment for the hosted zone. Defaults to ‘Managed by Pulumi’.
property delegationSetId
delegationSetId?: pulumi.Input<string>;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.
property forceDestroy
forceDestroy?: pulumi.Input<boolean>;Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
property name
name?: pulumi.Input<string>;This is the name of the hosted zone.
property nameServers
nameServers?: pulumi.Input<pulumi.Input<string>[]>;A list of name servers in associated (or default) delegation set. Find more about delegation sets in AWS docs.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the zone.
property vpcs
vpcs?: pulumi.Input<pulumi.Input<ZoneVpc>[]>;Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the delegationSetId argument in this resource and any aws.route53.ZoneAssociation resource specifying the same zone ID. Detailed below.
property zoneId
zoneId?: pulumi.Input<string>;The Hosted Zone ID. This can be referenced by zone records.