Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Federation] Setting up CoreDNS as DNS provider for Cluster Federation #2810

Merged
merged 1 commit into from
Apr 17, 2017

Conversation

shashidharatd
Copy link

@shashidharatd shashidharatd commented Mar 14, 2017

Addresses and Fixes: #2197

cc @madhusudancs @kubernetes/sig-federation-misc


This change is Reviewable

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Mar 14, 2017
@shashidharatd shashidharatd changed the title Setting up CoreDNS as DNS provider for Cluster Federation [Federation] Setting up CoreDNS as DNS provider for Cluster Federation Mar 14, 2017
@madhusudancs madhusudancs changed the base branch from master to release-1.6 March 20, 2017 16:17
@chenopis chenopis added this to the 1.6 milestone Mar 22, 2017
@chenopis chenopis requested a review from csbell March 22, 2017 21:16
@chenopis chenopis added Needs Tech Review do-not-merge DEPRECATED. Indicates that a PR should not merge. Label can only be manually applied/removed. labels Mar 22, 2017
@madhusudancs
Copy link
Contributor

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 14 unresolved discussions.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 28 at r1 (raw file):

To deploy CoreDNS we shall make use of helm charts. CoreDNS will be
deployed with Etcd as the backend and should be pre-installed. Etcd

etcd is usually spelled with a lower case e. Also, please link to their website - https://coreos.com/etcd

Same comments for all other occurrences.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 33 at r1 (raw file):

```shell
$ helm install --name etcd-operator --namespace ns stable/etcd-operator

Can we use a better, more descriptive namespace?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 41 at r1 (raw file):

After deployment succeeds, Etcd can be accessed with
"http://etcd-cluster:2379" endpoint within the host cluster.

Remove the quotes and just linkify the URL.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 44 at r1 (raw file):

CoreDNS default configuration should be customized to suit federation
and shown below is the Values.yaml, which overrides the default

Link to the default Values.yaml file?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r1 (raw file):

 - `isClusterService` specifies whether CoreDNS should be deployed as
cluster-service, which is default. You need to set it to false, so that
CoreDNS is deployed as kubernetes application service.

What's the difference between the two types? I am not sure I know the distinction.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 70 at r1 (raw file):

cluster.
 - Disable `middleware.kubernetes`, which is enabled by default by
setting `middleware.kubernetes.enabled` to false.

Do CoreDNS users understand this configuration? I don't know much about CoreDNS and I can't say whether I want this or not.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 72 at r1 (raw file):

setting `middleware.kubernetes.enabled` to false.
 - Enable `middleware.etcd` by setting `middleware.etcd.enabled` to
true.

Same as above.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 89 at r1 (raw file):

Federation control plane can be deployed using `kubefed init`. CoreDNS
can be chosen as DNS provider by specifying two additional parameters.

It is probably worth mentioning that middleware.etcd.zones and --dns-zone-name flag to kubefed init should match.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 98 at r1 (raw file):

```shell
[Global]
etcd-endpoints = http://etcd-cluster.ns:2379

I would make the host name part consistent. I understand why you are doing this. But I think it is worth making it consistent everywhere. Using etcd-cluster.ns everywhere isn't harmful right?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 99 at r1 (raw file):

[Global]
etcd-endpoints = http://etcd-cluster.ns:2379
zones = example.com

Trailing dot for consistency as we did here - #2899 (review)


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 103 at r1 (raw file):

 - `etcd-endpoints` is the endpoint to access Etcd.
 - `zones` is the federation domain for which CoreDNS is authoritative.

and say "which is same as --dns-zone-name"


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 105 at r1 (raw file):

 - `zones` is the federation domain for which CoreDNS is authoritative.

## Setup CoreDNS server in nameserver resolv chain

resolv.conf chain?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 109 at r1 (raw file):

Once the federation control plane is deployed and federated clusters
are joined to the federation, you need to add the CoreDNS server to
pod's nameserver resolv chain in all the federated clusters as this

resolv.conf chain?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 115 at r1 (raw file):

```shell
        - --server=/example.com/<CoreDNS endpoint>

Is it not possible to use the kube-dns ConfigMap for this yet?


Comments from Reviewable

@shashidharatd
Copy link
Author

@madhusudancs, Handled review comments. PTAL


Review status: 1 of 2 files reviewed at latest revision, 14 unresolved discussions.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 28 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

etcd is usually spelled with a lower case e. Also, please link to their website - https://coreos.com/etcd

Same comments for all other occurrences.

ok. Done


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 33 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Can we use a better, more descriptive namespace?

used my-namespace instead of ns


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 41 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Remove the quotes and just linkify the URL.

removed the quotes


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 44 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Link to the default Values.yaml file?

CoreDNS chart is not merged yet, so the link would not be stable if i link it to PR. On the other hand Values.yaml in helm charts is well known, so i think user should not have any difficulty finding out the default configuration given the chart.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

What's the difference between the two types? I am not sure I know the distinction.

CoreDNS chart can be deployed basically as 2 variants.

  • if isClusterService is true, then CoreDNS is deployed similar to kube-dns addon.
  • if isClusterService is false, then CoreDNS is deployed as any other k8s app.

they basically differ in labels and annotations.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 70 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Do CoreDNS users understand this configuration? I don't know much about CoreDNS and I can't say whether I want this or not.

CoreDNS users do understand about the middleware. I had given the reference Values.yaml above which can be used to deploy CoreDNS for federation dns server. This explanation is just to let know the user of the configuration details and i believe whoever wants to tweak the configuration would know how to fit it to their needs.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 72 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Same as above.

Same as previous reply


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 89 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

It is probably worth mentioning that middleware.etcd.zones and --dns-zone-name flag to kubefed init should match.

Added a Note


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 98 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

I would make the host name part consistent. I understand why you are doing this. But I think it is worth making it consistent everywhere. Using etcd-cluster.ns everywhere isn't harmful right?

Agree, used etcd-cluster.my-namespace everywhere


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 99 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Trailing dot for consistency as we did here - #2899 (review)

Done


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 103 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

and say "which is same as --dns-zone-name"

Added.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 105 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

resolv.conf chain?

Changed. Done


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 109 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

resolv.conf chain?

Changed. Done


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 115 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Is it not possible to use the kube-dns ConfigMap for this yet?

kube-dns ConfigMap in the current release cannot handle nameserver listening on any port other than 53. I did a PR to specify port for nameserver, but that would be included in subsequent releases.
If CoreDNS is deployed as NodePort service. than it will be accessible on some random port which cannot be configured using kube-dns ConfigMap method.


Comments from Reviewable

@devin-donnelly devin-donnelly changed the base branch from release-1.6 to master March 28, 2017 19:10
@csbell
Copy link
Contributor

csbell commented Mar 31, 2017

Madhu -- can you lgtm the changes if they look good to you?

@shashidharatd
Copy link
Author

@madhusudancs, the CoreDNS helm chart PR is merged now. request a LGTM from you. is the fixes ok?

@clenimar
Copy link
Contributor

clenimar commented Apr 5, 2017

docs/tutorials/federation/set-up-coredns-provider-federation.md, line 99 at r2 (raw file):

[Global]
etcd-endpoints = http://etcd-cluster.my-namespace:2379
zones = example.com.

Does the user need to own this domain name? (In the light of kubernetes/kubernetes#43599)


Comments from Reviewable

@madhusudancs
Copy link
Contributor

@shashidharatd a few minor comments.


Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 8 unresolved discussions, some commit checks failed.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 33 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

used my-namespace instead of ns

I would have preferred a descriptive one. Something like dns or coredns, but this is good enough.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 41 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

removed the quotes

Can you please linkify this so that people following the doc can just click the link? [http://etcd-cluster.my-namespace:2379](http://etcd-cluster.my-namespace:2379)


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 44 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

CoreDNS chart is not merged yet, so the link would not be stable if i link it to PR. On the other hand Values.yaml in helm charts is well known, so i think user should not have any difficulty finding out the default configuration given the chart.

Ok, fair enough.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

CoreDNS chart can be deployed basically as 2 variants.

  • if isClusterService is true, then CoreDNS is deployed similar to kube-dns addon.
  • if isClusterService is false, then CoreDNS is deployed as any other k8s app.

they basically differ in labels and annotations.

Oh I see what you mean. This defines whether the deployment is a cluster component. Is that right? Could you please clarify this in the doc. It is not clear right now.

If that's the case, should users care about it? What are the pros and cons?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 70 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

CoreDNS users do understand about the middleware. I had given the reference Values.yaml above which can be used to deploy CoreDNS for federation dns server. This explanation is just to let know the user of the configuration details and i believe whoever wants to tweak the configuration would know how to fit it to their needs.

Ok, cool.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 72 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

Same as previous reply

Ack.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 115 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

kube-dns ConfigMap in the current release cannot handle nameserver listening on any port other than 53. I did a PR to specify port for nameserver, but that would be included in subsequent releases.
If CoreDNS is deployed as NodePort service. than it will be accessible on some random port which cannot be configured using kube-dns ConfigMap method.

I see. Do you think it is worth documenting both these techniques along with your explanation above?


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 99 at r2 (raw file):

Previously, clenimar (Clenimar Filemon) wrote…

Does the user need to own this domain name? (In the light of kubernetes/kubernetes#43599)

Not necessary if you are using CoreDNS as the DNS provider. However, it is the user's (read: cluster operator's) responsibility to

  1. Appropriately configure cluster's kube-dns to forward all requests to example.com. to CoreDNS.
  2. Make CoreDNS the authoritative server for example.com.
  3. Ensure external clients reach CoreDNS for the DNS queries for example.com..

Comments from Reviewable

@shashidharatd
Copy link
Author

@madhusudancs, have tried adressing your comments. PTAL


Review status: 0 of 2 files reviewed at latest revision, 6 unresolved discussions.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 33 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

I would have preferred a descriptive one. Something like dns or coredns, but this is good enough.

Using something like coredns might have confused, since the keyword is used for other purposes also.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 41 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Can you please linkify this so that people following the doc can just click the link? [http://etcd-cluster.my-namespace:2379](http://etcd-cluster.my-namespace:2379)

oh, i misunderstood the comment. Fixed Now.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

Oh I see what you mean. This defines whether the deployment is a cluster component. Is that right? Could you please clarify this in the doc. It is not clear right now.

If that's the case, should users care about it? What are the pros and cons?

For federation use case. CoreDNS has to be deployed as normal k8s app and this is not default while installing helm chart. So i have given the overriding configuration to deploy CoreDNS as a normal k8s app with etcd as middleware.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 115 at r1 (raw file):

Previously, madhusudancs (Madhusudan.C.S) wrote…

I see. Do you think it is worth documenting both these techniques along with your explanation above?

Once the kube-dns configuration related PR is merged and available to users. users need not do this manual configuration at all. we should remove this section in future. So i feel we should leave out those details which we do take care of.


Comments from Reviewable

@madhusudancs
Copy link
Contributor

Reviewed 2 of 2 files at r3.
Review status: all files reviewed at latest revision, 4 unresolved discussions, some commit checks failed.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 33 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

Using something like coredns might have confused, since the keyword is used for other purposes also.

Fair enough.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

For federation use case. CoreDNS has to be deployed as normal k8s app and this is not default while installing helm chart. So i have given the overriding configuration to deploy CoreDNS as a normal k8s app with etcd as middleware.

Ok makes sense.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 115 at r1 (raw file):

Previously, shashidharatd (Shashidhara T D) wrote…

Once the kube-dns configuration related PR is merged and available to users. users need not do this manual configuration at all. we should remove this section in future. So i feel we should leave out those details which we do take care of.

Ok.


Comments from Reviewable

@madhusudancs
Copy link
Contributor

@devin-donnelly @chenopis @jaredbhatti could you please take a look?

@madhusudancs
Copy link
Contributor

@shashidharatd this is also needs a rebase.

@shashidharatd
Copy link
Author

@madhusudancs, sorry for the delay. rebased now

@arthur0
Copy link

arthur0 commented Apr 10, 2017

Hello @shashidharatd, I tried helm install --name etcd-operator stable/etcd-operator (with and without the --namespace flag) unsuccessfully. Do you know any reason for that?

Error: release etcd-operator failed: the server does not allow access to the requested resource (get namespaces default)

@shashidharatd
Copy link
Author

Hello @arthur0,
I am able to install the chart with/without namespace successfully. i am suspecting you are having issue with RBAC settings in your k8s cluster.
Anyway it would be good to post this issue in https://github.com/kubernetes/charts instead of here. there would be more users/developers to help out.

@csbell
Copy link
Contributor

csbell commented Apr 12, 2017

Another possibility: federation doesn't create a default namespace. The failing "gets" suggest that might be the case.

Copy link
Contributor

@chenopis chenopis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor grammar nits.

{:toc}

This guide explains how to configure and deploy CoreDNS to be used as
DNS provider for Cluster Federation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add "the" before "DNS provider..."

- shashidharatd
title: Setting up CoreDNS as DNS provider for Cluster Federation
---

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you could please use the Tutorial Template, that would really help us out. Thanks!

This guide explains how to configure and deploy CoreDNS to be used as
DNS provider for Cluster Federation.

CoreDNS can be deployed in various configuration suiting the cluster
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"configuration" -> "configurations"

DNS provider for Cluster Federation.

CoreDNS can be deployed in various configuration suiting the cluster
federation deployment. In this guide we are explaining CoreDNS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sentence "In this guide..." is redundant and can be removed because the points it makes are already mentioned above.


## Deploying CoreDNS and etcd charts

To deploy CoreDNS we shall make use of helm charts. CoreDNS will be
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add comma: "To deploy CoreDNS, we shall..."


## Deploying Federation with CoreDNS as DNS provider

Federation control plane can be deployed using `kubefed init`. CoreDNS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add "the": "The Federation control plane..."

## Deploying Federation with CoreDNS as DNS provider

Federation control plane can be deployed using `kubefed init`. CoreDNS
can be chosen as DNS provider by specifying two additional parameters.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add "the": "...can be chosen as the DNS provider..."


Once the federation control plane is deployed and federated clusters
are joined to the federation, you need to add the CoreDNS server to
pod's nameserver resolv.conf chain in all the federated clusters as this
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add "the": "...the pod's nameserver..."


Replace `example.com` above with federation domain.

> Note: Adding CoreDNS server to pod's nameserver resolv.conf chain will be
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add "the": "...server to the pod's nameserver..."

automated in subsequent releases.


Now the federated cluster is ready for cross-cluster service dicovery !
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo and remove extra space: "...cross-cluster service discovery!"

@shashidharatd
Copy link
Author

@chenopis, i have addressed your comments. PTAL


Review status: 1 of 3 files reviewed at latest revision, 21 unresolved discussions.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 6 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

If you could please use the Tutorial Template, that would really help us out. Thanks!

I have used the template now. PTAL


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 11 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the" before "DNS provider..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 13 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

"configuration" -> "configurations"

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 14 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

The sentence "In this guide..." is redundant and can be removed because the points it makes are already mentioned above.

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 27 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add comma: "To deploy CoreDNS, we shall..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 29 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

"etcd also can be deployed..." -> "etct can also be deployed..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 40 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "...can be accessed with..." -> "...can be accessed with the..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 43 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "The CoreDNS default..." and "...customized to suit the federation."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 44 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

start a new sentence: "...suit the federation. Shown below is..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 45 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "...on the CoreDNS chart."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 63 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "a" and "the": "a cluster-service, which is the default."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 64 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "a," capitalize Kubernetes: "...deployed as a Kubernetes application service."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 65 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

capitalize Kubernetes everywhere

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 66 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

Suggested wording:

You need to choose either "LoadBalancer" or "NodePort" to make the CoreDNS service accessible outside the Kubernetes cluster.

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 88 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "The Federation control plane..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 89 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "...can be chosen as the DNS provider..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 111 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "...the pod's nameserver..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 122 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

add "the": "...server to the pod's nameserver..."

Done.


docs/tutorials/federation/set-up-coredns-provider-federation.md, line 126 at r3 (raw file):

Previously, chenopis (Andrew Chen) wrote…

typo and remove extra space: "...cross-cluster service discovery!"

Done.


Comments from Reviewable

@chenopis chenopis added Docs LGTM and removed Docs Review: Open Issues do-not-merge DEPRECATED. Indicates that a PR should not merge. Label can only be manually applied/removed. labels Apr 13, 2017
@chenopis
Copy link
Contributor

/lgtm @shashidharatd @madhusudancs Anything else before I merge this?

@shashidharatd
Copy link
Author

loogs good to me. @madhusudancs PTAL one final time.
Thanks

@madhusudancs
Copy link
Contributor

@chenopis @shashidharatd looks good to me too. Go go go!

@shashidharatd
Copy link
Author

@chenopis, @madhusudancs, This document should be available for 1.6, should i raise to release-1.6 branch also?

@chrisjones262
Copy link

Note that using ServiceType = "LoadBalancer" gives this result:
Error: release coredns failed: Service "coredns-coredns" is invalid: spec.ports: Invalid value: [{"name":"dns","protocol":"UDP","port":53,"targetPort":53,"nodePort":0},
{"name":"dns-tcp","protocol":"TCP","port":53,"targetPort":53,"nodePort":0}]: cannot create an external load balancer with mix protocols

Using ServiceType = "NodePort" seems to be necessary if you want to support both TCP and UDP.

@shashidharatd
Copy link
Author

@chrisjones262, on what cloud provider are you seeing the above issue?
Request you to file an issue in https://github.com/kubernetes/charts
AFAIK, there seems to be a bug in GCE loadbalancer, which does not allow to create a loadbalancer with same port for UDP & TCP. Are you by chance using GCE?
I hope this problem does not exist on other cloud providers like AWS or openstack

@chrisjones262
Copy link

chrisjones262 commented Apr 14, 2017 via email

@chenopis
Copy link
Contributor

@shashidharatd Since 1.6 was already released, I can merge this directly into master. Once you think the issue w/ @chrisjones262 is sufficiently resolved, I will merge this. Cheers

@shashidharatd
Copy link
Author

@chrisjones262, interesting to know that loadbalancers in 'Azure Container Service' also has similar characteristics as that GCE loadbalancers. We can just start the service to listen either on TCP or UDP in that case and think about implications for DNS server. I would request you to file this issue in https://github.com/kubernetes/charts as the fix need to go in that repo for CoreDNS helm chart.

@shashidharatd
Copy link
Author

@chenopis, just curious, can this documentation be part of 1.6.2 patch release? Does the hosted https://kubernetes.io reflect the changes done to patch release?
I wish that this documentation is merged and visible to greater audience ASAP, if it has to go in 1.7 release then we need to wait for another quarter.

Also the issue raised by @chrisjones262, affect subset of environments. IMHO, we should not hold back this documentation pr for that issue as there is no change required here. that issue is being addressed in helm/charts#928 and would take its own time to merge and is independent of kubernetes release cycles. @chrisjones262 do you agree?

@chenopis
Copy link
Contributor

@shashidharatd As long as that issue is being addressed, I'm fine w/ merging this now. Thx

@chenopis chenopis merged commit 8aa078c into kubernetes:master Apr 17, 2017
@chrisjones262
Copy link

chrisjones262 commented Apr 17, 2017 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants