Skip to content
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

[Bug] Cryostat should not always assume Kubernetes ports numbered 9091 are JMX #1861

Closed
andrewazores opened this issue Jan 23, 2024 · 0 comments · Fixed by #1862
Closed

[Bug] Cryostat should not always assume Kubernetes ports numbered 9091 are JMX #1861

andrewazores opened this issue Jan 23, 2024 · 0 comments · Fixed by #1862
Assignees
Labels
bug Something isn't working

Comments

@andrewazores
Copy link
Member

Current Behavior

Since forever, Cryostat's Kubernetes API discovery mechanism has assumed that if it sees a port named jfr-jmx or numbered 9091 that this is a JMX port. More recent Cryostat versions try to proactively connect to discovered target applications to determine their JVM IDs.

In the case that 9091 is exposed for a different service and is NOT a JMX port, this results in Cryostat trying to open a JMX connection to a non-JMX port as soon as it sees such a target application. This connection attempt will fail, but it takes time for that to happen. If enough of these attempts happen simultaneously (ie there is a large number of non-JMX 9091 applications discovered), it can lead to thread starvation, which degrades Cryostat performance - possibly to the point that the container platform kills and restarts Cryostat.

The jfr-jmx/9091 pattern has been in Cryostat for so long that it is best not to change it now, at least not as the default setting. However, it is about time that we make this configurable. These values can be kept as defaults but they should be overrideable by environment variables, and these variables should also be configurable by Operator CRD fields.

Expected Behavior

No response

Steps To Reproduce

No response

Environment

No response

Anything else?

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant