lrk / ansible-role-sonarqube

Ansible Role: SonarQube
Apache License 2.0
34 stars 45 forks source link

Cant access it by web browser? #27

Closed thepenguinthatwants closed 3 years ago

thepenguinthatwants commented 4 years ago

I installed this to my VM, but I cant seem to open it up?

sonar_web_port: 9000 so it should be localhost:9000, but I cant see any ports related to that to be open.

lrk commented 4 years ago

Hi @thepenguinthatwants

i'm sorry but your report miss some context, logs, i can't really help. you without some infos.

Maybe you can check if the service is up and running ?

thepenguinthatwants commented 4 years ago

Hi! I ran it against 18.04 ubuntu server but unsure where to check more logs. Well actually noticed that your role wasnt tested on ubuntu nor supporting. So I know am fine if you choose not to help.

I did install unzip separately to get this role to run till end.

From /var/log/syslog the output is

Sonarqube1 systemd[1]: Starting SonarQube 7.3 service...                                               │
Mar 18 17:36:44 sonarqube1 sonar.sh[7153]: Starting SonarQube...                                                       │Outputs:
Mar 18 17:36:45 sonarqube1 sonar.sh[7153]: Started SonarQube.                                                          │
Mar 18 17:36:45 sonarqube1 systemd[1]: Started SonarQube 7.3 service.                                                  │sonarqube1 = 10.62.176.13
Mar 18 17:36:47 sonarqube1 sonar.sh[7299]: Stopping SonarQube...                                                       │
Mar 18 17:36:47 sonarqube1 sonar.sh[7299]: SonarQube was not running.
thepenguinthatwants commented 4 years ago

from es.log

2020.03.18 17:35:27 INFO  es[][o.e.n.Node] initializing ...
2020.03.18 17:35:27 INFO  es[][o.e.e.NodeEnvironment] using [1] data paths, mounts [[/ (/dev/loop0)]], net usable_space [76.3gb], net total_space [84.7gb], spins? [possibly], types [btrfs]
2020.03.18 17:35:27 INFO  es[][o.e.e.NodeEnvironment] heap size [494.9mb], compressed ordinary object pointers [true]
2020.03.18 17:35:27 INFO  es[][o.e.n.Node] node name [sonarqube], node ID [ulQkL9JqTnmybJT45aYB8A]
2020.03.18 17:35:27 INFO  es[][o.e.n.Node] version[5.6.3], pid[6558], build[1a2f265/2017-10-06T20:33:39.012Z], OS[Linux/5.5.9-arch1-2/amd64], JVM[Ubuntu/OpenJDK 64-Bit Server VM/11.0.6/11.0.6+10-post-Ubuntu-1ubuntu118.04.1]
2020.03.18 17:35:27 INFO  es[][o.e.n.Node] JVM arguments [-XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -Djdk.io.permissionsUseCanonicalPath=true, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j.skipJansi=true, -Xms512m, -Xmx512m, -XX:+HeapDumpOnOutOfMemoryError, -Des.path.home=/opt/sonarqube/sonarqube-7.3/elasticsearch]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [aggs-matrix-stats]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [ingest-common]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [parent-join]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [percolator]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [reindex]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] loaded module [transport-netty4]
2020.03.18 17:35:27 INFO  es[][o.e.p.PluginsService] no plugins loaded
2020.03.18 17:35:28 INFO  es[][o.e.d.DiscoveryModule] using discovery type [zen]

From sonar.log

