From ac78c31bcc3bd435f199af3c7fb3365fae130858 Mon Sep 17 00:00:00 2001 From: John Belamaric Date: Mon, 5 Mar 2018 11:28:19 -0500 Subject: [PATCH 1/2] Update CoreDNS docs for beta --- docs/tasks/administer-cluster/coredns.md | 27 ++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/docs/tasks/administer-cluster/coredns.md b/docs/tasks/administer-cluster/coredns.md index ca456104aabda..5c96ca09ba38c 100644 --- a/docs/tasks/administer-cluster/coredns.md +++ b/docs/tasks/administer-cluster/coredns.md @@ -1,11 +1,11 @@ --- -approvers: +reviewers: - johnbelamaric title: Using CoreDNS for Service Discovery min-kubernetes-server-version: v1.9 --- -{% include feature-state-alpha.md %} +{% include feature-state-beta.md %} {% capture overview %} This page describes how to enable CoreDNS instead of kube-dns for service @@ -20,8 +20,9 @@ discovery. ## Installing CoreDNS with kubeadm -In Kubernetes 1.9, [CoreDNS](https://coredns.io) is available as an alpha feature and -may be installed by setting the `CoreDNS` feature gate to `true` during `kubeadm init`: +In Kubernetes 1.9, [CoreDNS](https://coredns.io) is available as an alpha feature, and +in Kubernetes 1.10 it is available as a beta feature. In either case, you may install +it during cluster creation by setting the `CoreDNS` feature gate to `true` during `kubeadm init`: ``` kubeadm init --feature-gates=CoreDNS=true @@ -29,6 +30,24 @@ kubeadm init --feature-gates=CoreDNS=true This installs CoreDNS instead of kube-dns. +## Upgrading an Existing Cluster with kubeadm + +In Kuberentes 1.10, you can also move to CoreDNS when you use `kubeadm` to upgrade +a cluster that is using `kube-dns`. In this case, `kubeadm` will generate the CoreDNS configuration +("Corefile") based upon the `kube-dns` ConfigMap, preserving configurations for federation, +stub domains, and upstream name server. + +Note that if you are running CoreDNS already in your cluster, this conversion is not possible, +as your Corefile may contain other customizations which should not be overwritten. In that +case, it is recommended that you update your Corefile according to the changes you can find +in the [recommended CoreDNS Kubernetes manifest](https://github.com/coredns/deployment/tree/master/kubernetes). + +In particular, changes that may be important are: + +* Updating the image to `coredns/coredns:1.0.6` +* Changing `upstream /etc/resolv.conf` to just `upstream`, which changes external service CNAME lookups + to go through CoreDNS rather than directly through and external name server. + {% endcapture %} {% capture whatsnext %} From 008a5e6c1d8b9ecba8aeebce0afcd33e248c6d7d Mon Sep 17 00:00:00 2001 From: John Belamaric Date: Mon, 5 Mar 2018 12:04:01 -0500 Subject: [PATCH 2/2] Review comments --- docs/tasks/administer-cluster/coredns.md | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/docs/tasks/administer-cluster/coredns.md b/docs/tasks/administer-cluster/coredns.md index 5c96ca09ba38c..c3415c16711fd 100644 --- a/docs/tasks/administer-cluster/coredns.md +++ b/docs/tasks/administer-cluster/coredns.md @@ -1,5 +1,5 @@ --- -reviewers: +approvers: - johnbelamaric title: Using CoreDNS for Service Discovery min-kubernetes-server-version: v1.9 @@ -32,21 +32,18 @@ This installs CoreDNS instead of kube-dns. ## Upgrading an Existing Cluster with kubeadm -In Kuberentes 1.10, you can also move to CoreDNS when you use `kubeadm` to upgrade +In Kubernetes 1.10, you can also move to CoreDNS when you use `kubeadm` to upgrade a cluster that is using `kube-dns`. In this case, `kubeadm` will generate the CoreDNS configuration ("Corefile") based upon the `kube-dns` ConfigMap, preserving configurations for federation, stub domains, and upstream name server. -Note that if you are running CoreDNS already in your cluster, this conversion is not possible, -as your Corefile may contain other customizations which should not be overwritten. In that -case, it is recommended that you update your Corefile according to the changes you can find -in the [recommended CoreDNS Kubernetes manifest](https://github.com/coredns/deployment/tree/master/kubernetes). +Note that if you are running CoreDNS in your cluster already, prior to upgrade, your existing Corefile will be +**overwritten** by the one created during upgrade. **You should save your existing ConfigMap +if you have customized it.** You may re-apply your customizations after the new ConfigMap is +up and running. -In particular, changes that may be important are: - -* Updating the image to `coredns/coredns:1.0.6` -* Changing `upstream /etc/resolv.conf` to just `upstream`, which changes external service CNAME lookups - to go through CoreDNS rather than directly through and external name server. +This process will be modified for the GA release of this feature, such that an existing +Corefile will not be overwritten. {% endcapture %}