2017-10-20 12 views
8

SonarQube 6.5から6.6にアップグレードした後にelasticsearchを取得すると "rootとして実行できません"というエラーが発生します。それ以外の変更はありません。SonarQube 6.5から6.6にアップグレードした後にelasticsearchを取得すると「ルートとして実行できません」エラーが発生します。他に変更されたものはありません

のCentOS 6.8(最終) のJava(TM)SEランタイム環境をリリース(ビルド1.8.0_101-B13)

java.lang.RuntimeException: can not run elasticsearch as root 
     at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:195) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.6.2.jar:5.6.2] 
2017.10.20 11:59:14 WARN es[][o.e.b.ElasticsearchUncaughtExceptionHandler] uncaught exception in thread [main] 
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root 
     at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.6.2.jar:5.6.2] 
Caused by: java.lang.RuntimeException: can not run elasticsearch as root 
     at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:195) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:342) ~[elasticsearch-5.6.2.jar:5.6.2] 
     at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) ~[elasticsearch-5.6.2.jar:5.6.2] 
     ... 6 more 
+1

ソフトウェアを実行しているユーザーを確認します。 [this](https://discuss.elastic.co/t/why-is-it-elasticsearch-is-not-allowed-to-run-as-root/60413/6)の記事を参照してください。 –

答えて

13

私はまた、CentOSに7上で、rootとしてSonarQubeを実行し、この問題を、経験していませんドッカー内。以前のコメントで述べたように、問題はSonarQubeのElasticSearchのアップグレードに起因し、新しいバージョンではルートとして実行することができなくなりました。

私の環境では、修正プログラムは簡単でした。私は既にソナーレベファイルを「所有」するユーザー(「ソナー」)とグループ(「ソナー」)を作成していました。私のSonarQubeプロセスはrootとして実行されていたので、rootが所有するログファイルと一時ファイルを残していました。
1.サービスを停止しました。
2.再割り当て全てownserships(「のchown -Rソナー:ソナー/opt/sonarqube-6.6」)
3. RUN_AS_USER=sonar/opt/sonarqube-6.6/bin/linux-x86-64/sonar.shライン48に#RUN_AS_USER=を変更しsonarqubeサービスとそのelasticsearchサービスの両方は、さらに、問題なく再起動しました。私はデータベースをアップグレードするためにhttp://<sonarhost:port>/setupに行かなくてはならず、そこからすべて正常に動作しました。

+3

この回答は、OP、@ RayeRaskinによって受け入れられるはずです。理由はhttps://stackoverflow.com/a/47733598/766786を参照してください。 –

関連する問題