Add hostname/ip information to VKC loadbalancer status#2412
Conversation
fd078a6 to
314267a
Compare
SamBarker
left a comment
There was a problem hiding this comment.
LGTM with a couple of nits.
| .withProtocol(serverCert.isEmpty() ? Protocol.TCP : Protocol.TLS); | ||
| return Stream.of(builder.build()); | ||
| Optional<ServiceBootstrap> bootstrap = bootstraps.stream().filter( | ||
| b -> b.bootstrap().ingressName().equals(ingress.getIngressRef().getName()) && b.bootstrap().clusterName().equals(name(cluster))) |
There was a problem hiding this comment.
I think it would be worth extracting a method reference. Something like bootstrapMatchesIngress or something else descriptive.
| A list containing ingress points for the load-balancer. Traffic | ||
| intended for this proxy ingress should be sent to these ingress points. |
There was a problem hiding this comment.
I think we should be explicit that we expect users to arrange DNS etc based on these values. Though maybe thats too involved for field level documentation?
There was a problem hiding this comment.
Yeah it feels too involved, maybe I should remove the second sentence as it's misleading (can be misinterpreted as saying it's a hostname you can plug into a client) and stick to describing what it is, not how we intend people to use it.
314267a to
fa9cc84
Compare
When reporting the VKC status for an ingress: If the ingress is associated with a Service with a `loadBalancer` object in its status we report each `ingress` point's ip or hostname in the VKC status. Why: The first time a user sets up a LoadBalancer KafkaProxyIngress they will be responsible for configuring their DNS to resolve some hostnames to the loadbalancer ip/hostname. That means we must instruct users on how to locate the shared SNI service and extract its details. Signed-off-by: Robert Young <robeyoun@redhat.com> Co-authored-by: Sam Barker <sam@quadrocket.co.uk>
fa9cc84 to
b6a1c3d
Compare
|
Signed-off-by: Keith Wall <kwall@apache.org>
Signed-off-by: Keith Wall <kwall@apache.org>
Signed-off-by: Keith Wall <kwall@apache.org>



Type of change
#status
Description
When reporting the VKC status for an ingress:
If the ingress is associated with a Service with a
loadBalancerobject in its status we report eachingresspoint's ip or hostname in the VKC status.for example I edit the downstream-tls example KafkaProxyIngress to:
Then run
minikube tunneland I see in the statuswhich corresponds to the ip from the status of the service:
Additional Context
The first time a user sets up a LoadBalancer KafkaProxyIngress they will be responsible for configuring their DNS to resolve some hostnames to the loadbalancer ip/hostname. That means we must instruct users on how to locate the shared SNI service and extract its details. It's a bit fiddly.
With this change, the ip/hostname the user needs to plug into their DNS will be visible on the VirtualKafkaCluster status.
Closes #2295
Checklist
Please go through this checklist and make sure all applicable tasks have been done