Kurz: Gibt es eine Möglichkeit alle Ports konfigurieren von management-agent.jar
verwendet (eingeführt in Sonarqube 5.5) oder deaktivieren es auch?Konfiguration von Management-Agenten auf Sonarqube 5.5
Weitere Informationen: Ich versuche, SonarQube auf OpenShift (again), diesmal Version 5.5/5.6 zu starten. Beim Start erhalte ich den folgenden Fehler: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 0; nested exception is: java.net.BindException: Permission denied
.
Was fand ich so weit ist, dass
- the agent opens three ports,
- wo zwei konfiguriert werden können (Systemeigenschaften
com.sun.management.jmxremote.port
undcom.sun.management.jmxremote.rmi.port
) - aber einer von ihnen ist by design always the ephemeral port (port 0), die nicht scheint um an OpenShift zu arbeiten.
Zusätzlich zu den Ports explizit auf den zulässigen Bereich auf Openshift-Einstellung (Ports 15.000-35.530), habe ich versucht, die -XX:+DisableAttachMechanism
Option ohne Glück.
Irgendwelche Ideen, wie man das umgeht? Kann SonarQube ohne den Agenten arbeiten?
Wie zu reproduzieren: Eine Openshift-App von this, dann die SONAR_VERSION
zu 5.5
oder 5.6
Vollstacktrace in .openshift/action_hooks/build
2016.06.02 16:09:34 INFO app[o.s.p.m.JavaProcessLauncher] Launch process[es]: java -Djava.awt.headless=true -javaagent:jre/lib/management-agent.jar -cp ./lib/common/*:./lib/search/* org.sonar.search.SearchServer
Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 0; nested exception is:
java.net.BindException: Permission denied
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:384)
at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:397)
Caused by: java.lang.RuntimeException: Exception thrown by the agent
at sun.management.Agent.error(Agent.java:520)
at sun.management.Agent.error(Agent.java:511)
at sun.management.Agent.startAgent(Agent.java:268)
at sun.management.Agent.agentmain(Agent.java:134)
at sun.management.Agent.premain(Agent.java:116)
... 6 more