With \fIcache\fR enabled, all records except zone transfers and metadata records will be cached for up to 3600s\. Caching is mostly useful in a scenario when fetching data from the backend (upstream, database, etc\.) is expensive\.
.
.P
This plugin can only be used once per Server Block\.
\fIdnssec\fR \- enable on\-the\-fly DNSSEC signing of served data\.
...
...
@@ -9,6 +9,9 @@
.SH "DESCRIPTION"
With \fIdnssec\fR any reply that doesn\'t (or can\'t) do DNSSEC will get signed on the fly\. Authenticated denial of existence is implemented with NSEC black lies\. Using ECDSA as an algorithm is preferred as this leads to smaller signatures (compared to RSA)\. NSEC3 is \fInot\fR supported\.
.
.P
This plugin can only be used once per Server Block\.
.
.SH "SYNTAX"
.
.nf
...
...
@@ -101,25 +104,4 @@ cluster\.local {
.fi
.
.IP "" 0
.
.SH "BUGS"
Multiple \fIdnssec\fR plugins inside one server stanza will silently overwrite earlier ones, here \fBexample\.org\fR will overwrite the one for \fBcluster\.local\fR\.
\fIforward\fR \- facilitates proxying DNS messages to upstream resolvers\.
...
...
@@ -15,6 +15,9 @@ When it detects an error a health check is performed\. This checks runs in a loo
.P
When \fIall\fR upstreams are down it assumes health checking as a mechanism has failed and will try to connect to a random upstream (which may or may not work)\.
.
.P
This plugin can only be used once per Server Block\.
.
.SH "SYNTAX"
In its most basic form, a simple forwarder uses this syntax:
.
...
...
@@ -54,7 +57,7 @@ forward FROM TO\.\.\. {
tls CERT KEY CA
tls_servername NAME
policy random|round_robin
health_checks DURATION
health_check DURATION
}
.
.fi
...
...
@@ -86,7 +89,7 @@ forward FROM TO\.\.\. {
\fBpolicy\fR specifies the policy to use for selecting upstream servers\. The default is \fBrandom\fR\.
.
.IP "\(bu" 4
\fBhealth_checks\fR, use a different \fBDURATION\fR for health checking, the default duration is 0\.5s\.
\fBhealth_check\fR, use a different \fBDURATION\fR for health checking, the default duration is 0\.5s\.
By enabling \fIhealth\fR any plugin that implements it will be queried for it\'s health\. The combined health is exported, by default, on port 8080/health \.
By enabling \fIhealth\fR any plugin that implements healt\.Healther interface \fIhttps://godoc\.org/github\.com/coredns/coredns/plugin/health#Healther\fR will be queried for it\'s health\. The combined health is exported, by default, on port 8080/health \.
.
.SH "SYNTAX"
.
...
...
@@ -40,6 +40,27 @@ Where \fBlameduck\fR will make the process unhealthy then \fIwait\fR for \fBDURA
.
.IP "" 0
.
.P
If you have multiple Server Block and need to export health for each of the plugins, you must run health endpoints on different ports:
.
.IP "" 4
.
.nf
com {
whoami
health :8080
}
net {
erratic
health :8081
}
.
.fi
.
.IP "" 0
.
.SH "PLUGINS"
Any plugin that implements the Healther interface will be used to report health\.
.
...
...
@@ -47,7 +68,7 @@ Any plugin that implements the Healther interface will be used to report health\
If monitoring is enabled (via the \fIprometheus\fR directive) then the following metric is exported:
.
.IP "\(bu" 4
\fBcoredns_health_request_duration_seconds{}\fR \- duration to process a /health query\. As this should be a local operation it should be fast\. A (large) increases in this duration indicates the CoreDNS process is having trouble keeping up\.
\fBcoredns_health_request_duration_seconds{}\fR \- duration to process a /health query\. As this should be a local operation it should be fast\. A (large) increases in this duration indicates the CoreDNS process is having trouble keeping up with its query load\.
.
.IP "" 0
.
...
...
@@ -74,7 +95,7 @@ Set a lameduck duration of 1 second:
\fIhosts\fR \- enables serving zone data from a \fB/etc/hosts\fR style file\.
...
...
@@ -9,6 +9,9 @@
.SH "DESCRIPTION"
The hosts plugin is useful for serving zones from a /etc/hosts file\. It serves from a preloaded file that exists on disk\. It checks the file for changes and updates the zones accordingly\. This plugin only supports A, AAAA, and PTR records\. The hosts plugin can be used with readily available hosts files that block access to advertising servers\.
.
.P
This plugin can only be used once per Server Block\.
\fIkubernetes\fR \- enables the reading zone data from a Kubernetes cluster\.
...
...
@@ -15,6 +15,9 @@ CoreDNS running the kubernetes plugin can be used as a replacement of kube\-dns
.P
stubDomains and upstreamNameservers \fIhttp://blog\.kubernetes\.io/2017/04/configuring\-private\-dns\-zones\-upstream\-nameservers\-kubernetes\.html\fR are implemented via the \fIproxy\fR plugin and kubernetes \fIupstream\fR\. See example below\.
.
.P
This plugin can only be used once per Server Block\.
@@ -58,6 +58,9 @@ The \fBresponse_rcode_count_total\fR has an extra label \fBrcode\fR which holds
.P
If monitoring is enabled, queries that do not enter the plugin chain are exported under the fake name "dropped" (without a closing dot \- this is never a valid domain name)\.
.
.P
This plugin can only be used once per Server Block\.
\fInsid\fR \- adds an identifier of this server to each reply\.
.
.SH "DESCRIPTION"
This plugin implements RFC 5001 and adds an EDNS0 OPT resource record to replies that uniquely identify the server\. This is useful in anycast setups to see which server was responsible for generating the reply and for debugging\.
This plugin implements RFC 5001 \fIhttps://tools\.ietf\.org/html/rfc5001\fR and adds an EDNS0 OPT resource record to replies that uniquely identify the server\. This is useful in anycast setups to see which server was responsible for generating the reply and for debugging\.
.
.P
This plugin can only be used once per Server Block\.
.
.SH "SYNTAX"
.
...
...
@@ -63,4 +66,6 @@ And now a client with NSID support will see an OPT record with the NSID option:
\fIpprof\fR \- publishes runtime profiling data at endpoints under \fB/debug/pprof\fR\.
...
...
@@ -12,6 +12,9 @@ You can visit \fB/debug/pprof\fR on your site for an index of the available endp
.P
For more information, please see Go\'s pprof documentation \fIhttps://golang\.org/pkg/net/http/pprof/\fR and read Profiling Go Programs \fIhttps://blog\.golang\.org/profiling\-go\-programs\fR\.
.
.P
This plugin can only be used once per Server Block\.
\fIroot\fR \- simply specifies the root of where to find (zone) files\.
...
...
@@ -9,6 +9,9 @@
.SH "DESCRIPTION"
The default root is the current working directory of CoreDNS\. The \fIroot\fR plugin allows you to change this\. A relative root path is relative to the current working directory\.
.
.P
This plugin can only be used once per Server Block\.