Open boeboe opened 6 years ago
Do you mind share you're experience with kubernetes ? Stability etc...
We didn't see stability issues so far. Partitioning/replication in combo with a flexible scalable kubernetes platform is an ideal combo.
We are running into the same issue; actually we run 2 CP releases on one k8s cluster and like to route both control-center UI's over one ingress-controller. We use the sub_filter to rewrite paths in the response but it doesn't work for .js packages being send back that initialize the frontend.
What is needed is support for proxy on a path by the app itself.
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/use-regex: "true"
nginx.ingress.kubernetes.io/auth-type: basic
nginx.ingress.kubernetes.io/auth-secret: basic-auth-admin
nginx.ingress.kubernetes.io/auth-realm: "Authentication Required"
nginx.ingress.kubernetes.io/configuration-snippet: |
proxy_set_header Accept-Encoding "";
sub_filter_once off;
sub_filter 'href="/dist/' 'href="/control-center/dist/';
sub_filter 'src="/dist/' 'src="/control-center/dist/';
Alternatives would be to distinguish on host or port on the ingress and leave the control-center in the root (but both are not an option for us).
It should be a simple change in the jar file, but that's up to Confluent team to take this issue serious.
Can we get this fixed quickly? Not good for an enterprise tool!!
Was looking for the setting to do this and found it doesn't yet exist! This feature is a must have for our deployment.
Because of security it should be possible to access the control center through kubectl proxy
instead of an ingress but this isn't possible because of the absolute urls.
Did anybody find a solution for this issue, so far? Any clue is highly appreciated!
Hi all,
I am using the docker images of confluent to deploy the confluent stack (kafka, zookeeper, schema-registry, rest-proxy and control-center) on Kubernetes. I am using an nginx ingress controller to expose the control center's dashboard (using path routing):
The ingress.kubernetes.io/add-base-url ensures that in the HTML returned, a base-url header is injected in order for later scripts/urls to be correctly resolvable over the path based ingress controller. The result looks like this:
As one can see, the links however all are using absolute URL's, which is why the page is not properly loading behind this nginx reverse proxy.
I was wondering if you would be willing to switch the URL's to be relative (I would try to change this myself using some linux sed magic, but it seems that the code is embedded in a jar).
REF: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
PS: not sure this is the right repo, but I could not find a control-center specific one. PPS: the result of the port-confluent-to-kubernetes exercise (I had to extend the docker images of Kafka and Zookeeper to make it work FYI):