Consider dropping Traefik as a bundled component #6215
Replies: 2 comments 1 reply
-
I am not sure if this is a proper fit for a "discussion". I can convert it to an issue if you want. Truth be told: I kinda wanted this discussion to be referenced in traefik/traefik#9108 , but this only seems to work with issues, not discussions. |
Beta Was this translation helpful? Give feedback.
-
Just to respond to these comments in order:
Exclusively or preferentially using projects maintained by SUSE is not one of our goals. K3s is a CNCF project, and we aim to keep it as open and independent as possible.
What would you suggest? Nginx can hardly be held up as example of an open-source project that's "less driven by commercial interests". While the ingress controller is a community project, nginx itself has a closed development process.
This is a valid concern, but not one I see expressed very often.
This sounds like something you have a personal philosophical objection to, but I don't see that it affects the core functionality of Traefik as an ingress controller.
This is valid. We do a better job of keeping up with ingress-nginx on the RKE/RKE2 side because it's been affected by so many critical CVEs. Can't say the same for traefik...
We would like to increase, not decrease, the number of things that can be customized via HelmChartConfig. For example, it is very difficult to customize the coredns configuration at the moment; bundling it as a helm chart would make the user experience much better in that regard.
We are intentionally opinionated about what we include. To paraphrase from our README, K3s "packages additional components and services necessary for a fully functional cluster that go beyond vanilla Kubernetes." Leaving out an ingress controller would not accomplish this goal.
It does. |
Beta Was this translation helpful? Give feedback.
-
Well, this will probably be a controversial topic, but I've given this a lot of thought and I think it is at least worth talking about.
I know that the deployment of the bundle Traefik can be disabled via an installation option. Please don't disregard the following just because of this fact.
Also, I know that my comments sometimes come across as aggressive. This is not my intention at all. Please understand that this discussion comes from a place of love.
After heavy usage of K3s for approximately two years to deploy a ton of clusters, I think Traefik is not a very good fit as a bundled component. These are my thoughts in no specific order:
--global.checknewversion
). The update-check doesn't even make sense when using it as a bundled k3s component.HelmChartConfig
. While I would be happy to be able to customize the other components this way, this is still an outliner. A point could be made that the bundled Helm controller would become obsolete without the bundled Traefik.--disable traefik
on a running cluster removes an already installed Traefik).I still think bundling an ingress controller could be worthwhile, but this inevitable forces you to "play favorites" - way more so than with any of the other bundled components. Even when bundling an ingress controller, I still think there are better, less tainted options (maybe something from under the CNCF umbrella).
Beta Was this translation helpful? Give feedback.
All reactions