mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
kubernetes: add multicluster support (#7266)
* kubernetes: add multicluster support Add multicluster support via Multi-Cluster Services API (MCS-API) via a new option `multiclusterZones` in the kubernetes plugin. When some multicluster zones are passed to the kubernetes plugin, it will start watching the ServiceImport objects and its associated EndpointSlices. Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr> * kubernetes: implement xfr support for multicluster zones Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr> --------- Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
This commit is contained in:
committed by
GitHub
parent
76b199f829
commit
5c71bd0b87
@@ -42,6 +42,7 @@ kubernetes [ZONES...] {
|
||||
noendpoints
|
||||
fallthrough [ZONES...]
|
||||
ignore empty_service
|
||||
multicluster [ZONES...]
|
||||
}
|
||||
```
|
||||
|
||||
@@ -101,6 +102,10 @@ kubernetes [ZONES...] {
|
||||
* `ignore empty_service` returns NXDOMAIN for services without any ready endpoint addresses (e.g., ready pods).
|
||||
This allows the querying pod to continue searching for the service in the search path.
|
||||
The search path could, for example, include another Kubernetes cluster.
|
||||
* `multicluster` defines the multicluster zones as defined by Multi-Cluster
|
||||
Services API (MCS-API). Specifying this option is generally paired with the
|
||||
installation of an MCS-API implementation and the ServiceImport and ServiceExport
|
||||
CRDs. The plugin MUST be authoritative for the zones listed here.
|
||||
|
||||
Enabling zone transfer is done by using the *transfer* plugin.
|
||||
|
||||
@@ -157,6 +162,14 @@ kubernetes cluster.local {
|
||||
}
|
||||
~~~
|
||||
|
||||
Configure multicluster
|
||||
|
||||
~~~ txt
|
||||
kubernetes cluster.local clusterset.local {
|
||||
multicluster clusterset.local
|
||||
}
|
||||
~~~
|
||||
|
||||
## stubDomains and upstreamNameservers
|
||||
|
||||
Here we use the *forward* plugin to implement a stubDomain that forwards `example.local` to the nameserver `10.100.0.10:53`.
|
||||
|
||||
Reference in New Issue
Block a user