Self-Hosting FeatureHub: Liveness/Readiness Probes Always Fail for Management repository #772
Replies: 7 comments 2 replies
-
Hey @thedanchez - sorry, I never saw this message come up 😟 Did you manage to figure out what the problem was? And yes, Nats healthy is a requirement, the other servers include a check on Nats. From your logs it's almost like it wasn't even asking the right urls for health? Richard |
Beta Was this translation helpful? Give feedback.
-
Ok, i'll take a look tonight - our Slack is a great way to get a hold of us for feedback quickly, for some reason I miss these discussion messages :-( |
Beta Was this translation helpful? Give feedback.
-
I'll see if I can get it sorted and ping you for any testing if thats suitable? |
Beta Was this translation helpful? Give feedback.
-
Hi @thedanchez - I spent a bit of time with this tonight. I deleted my kind cluster and recreated it, and then reinstalled the dependent helm charts and reinstalled the app as per the readme. It all came up and was healthy, but I couldn't hit the UI - and that is a configuration error (run.nginx=true has been removed from the env file for MR for some reason). What I can see in your startup above is that it is definitely not starting properly based on the helm chart that is in our current repo on Master. It should have two environment variables or system properties - server.port=8085 and monitor.port=8701. Your server has neither set and is starting on the default (unconfigured) port of 8903 - and exposes all of the endpoints there. You can see the liveness check here: Readiness probe failed: Get "http://7.150.220.105:8701/health/readiness": dial tcp 7.150.220.105:8701: c and your server logs show this: {"@timestamp":"2022-05-09T16:23:01.722+0000","message":"server started on http://0.0.0.0:8903/ with http/2 enabled","priority":"INFO","path":"io.featurehub.jersey.FeatureHubJerseyHost","thread":"main","host":"featurehub-management-repository-84d4959f6f-z46fz"} there is no port 8701 being bound. Another telltale sign for me is this log: All endpoints for Jersey application\n GET /health/l All the health endpoints and application endpoints are loaded onto a single port - which you normally don't want :-) So you need to get those two variables into your config - in the standard one, its in helm/featurehub/templates/management-repository/configmap-env.yaml - if that helps? Also - really please contact me on Slack, I have done concalls with other people and we are happy to help you out :-) |
Beta Was this translation helpful? Give feedback.
-
@thedanchez i have a PR: featurehub-io/featurehub-install#39 |
Beta Was this translation helpful? Give feedback.
-
@rvowles this is my current
The Didn't realize you had a Slack channel. I recently joined in and will start a convo soon. |
Beta Was this translation helpful? Give feedback.
-
If you have time, you should also be able to do a kubectl get deployment featurehub-management-repository -o yaml as well - see what the environment variables are there. There is this section in the template that extracts those env vars from that same location and puts them in your deployment. |
Beta Was this translation helpful? Give feedback.
-
Hello, I am trying to self host FeatureHub in my org's K8s cluster and cannot get the Management Repository pods to successfully start and be ready. The liveness/readiness probes fail all the time because the Pod cannot seem to connect to the remote host IP.
I made only slight adjustments to the provided Helm charts (modified the
initialDelaySeconds
for the MR deployment). One thing I noticed is that the NATS pods have to be up and running before the other pods for Dacha, Edge and MR can even begin to become ready. I have already triedkubectl exec -it
into the MR pod and attempted awget
to the probes from within the Pod and that still failed with connection refused. I do not know what else to do and could use guidance/direction here as I am not finding anything useful in the existing documentation.Below are the logs from the running MR pod in my k8s cluster:
Beta Was this translation helpful? Give feedback.
All reactions