k3s/pkg/kubemark
Kubernetes Submit Queue 3bc575c91f Merge pull request #33550 from rtreffer/kubelet-allow-multiple-dns-server
Automatic merge from submit-queue

Allow multipe DNS servers as comma-seperated argument for kubelet --dns

This PR explores how kubectls "--dns" could be extended to specify multiple DNS servers for in-cluster PODs. Testing on the local libvirt-coreos cluster shows that multiple DNS server are injected without issues.

Specifying multiple DNS servers increases resilience against
- Packet drops
- Single server failure

I am debugging services that do 50+ DNS requests for a single incoming interactive request, thus highly increase the chance of a slowdown (+5s) due to a single packet drop. Switching to two DNS servers will reduce the impact of the issues (roughly +1s on glibc, 0s on musl, error-rate goes down to error-rate^2).

Note that there is no need to change any runtime related code as far as I know. In the case of "default" dns the /etc/resolv.conf is parsed and multiple DNS server are send to the backend anyway. This only adds the same capability for the clusterFirst case.

I've heard from @thockin that multiple DNS entries are somehow considered. I've no idea what was considered, though. This is what I would like to see for our production use, though.

```release-note
NONE
```
2017-02-15 12:45:32 -08:00
..
BUILD Updated NodeRef to clientv1.ObjectReference. 2017-02-07 06:27:06 +08:00
OWNERS Added OWNERS to kubemark subdirectories 2017-01-25 14:37:57 +01:00
hollow_kubelet.go Merge pull request #33550 from rtreffer/kubelet-allow-multiple-dns-server 2017-02-15 12:45:32 -08:00
hollow_proxy.go Updated NodeRef to clientv1.ObjectReference. 2017-02-07 06:27:06 +08:00