We agreed month ago that kubedns should not be an option.
We are currently using kpm to deploy it.
Kpm is still in early / unstable stage, I propose to move back to a 'full' ansible to deploy kubedns, and remove kpm install from default to get more stability in kargo script
kpm will still be used for other applications that are marked as optional (dashboards/deis-worfklow/elk/grafana...)
+1
I've got a playbook for deploying kube-dns already created. If no one else has begun work on this, I'll add it in this week.
@rsmitty do you have a link/place I can see it?
FYI, the major issue with kpm was from the api that could be down time to time and SNI support from python.
I added an offline mode that takes tar.gz to solve it: no more api calls
To resolve this issue I propose either:
kubedns.tar.gz in roles/kubedns/files )My preference goes for 1 or 3, I don't see any advantages to use kube.py.
What do you think?
Seems like if we're just trying to deploy add-ons like kube-dns, we should just use the new addons folder functionality in 1.3 and drop in a templated yaml file. Doing it this way will also allow the dns service to be monitored by the kubelet for changes and upgraded as needed.
https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/README.md
I was under the impression addons folders only works out of the box in GCE (since it's baked into GCI), and for all other deployments it requires building/deploying the addon manager container:
https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/addon-manager
It would be interesting to have kargo deploy the addon manager and have options to deploy additional addons.
i'm with @rsmitty on this one. something simple, reliable and repeatable for core services. kpm is really nice, but i'm not sure i trust it enough (in current state) to trust it for core services. this work is being discussed at a kubernetes-level as rsmitty mentioned. see issue #464.
@v1k0d3n the major issue is that kpm rely on a serveur that is not in a production state/monitored.
kpm-ansible plugin is fine and it's pretty similar to what you would have with other plugins.
The main issue is the server, I did not have time to finish the 'offline' mode, (embed a tar.gz)
I propose that we switch asap to any other solution than kpm for kubedns.
Most helpful comment
Seems like if we're just trying to deploy add-ons like kube-dns, we should just use the new addons folder functionality in 1.3 and drop in a templated yaml file. Doing it this way will also allow the dns service to be monitored by the kubelet for changes and upgraded as needed.
https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/README.md