AWS CloudFormation
User Guide (Version )

The AWS Documentation website is getting a new look!
Try it now and let us know what you think. Switch to the new look >>

You can return to the original look by selecting English in the language selector above.

AWS::Route53::HealthCheck

The AWS::Route53::HealthCheck resource is a Route 53 resource type that contains settings for a Route 53 health check.

For information about associating health checks with resource record sets, see HealthCheckId in ChangeResourceRecordSets.

ELB Load Balancers

If you're registering EC2 instances with an Elastic Load Balancing (ELB) load balancer, do not create Amazon Route 53 health checks for the EC2 instances. When you register an EC2 instance with a load balancer, you configure settings for an ELB health check, which performs a similar function to a Route 53 health check.

Private Hosted Zones

You can associate health checks with failover resource record sets in a private hosted zone. Note the following:

  • Route 53 health checkers are outside the VPC. To check the health of an endpoint within a VPC by IP address, you must assign a public IP address to the instance in the VPC.

  • You can configure a health checker to check the health of an external resource that the instance relies on, such as a database server.

  • You can create a CloudWatch metric, associate an alarm with the metric, and then create a health check that is based on the state of the alarm. For example, you might create a CloudWatch metric that checks the status of the Amazon EC2 StatusCheckFailed metric, add an alarm to the metric, and then create a health check that is based on the state of the alarm. For information about creating CloudWatch metrics and alarms by using the CloudWatch console, see the Amazon CloudWatch User Guide.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::Route53::HealthCheck", "Properties" : { "HealthCheckConfig" : HealthCheckConfig, "HealthCheckTags" : [ HealthCheckTag, ... ] } }

YAML

Type: AWS::Route53::HealthCheck Properties: HealthCheckConfig: HealthCheckConfig HealthCheckTags: - HealthCheckTag

Properties

HealthCheckConfig

A complex type that contains detailed information about one health check.

Required: Yes

Type: HealthCheckConfig

Update requires: No interruption

HealthCheckTags

The HealthCheckTags property describes key-value pairs that are associated with an AWS::Route53::HealthCheck resource.

Required: No

Type: List of HealthCheckTag

Update requires: No interruption

Return Values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the health check ID, such as e0a123b4-4dba-4650-935e-example.

For more information about using the Ref function, see Ref.

Examples

Create health check

The following example creates an Amazon Route 53 health check that sends HTTP requests to the specified endpoint.

JSON

"myHealthCheck": { "Type": "AWS::Route53::HealthCheck", "Properties": { "HealthCheckConfig": { "IPAddress": "192.0.2.44", "Port": "80", "Type": "HTTP", "ResourcePath": "/example/index.html", "FullyQualifiedDomainName": "example.com", "RequestInterval": "30", "FailureThreshold": "3" }, "HealthCheckTags" : [{ "Key": "SampleKey1", "Value": "SampleValue1" }, { "Key": "SampleKey2", "Value": "SampleValue2" }] } }

YAML

myHealthCheck: Type: "AWS::Route53::HealthCheck" Properties: HealthCheckConfig: IPAddress: "192.0.2.44" Port: "80" Type: "HTTP" ResourcePath: "/example/index.html" FullyQualifiedDomainName: "example.com" RequestInterval: "30" FailureThreshold: "3" HealthCheckTags: - Key: "SampleKey1" Value: "SampleValue1" - Key: "SampleKey2" Value: "SampleValue2"

See Also