我正在尝试设置 SonarQube 7.8 版本。一旦我启动 sonar.sh 文件,它就会运行,但声纳停止后。
root@automation:/opt/sonarqube-7.8/bin/linux-x86-64# ./sonar.sh start
Starting SonarQube...
Started SonarQube.
root@automation:/opt/sonarqube-7.8/bin/linux-x86-64# ./sonar.sh status
SonarQube is not running.
我检查了日志,这就是我得到的:
--> Wrapper Started as Daemon
Launching a JVM...
Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
Copyright 1999-2006 Tanuki Software, Inc. All Rights Reserved.
2019.10.15 21:01:37 INFO app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /opt/sonarqube-7.8/temp
2019.10.15 21:01:37 INFO app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001
2019.10.15 21:01:37 INFO app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/opt/sonarqube-7.8/elasticsearch]: /opt/sonarqube-7.8/elasticsearch/bin/elasticsearch
2019.10.15 21:01:37 INFO app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
2019.10.15 21:01:38 INFO app[][o.e.p.PluginsService] no modules loaded
2019.10.15 21:01:38 INFO app[][o.e.p.PluginsService] loaded plugin [org.elasticsearch.transport.Netty4Plugin]
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
2019.10.15 21:01:41 WARN app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
2019.10.15 21:01:41 INFO app[][o.s.a.SchedulerImpl] Process[es] is stopped
2019.10.15 21:01:41 INFO app[][o.s.a.SchedulerImpl] SonarQube is stopped
<-- Wrapper Stopped
es.log 文件在这里:
2019.10.15 21:01:41 ERROR es[][o.e.b.Bootstrap] Exception
java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103) ~[elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) [elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) [elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) [elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) [elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) [elasticsearch-cli-6.8.0.jar:6.8.0]
at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-cli-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:116) [elasticsearch-6.8.0.jar:6.8.0]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) [elasticsearch-6.8.0.jar:6.8.0]
我不确定 SonarQube 为何停止。你能帮我吗?
已解决:
首先,不要以root用户身份运行sonarqube
创建用户
命令:useradd用户名(将用户名设置为sonaradmin(如果您不想更改任何命令)
创建密码命令:
passwd username
转到/opt/目录
3.1)将sonarqube.x.x.x重命名为sonarqube命令:
sudo mv sonarqube.x.x.x sonarqube
(X.X.X你应该更改目录名称)
更改权限命令:
chmod 775 -R sonarqube
(文件夹名称可能会更改Sonarqube)
将创建的用户添加到sonaradmin组命令:chown -R sonaradmin:sonaradmin sonarqube
转到:cd /opt/sonarqube/bin/linux-x86-64/
命令:su sonaradmin
输入密码
命令:
./sonar.sh start
命令:
./sonar.sh status
现在转到浏览器检查 http://localhost:9000/sonar
希望这有帮助......我也遇到过同样的问题,解决了
好的,我找到了解决方案。我所要做的就是改变
#RUN_AS_USER= in /opt/sonarqube-7.8/bin/linux-x86-64/sonar.sh line 48 to RUN_AS_USER=sonar
您的解决方案对我来说不起作用,因为控制台向我显示此消息(编辑 sonar.sh 文件后)
groups:“sonar”:没有这样的用户 chown: utente non valido: "声纳:声纳" su: 用户声纳不存在
如果 baya prakash reddy 的答案不起作用,那么你可以查看文档 https://docs.sonarqube.org/latest/requirements/requirements/ 其中说你必须确保:
vm.max_map_count 大于或等于 524288
你可以这样设置:
sysctl -w vm.max_map_count=524288
确保您的 sonarQube 服务器至少有 4GB RAM。我在安装具有 1GB RAM 的 SonarQube 后遇到了这个问题。将 SonarQube 作为声纳运行并不能解决问题。当我安装到具有 4GB RAM 的 RHL 上后,问题就解决了
我按照你的步骤操作,但它不适合我
[sonaradmin@ip-172-31-92-59 linux-x86-64]$ ./sonar.sh 状态 SonarQube 未运行。