-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add status field to TransportServer resource #1425
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @soneillf5
Please see my feedback.
With TransportServer, it is a bit trickier than with VirtualServer: VirtualServer can have one or two ports. For example it can have port 80
or ports 80
and 443
. However, with TransportServer, we only have one port, which corresponds to the port of the listener.
For TCP/UDP TransportServer , it only makes sense to report IP and port when:
- external-status-address is set in the ConfigMap (we assume that address exposes all ports)
- the type LoadBalancer service, configured for KIC and used via -external-service, configures a port and protocol that matches the port and protocol of the listener used in the TransportServer. So if the Services exposes port 53, we report the service public IPs and port 53 for a TransportServer that has a listener that uses port 53. Otherwise, if the port is not configured in the Service, it will not be accessible via the allocated cloud LoadBalancer.
For TLS Passthrough TransportServer, which uses port 443
, it makes sense to report IP and port in the status when:
- external-status-address is set in the ConfigMap
- there is a type LoadBalancer services, configured for KIC and used via -external-service. The services we provide in the installation manifests, helm and operator, have ports 80 and 443 configured.
- IngressLink is configured https://github.com/nginxinc/kubernetes-ingress/blob/master/docs-web/integration-with-cis.md (IngressLink supports ports 80 and 443)
docs-web/configuration/global-configuration/reporting-resources-status.md
Show resolved
Hide resolved
docs-web/configuration/global-configuration/reporting-resources-status.md
Show resolved
Hide resolved
docs-web/configuration/global-configuration/reporting-resources-status.md
Show resolved
Hide resolved
Hi @pleshakov, thank for the review. I've addressed most of the comments. The outstanding issue is your comment about reporting the external IP/Port. Or do you mean that we should check for all of the conditions you mentioned? |
2eaaa88
to
99f9c70
Compare
The I've removed the two fields and logic required for them. If they are still required, we can add them in a new PR. |
efc5c41
to
d5d2842
Compare
@pleshakov updated and ready to merge |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@soneillf5 lgtm
(but I can't find this though #1425 (comment) )
d5d2842
to
4e3007f
Compare
Proposed changes
This change adds the status field to the TransportServer resource.
This enables a user to get the status of the TransportServer i.e.
Checklist
Before creating a PR, run through this checklist and mark each as complete.