wildfly-proposals icon indicating copy to clipboard operation
wildfly-proposals copied to clipboard

[WFLY-18415] Support internal EJB client access to deployments on Ope…

Open tadamski opened this issue 1 year ago • 4 comments

…nShift over HTTP

Please don't merge. This analysis is in initial state and the PR was open to take advantage of github in the design discussions.

tadamski avatar Sep 05 '23 19:09 tadamski

@tadamski if you could convert this to a draft pull request, it wouldn't be merged until out of draft state.

Just FYI, mod-cluster is not (and is not currently planned to be) suitable for deployment in OpenShift, asked Rado specifically about this. The recommendation is to use a cloud native load balancer, such as a service.

rachmatowicz avatar Sep 06 '23 13:09 rachmatowicz

Also, you mention stateful sets and persistent IP addresses: stateful sets don't provide stable IP addresses, but only stable hostnames (e.g. web-0, web-1, web-2): https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id

rachmatowicz avatar Sep 06 '23 15:09 rachmatowicz

My view: if we assume that the deployment is via the Wildfly operator and that the EJB client application makes use of the "http" protocol (and so the wildfly-http-client library), all that is needed is an intermediary service between the client and the deployment which understands cookie based affinity management. If OpenShift provides such a service then that could be used, otherwise a custom cloud-native service could be written and deployed via the operator.

rachmatowicz avatar Sep 06 '23 15:09 rachmatowicz

This note about internal load balancers may be of interest: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer

rachmatowicz avatar Sep 07 '23 15:09 rachmatowicz