IBMStockTrader / trader

UI microservice for the Stock Trader app
Apache License 2.0
24 stars 63 forks source link

Use WebSphere Liberty helm chart to deploy trader microservice #3

Closed leochr closed 5 years ago

leochr commented 5 years ago
leochr commented 5 years ago

@jwalcorn The nodePort field is hardcoded in the Service under deploy.yaml. Wondering if that's really necessary. In the event of port collisions, the system would be unable to allocate that port.

https://github.com/IBMStockTrader/trader/blob/4e2c701e6706cfb3e931a1ba6b2dffc5c748daa3/manifests/deploy.yaml#L100

jwalcorn commented 5 years ago

We had been hardcoding that because we needed to register the redirect URL for IBMid, and we needed to be able to predict that URL ahead of time. But lately we've not been using the OpenID Connect path (to IBMid), but have instead been using just basicRegistry. Also, we have adopted Ingress now, so we are trying to wean ourselves off of node ports.

jwalcorn commented 5 years ago

I've also been having some health endpoint discussions with @kyleschlosser. Can this be used to specify a readinessProbe?

leochr commented 5 years ago

@jwalcorn thanks for the response. Glad that we don't need to include/worry-about hardcoded nodePort in values yaml.

Right now, our chart uses HTTP endpoint / (or /health if MicroProfile Health is enabled) to determine readiness. We are enhancing our Liberty chart to allow customizing readinessProbe, so users can specify a custom endpoint (e.g. /trader).

jwalcorn commented 5 years ago

So where do I define my Ingress? Right now, there are 3 Kubernetes objects defined in my full deploy.yaml: the deployment, the service, and the ingress. I think the Liberty helm chart is doing the service for me. But what about the ingress?

jwalcorn commented 5 years ago

Oh, never mind. I see the ingress: section in the trader-values.yaml now.

leochr commented 5 years ago

Right, it's controlled by the ingress parameter.

Regarding monitoring, please check the information in Readme and Release notes about some of the limitations (due to ICP) and evaluate it's fine for these microservices.