ToCopyableBuilder<AliasTarget.Builder,AliasTarget>
@Generated("software.amazon.awssdk:codegen") public class AliasTarget extends Object implements ToCopyableBuilder<AliasTarget.Builder,AliasTarget>
Alias resource record sets only: Information about the CloudFront distribution, Elastic Beanstalk environment, ELB load balancer, Amazon S3 bucket, or Amazon Route 53 resource record set that you're redirecting queries to. An Elastic Beanstalk environment must have a regionalized subdomain.
When creating resource record sets for a private hosted zone, note the following:
Resource record sets can't be created for CloudFront distributions in a private hosted zone.
Creating geolocation alias resource record sets or latency alias resource record sets in a private hosted zone is unsupported.
For information about creating failover resource record sets in a private hosted zone, see Configuring Failover in a Private Hosted Zone.
Modifier and Type | Class | Description |
---|---|---|
static interface |
AliasTarget.Builder |
Modifier and Type | Method | Description |
---|---|---|
static AliasTarget.Builder |
builder() |
|
String |
dnsName() |
Alias resource record sets only: The value that you specify depends on where you want to route queries:
|
boolean |
equals(Object obj) |
|
Boolean |
evaluateTargetHealth() |
Applies only to alias, failover alias, geolocation alias, latency alias, and weighted alias resource record
sets: When
EvaluateTargetHealth is true , an alias resource record set inherits the
health of the referenced AWS resource, such as an ELB load balancer, or the referenced resource record set. |
int |
hashCode() |
|
String |
hostedZoneId() |
Alias resource records sets only: The value used depends on where you want to route traffic:
|
static Class<? extends AliasTarget.Builder> |
serializableBuilderClass() |
|
AliasTarget.Builder |
toBuilder() |
Take this object and create a builder that contains all of the current property values of this object.
|
String |
toString() |
public String hostedZoneId()
Alias resource records sets only: The value used depends on where you want to route traffic:
Specify Z2FDTNDATAQYW2
.
Alias resource record sets for CloudFront can't be created in a private zone.
Specify the hosted zone ID for the region in which you created the environment. The environment must have a regionalized subdomain. For a list of regions and the corresponding hosted zone IDs, see AWS Elastic Beanstalk in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference.
Specify the value of the hosted zone ID for the load balancer. Use the following methods to get the hosted zone ID:
Elastic Load Balancing table in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference: Use the value in the "Amazon Route 53 Hosted Zone ID" column that corresponds with the region that you created your load balancer in.
AWS Management Console: Go to the Amazon EC2 page, click Load Balancers in the navigation pane, select the load balancer, and get the value of the Hosted zone field on the Description tab.
Elastic Load Balancing API: Use DescribeLoadBalancers
to get the value of
CanonicalHostedZoneNameId
. For more information, see the applicable guide:
Classic Load Balancer: DescribeLoadBalancers
Application Load Balancer: DescribeLoadBalancers
AWS CLI: Use
describe-load-balancers
to get the value of CanonicalHostedZoneNameID
.
Specify the hosted zone ID for the region that you created the bucket in. For more information about valid values, see the Amazon Simple Storage Service Website Endpoints table in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference.
Specify the hosted zone ID of your hosted zone. (An alias resource record set can't reference a resource record set in a different hosted zone.)
Specify Z2FDTNDATAQYW2
.
Alias resource record sets for CloudFront can't be created in a private zone.
Specify the hosted zone ID for the region in which you created the environment. The environment must have a regionalized subdomain. For a list of regions and the corresponding hosted zone IDs, see AWS Elastic Beanstalk in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference.
Specify the value of the hosted zone ID for the load balancer. Use the following methods to get the hosted zone ID:
Elastic Load Balancing table in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference: Use the value in the "Amazon Route 53 Hosted Zone ID" column that corresponds with the region that you created your load balancer in.
AWS Management Console: Go to the Amazon EC2 page, click Load Balancers in the navigation pane, select the load balancer, and get the value of the Hosted zone field on the Description tab.
Elastic Load Balancing API: Use DescribeLoadBalancers
to get the value of
CanonicalHostedZoneNameId
. For more information, see the applicable guide:
Classic Load Balancer: DescribeLoadBalancers
Application Load Balancer: DescribeLoadBalancers
AWS CLI: Use
describe-load-balancers
to get the value of CanonicalHostedZoneNameID
.
Specify the hosted zone ID for the region that you created the bucket in. For more information about valid values, see the Amazon Simple Storage Service Website Endpoints table in the "AWS Regions and Endpoints" chapter of the Amazon Web Services General Reference.
Specify the hosted zone ID of your hosted zone. (An alias resource record set can't reference a resource record set in a different hosted zone.)
public String dnsName()
Alias resource record sets only: The value that you specify depends on where you want to route queries:
Specify the domain name that CloudFront assigned when you created your distribution.
Your CloudFront distribution must include an alternate domain name that matches the name of the resource record set. For example, if the name of the resource record set is acme.example.com, your CloudFront distribution must include acme.example.com as one of the alternate domain names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront Developer Guide.
Specify the CNAME
attribute for the environment. (The environment must have a regionalized domain
name.) You can use the following methods to get the value of the CNAME attribute:
AWS Management Console: For information about how to get the value by using the console, see Using Custom Domains with AWS Elastic Beanstalk in the AWS Elastic Beanstalk Developer Guide.
Elastic Beanstalk API: Use the DescribeEnvironments
action to get the value of the
CNAME
attribute. For more information, see DescribeEnvironments in the AWS Elastic Beanstalk API Reference.
AWS CLI: Use the describe-environments
command to get the value of the CNAME
attribute. For more information, see describe-environments in the AWS Command Line Interface Reference.
Specify the DNS name that is associated with the load balancer. Get the DNS name by using the AWS Management Console, the ELB API, or the AWS CLI.
AWS Management Console: Go to the EC2 page, choose Load Balancers in the navigation pane, choose the load balancer, choose the Description tab, and get the value of the DNS name field. (If you're routing traffic to a Classic Load Balancer, get the value that begins with dualstack.)
Elastic Load Balancing API: Use DescribeLoadBalancers
to get the value of
DNSName
. For more information, see the applicable guide:
Classic Load Balancer: DescribeLoadBalancers
Application Load Balancer: DescribeLoadBalancers
AWS CLI: Use
describe-load-balancers
to get the value of DNSName
.
Specify the domain name of the Amazon S3 website endpoint in which you created the bucket, for example,
s3-website-us-east-2.amazonaws.com
. For more information about valid values, see the table Amazon Simple Storage Service (S3)
Website Endpoints in the Amazon Web Services General Reference. For more information about using S3
buckets for websites, see Getting Started with Amazon
Route 53 in the Amazon Route 53 Developer Guide.
Specify the value of the Name
element for a resource record set in the current hosted zone.
Specify the domain name that CloudFront assigned when you created your distribution.
Your CloudFront distribution must include an alternate domain name that matches the name of the resource record set. For example, if the name of the resource record set is acme.example.com, your CloudFront distribution must include acme.example.com as one of the alternate domain names. For more information, see Using Alternate Domain Names (CNAMEs) in the Amazon CloudFront Developer Guide.
Specify the CNAME
attribute for the environment. (The environment must have a regionalized
domain name.) You can use the following methods to get the value of the CNAME attribute:
AWS Management Console: For information about how to get the value by using the console, see Using Custom Domains with AWS Elastic Beanstalk in the AWS Elastic Beanstalk Developer Guide.
Elastic Beanstalk API: Use the DescribeEnvironments
action to get the value of the
CNAME
attribute. For more information, see DescribeEnvironments in the AWS Elastic Beanstalk API Reference.
AWS CLI: Use the describe-environments
command to get the value of the
CNAME
attribute. For more information, see describe-environments in the AWS Command Line Interface Reference.
Specify the DNS name that is associated with the load balancer. Get the DNS name by using the AWS Management Console, the ELB API, or the AWS CLI.
AWS Management Console: Go to the EC2 page, choose Load Balancers in the navigation pane, choose the load balancer, choose the Description tab, and get the value of the DNS name field. (If you're routing traffic to a Classic Load Balancer, get the value that begins with dualstack.)
Elastic Load Balancing API: Use DescribeLoadBalancers
to get the value of
DNSName
. For more information, see the applicable guide:
Classic Load Balancer: DescribeLoadBalancers
Application Load Balancer: DescribeLoadBalancers
AWS CLI: Use
describe-load-balancers
to get the value of DNSName
.
Specify the domain name of the Amazon S3 website endpoint in which you created the bucket, for example,
s3-website-us-east-2.amazonaws.com
. For more information about valid values, see the table
Amazon Simple Storage Service
(S3) Website Endpoints in the Amazon Web Services General Reference. For more information
about using S3 buckets for websites, see Getting Started with
Amazon Route 53 in the Amazon Route 53 Developer Guide.
Specify the value of the Name
element for a resource record set in the current hosted zone.
public Boolean evaluateTargetHealth()
Applies only to alias, failover alias, geolocation alias, latency alias, and weighted alias resource record
sets: When EvaluateTargetHealth
is true
, an alias resource record set inherits the
health of the referenced AWS resource, such as an ELB load balancer, or the referenced resource record set.
Note the following:
You can't set EvaluateTargetHealth
to true
when the alias target is a CloudFront
distribution.
If the AWS resource that you specify in AliasTarget
is a resource record set or a group of resource
record sets (for example, a group of weighted resource record sets), but it is not another alias resource record
set, we recommend that you associate a health check with all of the resource record sets in the alias target. For
more information, see What Happens When You Omit Health Checks? in the Amazon Route 53 Developer Guide.
If you specify an Elastic Beanstalk environment in HostedZoneId
and DNSName
, and if the
environment contains an ELB load balancer, Elastic Load Balancing routes queries only to the healthy Amazon EC2
instances that are registered with the load balancer. (An environment automatically contains an ELB load balancer
if it includes more than one EC2 instance.) If you set EvaluateTargetHealth
to true
and
either no EC2 instances are healthy or the load balancer itself is unhealthy, Amazon Route 53 routes queries to
other available resources that are healthy, if any.
If the environment contains a single EC2 instance, there are no special requirements.
If you specify an ELB load balancer in AliasTarget
, ELB routes queries only to the healthy
EC2 instances that are registered with the load balancer. If no EC2 instances are healthy or if the load balancer
itself is unhealthy, and if EvaluateTargetHealth
is true for the corresponding alias resource record
set, Amazon Route 53 routes queries to other resources. When you create a load balancer, you configure settings
for ELB health checks; they're not Amazon Route 53 health checks, but they perform a similar function. Do not
create Amazon Route 53 health checks for the EC2 instances that you register with an ELB load balancer.
For more information, see How Health Checks Work in More Complex Amazon Route 53 Configurations in the Amazon Route 53 Developer Guide.
We recommend that you set EvaluateTargetHealth
to true only when you have enough idle capacity to
handle the failure of one or more endpoints.
For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon Route 53 Developer Guide.
EvaluateTargetHealth
is true
, an alias resource record
set inherits the health of the referenced AWS resource, such as an ELB load balancer, or the referenced
resource record set.
Note the following:
You can't set EvaluateTargetHealth
to true
when the alias target is a
CloudFront distribution.
If the AWS resource that you specify in AliasTarget
is a resource record set or a group of
resource record sets (for example, a group of weighted resource record sets), but it is not another alias
resource record set, we recommend that you associate a health check with all of the resource record sets
in the alias target. For more information, see What Happens When You Omit Health Checks? in the Amazon Route 53 Developer Guide.
If you specify an Elastic Beanstalk environment in HostedZoneId
and DNSName
,
and if the environment contains an ELB load balancer, Elastic Load Balancing routes queries only to the
healthy Amazon EC2 instances that are registered with the load balancer. (An environment automatically
contains an ELB load balancer if it includes more than one EC2 instance.) If you set
EvaluateTargetHealth
to true
and either no EC2 instances are healthy or the
load balancer itself is unhealthy, Amazon Route 53 routes queries to other available resources that are
healthy, if any.
If the environment contains a single EC2 instance, there are no special requirements.
If you specify an ELB load balancer in AliasTarget
, ELB routes queries only to the
healthy EC2 instances that are registered with the load balancer. If no EC2 instances are healthy or if
the load balancer itself is unhealthy, and if EvaluateTargetHealth
is true for the
corresponding alias resource record set, Amazon Route 53 routes queries to other resources. When you
create a load balancer, you configure settings for ELB health checks; they're not Amazon Route 53 health
checks, but they perform a similar function. Do not create Amazon Route 53 health checks for the EC2
instances that you register with an ELB load balancer.
For more information, see How Health Checks Work in More Complex Amazon Route 53 Configurations in the Amazon Route 53 Developer Guide.
We recommend that you set EvaluateTargetHealth
to true only when you have enough idle
capacity to handle the failure of one or more endpoints.
For more information and examples, see Amazon Route 53 Health Checks and DNS Failover in the Amazon Route 53 Developer Guide.
public AliasTarget.Builder toBuilder()
ToCopyableBuilder
toBuilder
in interface ToCopyableBuilder<AliasTarget.Builder,AliasTarget>
public static AliasTarget.Builder builder()
public static Class<? extends AliasTarget.Builder> serializableBuilderClass()
Copyright © 2017 Amazon Web Services, Inc. All Rights Reserved.