2020.03.18 17:36:45 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /opt/sonarqube/sonarqube-7.3/temp
2020.03.18 17:36:45 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001
2020.03.18 17:36:45 INFO  app[][o.s.a.p.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/opt/sonarqube/sonarqube-7.3/elasticsearch]: /opt/sonarqube/sonarqube-7.3/elasticsearch/bin/elasticsearch -Epath.conf=/opt/sonarqube/sonarqube-7.3/temp/conf/es
2020.03.18 17:36:45 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
Unrecognized VM option 'UseParNewGC'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
2020.03.18 17:36:45 WARN  app[][o.s.a.p.AbstractProcessMonitor] Process exited with exit value [es]: 1
2020.03.18 17:36:45 INFO  app[][o.s.a.SchedulerImpl] Process [es] is stopped
2020.03.18 17:36:45 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
FATAL StatusLogger Interrupted before Log4j Providers could be loaded.
 java.lang.InterruptedException
        at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1261)
        at java.base/java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:317)
        at org.apache.logging.log4j.util.ProviderUtil.lazyInit(ProviderUtil.java:121)
        at org.apache.logging.log4j.util.ProviderUtil.hasProviders(ProviderUtil.java:108)
        at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:89)
        at org.elasticsearch.common.logging.ESLoggerFactory.getLogger(ESLoggerFactory.java:54)
        at org.elasticsearch.common.logging.Loggers.getLogger(Loggers.java:105)
        at org.elasticsearch.common.logging.Loggers.getLogger(Loggers.java:72)
        at org.elasticsearch.common.component.AbstractComponent.<init>(AbstractComponent.java:37)
        at org.elasticsearch.plugins.PluginsService.<init>(PluginsService.java:97)
        at org.elasticsearch.client.transport.TransportClient.newPluginService(TransportClient.java:101)
        at org.elasticsearch.client.transport.TransportClient.buildTemplate(TransportClient.java:126)
        at org.elasticsearch.client.transport.TransportClient.<init>(TransportClient.java:254)
        at org.sonar.application.es.EsConnectorImpl$MinimalTransportClient.<init>(EsConnectorImpl.java:104)
        at org.sonar.application.es.EsConnectorImpl.buildTransportClient(EsConnectorImpl.java:90)
        at org.sonar.application.es.EsConnectorImpl.getTransportClient(EsConnectorImpl.java:75)
        at org.sonar.application.es.EsConnectorImpl.getClusterHealthStatus(EsConnectorImpl.java:62)
        at org.sonar.application.process.EsProcessMonitor.checkStatus(EsProcessMonitor.java:90)
        at org.sonar.application.process.EsProcessMonitor.checkOperational(EsProcessMonitor.java:75)
        at org.sonar.application.process.EsProcessMonitor.isOperational(EsProcessMonitor.java:60)
        at org.sonar.application.process.SQProcess.refreshState(SQProcess.java:161)
        at org.sonar.application.process.SQProcess$EventWatcher.run(SQProcess.java:220)
ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by io.netty.util.internal.ReflectionUtil (file:/opt/sonarqube/sonarqube-7.3/lib/common/netty-common-4.1.13.Final.jar) to constructor java.nio.DirectByteBuffer(long,int)
WARNING: Please consider reporting this to the maintainers of io.netty.util.internal.ReflectionUtil
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
lrk commented 4 years ago

@thepenguinthatwants well i tend to only support OSes i use at work, but you are free to contribute if you want to add some supported OSes.

after reading your logs, it seem it can't create Java VM. The most common problem i know about that is memory configuration (more memory allocated than the system can offer).

Maybe you can check ES memory configurations and Sonar's one.

croensch commented 4 years ago

I can confirm this. SonarQube >7.9 requires JDK-11 and Ubuntu 18.04 comes with JDK-11. The UseParNewGC option is from JDK-8. Try this variable, it's the new default in the download from SonarSource:

sonar_search_java_opts: "-Xms512m -Xmx512m -XX:+HeapDumpOnOutOfMemoryError" # 7.9

This role sets some properties, while the download from SonarSource sets none, only hints at the defaults and alternatives. Maybe this role should set even less? I found no other conflicting properties at this moment tough. Edit: Yes and give it 3GB RAM :)

lrk commented 4 years ago

@croensch ok, could you contribute to the currently open PR, i have to admit i don't really have time to handle that right now. Thank you

lrk commented 4 years ago

and please add some version in the test matrix in travis tests to ensure backward compatibility if the default current version is still supported, otherwise, please update the default version