k0sproject / k0smotron

k0smotron
https://docs.k0smotron.io/
Other
505 stars 46 forks source link

Ingress solution #4

Open juanluisvaladas opened 1 year ago

juanluisvaladas commented 1 year ago

Currently the implementation only allows nodePort and what's worse, it has the port hardcoded.

We need an ingress solution that at minimum allows to choose:

In the future it would be good to either use the gateway API or to have one load balancer managed by k0smotron.

makhov commented 1 year ago

Now we have configurable ports for nodePort and LoadBalancer support. We decided not to go with a proper ingress for MVP, will return to it later

cwrau commented 4 months ago

Heyho, is it possible to reopen this now? We're also looking into using DNS for the clusters instead of IPs for everything.

Currently it looks like we can just use the ClusterIP service, set k0smotronControlPlane.spec.externalAddress to the DNS name and then create the Ingress ourselves using one of the generated tls secrets for TLS, is that correct?

juanluisvaladas commented 4 months ago

Hi @cwrau, it's not really a good moment to have this discussion because relevant people are on vacation. I've reopened it and, when people are back we'll review this.

jnummelin commented 1 week ago

The challenge is not how to expose the hosted controlplane via Ingress, that part is pretty "trivial". Famous last words... 😂

The main challenge is, how do we configure the child clusters internals to understand the Ingress. So if we look at any cluster, there's always the internal API svc, in defaul k0s configs it's using 10.96.0.1 address. So how do we configure that to route to the Ingress?