-
Notifications
You must be signed in to change notification settings - Fork 121
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
Comments
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. |
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? |
Have we publicized (well enough) our alternative demo to the upstream guestbook? |
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? |
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. |
@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. |
@v1k0d3n There are also plans to embed skydns into kube-proxy, which will simplify this dramatically. See kubernetes/kubernetes#11599 |
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. |
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. |
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. |
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.) |
Closing this issue since it seems to refer to docs we no longer have. |
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 text was updated successfully, but these errors were encountered: