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

Guestbook example requires kube-dns #98

Closed
the-kennedys opened this issue Mar 18, 2015 · 12 comments
Closed

Guestbook example requires kube-dns #98

the-kennedys opened this issue Mar 18, 2015 · 12 comments

Comments

@the-kennedys
Copy link

The kubernetes guestbook example was updated with the following a week ago : "Rewrite guestbook example to use kube-dns instead of host:port"
kubernetes/kubernetes@4679a37
This means that currently, following the getting started guide results in a non-functional demo system. To make it work, I had to create a replication controller and service by editing the templated yaml.in files from kubernetes/cluster/addons/dns/, then modify KUBELET_ARGS to include cluster_dns and cluster_domain arguments.

the-kennedys added a commit to the-kennedys/atomic-site that referenced this issue Mar 18, 2015
@nzwulfin
Copy link
Contributor

This is still an open item, the discussion needs to either look at a similar fix as referenced above or a different kubernetes pod. This could be a fork of an earlier version or a more nulecule / atomic-y kubernetes pod.

Downside to following the existing upstream guide is the need to be dialed into someone elses update cycle for changes that may not affect the project. IE the need for kube-dns is an internal convention in the pod and not a requirement for the overall function of kubernetes.

Upside, following upstream makes for a fairly straightforward set of source materials.

I'm leaning toward a new Atomic pod, that we can extend to use for nulecule, atomicrun, etc. as we need to without having a double set of troubleshooting.

@nzwulfin
Copy link
Contributor

We've moved away from using the upstream guestbook as an example, instead using a simpler nginx pod to demo k8s.

The atomicapp team has been packaging the upstream guestbook as an example Nulecule app, I'd say we should bring this in later instead of the upstream.

Can we close this issue now?

@jzb
Copy link
Contributor

jzb commented Aug 10, 2015

Have we publicized (well enough) our alternative demo to the upstream guestbook?

@nzwulfin
Copy link
Contributor

The change has been made to a single nginx container k8s pod in the guide, if that's "publicized" I don't know. We don't have anything complex as a k8s demo in the guides at this point. The objectives also highlight the single web service demo, not the k8s guestbook demo.

The guide does reference (URL and text) the upstream k8s guestbook example, but there's no direct instructions.

What publicity would you like to see for our examples?

@v1k0d3n
Copy link

v1k0d3n commented Sep 15, 2015

sorry for commenting on a seriously old ticket...but searching "atomic kubernetes dns" brought me here. on http://www.projectatomic.io/docs/gettingstarted/ it mentions that SkyDNS needs to be configured for some of the Kubernetes examples, and I am seeing more and more of this (example: http://kubernetes.io/v1.0/docs/user-guide/connecting-applications.html#exposing-the-service, which would be a pretty basic start for new users interested in exposing ports to external for nginx). does the projectatomic.io website have any well-publicized instructions on how to edit the kublet file for DNS, like as in the getting started walkthrough? everything seems to point to outside documentation.

@jasonbrooks
Copy link
Contributor

@v1k0d3n I use the ansible scripts from the kubernetes/contrib repo to set up my atomic clusters, here's a gist about it: https://gist.github.com/jasonbrooks/cbffdb0b00fe4cdc491c. Those scripts take care of setting up dns. I plan on turning that gist into a blog post on the project atomic site.

@dustymabe
Copy link
Contributor

@v1k0d3n There are also plans to embed skydns into kube-proxy, which will simplify this dramatically. See kubernetes/kubernetes#11599

@v1k0d3n
Copy link

v1k0d3n commented Sep 16, 2015

thanks for the responses. jason....always good work! you've referenced the ansible scripts on IRC, and they're awesome...i just need to explore the dns-only bits that can be applied to my existing RDO/Openstack/Atomic deployment. i preferred setting up manually a few times to really learn the inner-workings of an atomic/kubernetes deployment. when i got to the skydns parts, as mentioned in the kubernetes walk-throughs, i was wondering if the atomic team had documented this or if there was some other atomic way of addressing this. i do think the kube-proxy pieces would be best...but those still look like a work in progress.

@nzwulfin
Copy link
Contributor

We used to document the kubernetes guestbook app with skydns, but it turned into a moving target. The documentation was changing without clear guidelines on what a working cluster was supposed to provide for services. Which is where you are right now.

As @dustymabe mentioned, the entire design of DNS in k8s is shifting since the decision to require it for services. The current branch has this (buried) doc on setting up SkyDNS including k8s pod definitions to deploy from containers. https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns

The pod needs some mods to work without salt. Similar content can be derived from @jasonbrooks ansible content.

@v1k0d3n
Copy link

v1k0d3n commented Sep 16, 2015

i can understand the challenge with the documentation. everything upstream has changed dramatically (hopefully this is better after v1). i sense it everywhere as i'm trying to determine what's actually needed vs. what is not to run some of the tests and walk throughs provided on the kubernetes website. i don't have a lot of experience with salt and ansible, but i'd like to work through the walkthroughs in order to become more familiar kubernetes, atomic and cockpit. i have all of the pieces working really well in my lab, but i can't figure out if skydns is as simple as bringing up an rc/svr or how deep the rabbit hole goes. it will be a lot easier when it's included directly in kube-proxy.

@nzwulfin
Copy link
Contributor

It used to be as simple as start the two pods, and set the cluster.* settings. No idea what it's like now.

As to salt, there's just a few variable substitutions in the yaml files that need to be replaced. You don't really need to fully grok salt to do that. I didn't when I set it up :)

But overall yes, upstream is working on doing it better, so I stopped trying to play along and update the docs. We're still missing a good bit of correct k8s 1.0 behavior and are publishing workarounds until we get that updated (the ServiceAccount removal, etc.)

@jberkus
Copy link
Contributor

jberkus commented Mar 29, 2016

Closing this issue since it seems to refer to docs we no longer have.

@jberkus jberkus closed this as completed Mar 29, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants