Open maver1ck opened 6 years ago
It would also be nice to have Ingress
available for kafka and zookeeper as well.
So the issue with this as I see it is that most ingress controllers are setup to do HTTP(s) load balancing and forwarding. In order to get Kafka and Zookeeper to work there is a need of a TCP LB, which only some of the ingress controllers support. The official Kubernetes Nginx based one supports it somewhat, the official nginx.org one currently does not, and there are some HAProxy ones that do. So basically TCP LB is not really well defined in Kubernetes imo and leads to many things like this, DBaaS or more or less anything non HTTP related :(
Someone feel free to correct me.
@kurktchiev I agree with you, but now istio has these features but I don't know if the sidecar proxy (ex. envoy) is compatible with kafka protocol or not. If it's compatible, it will be a great not only for exposing kafka-connect, kafka-rest and kafka-registry but even controlling the communication with kafka from security perspective and traceability of the communication.
it's not done yet. https://github.com/envoyproxy/envoy/issues/2852. I would agree with adding ingress controller for Kafka REST at current stage. Since exposing Kafka on k8s to outside(without DNS) is still tricky. Using Kafka REST Proxy seems to be the most ideal/cleanest way for apps sitting outside of k8s.
Please create ingress template and configuration for: