1
0
mirror of https://github.com/github/octodns.git synced 2024-05-11 05:55:00 +00:00

Add healthcheck option 'measure_latency' for Route53 provider

Route53 allows to monitor latency information on the dashboard
and using CloudWatch. While that is a nice to have function,
it is not necessary for a DNS failover scenario and increases
Route 53 costs.
To maintain backward compatibility, the default for this option
when ommited is true.
This commit is contained in:
Jörg Runkel
2019-02-11 20:02:03 +01:00
parent 7bf4914a41
commit 1794f5ccd6
5 changed files with 72 additions and 10 deletions

View File

@@ -72,8 +72,36 @@ So the example is saying:
- Europe: gets an "A" record of 111.111.111.4
- Everyone else gets an "A" record of 111.111.111.5
### Health Checks
Octodns will automatically set up a monitor and check for **https://<ip_address>/_dns** and check for a 200 response.
Octodns will automatically set up monitors for each IP and check for a 200 response for **https://<ip_address>/_dns**.
These checks can be configured by adding a `healthcheck` configuration to the record:
```yaml
---
test:
geo:
AS:
- 1.2.3.4
EU:
- 2.3.4.5
octodns:
healthcheck:
host: my-host-name
measure_latency: 0
path: /dns-health-check
port: 443
protocol: HTTPS
```
| Key | Description | Default |
|--|--|--|
| host | FQDN for host header and SNI | - |
| path | path to check | _dns |
| port | port to check | 443 |
| protocol | HTTP/HTTPS | HTTPS |
| measure_latency | Route53 only: Show latency in AWS console | true |
## Config (`YamlProvider`)
@@ -83,7 +111,7 @@ OctoDNS records and `YamlProvider`'s schema is essentially a 1:1 match. Properti
Each top-level key in the yaml file is a record name. Two common special cases are the root record `''`, and a wildcard `'*'`.
```
```yaml
---
'':
type: A
@@ -111,7 +139,7 @@ The above config lays out 4 records, `A`s for `example.com.`, `www.example.com.`
In the above example each name had a single record, but there are cases where a name will need to have multiple records associated with it. This can be accomplished by using a list.
```
```yaml
---
'':
- type: A