SonarQube:更改弹性搜索客户端主机

时间:2015-02-18 21:15:33

标签: sonarqube openshift sonarqube-5.0 sonarqube-4.5 openshift-cartridge

简而言之:有没有办法在SonarQube使用的弹性搜索客户端中更改目标地址?

更多信息:我很乐意使用SonarQube> 4.1关于OpenShift。不幸的是,您无法在该环境中绑定到localhost。因此these guys更改了service wrapper to piped mode并使用sonar.web.host属性设置了SonarQube 4.0。从SonarQube 4.1开始,我们还将有弹性搜索服务器尝试绑定到localhost,这会导致启动时崩溃。但是没有sonar.search.host属性(类似于sonar.search.port),是吗?

作为解决方法,可以使用sonar.search.javaAdditionalOptses.network.host参数更改服务器的绑定。 是的,我知道,I shouldn't be doing this。因为现在应用程序崩溃了NoNodeAvailableException : No node available。这就是为什么我正在寻找改变这种情况的方法。
查看SonarQubes source code,我假设客户端的目标地址是硬编码的。 (不过我可能会弄错了)

我认为没有解决方案,我们绝不会在OpenShift或任何其他具有严格安全策略的环境中运行SonarQube 5.0。

有人能想到另一种解决方法吗? 也许改变Java对“localhost”/ loopback接口的定义?但是,如果没有root访问权限,更改/etc/hosts将无效。还有其他想法吗?

修改:如果您想自己查看here's how far I got so farbuild file是必不可少的部分。

2 个答案:

答案 0 :(得分:2)

这可以从SonarQube 5.2, using the sonar.search.host property开始 有关如何在OpenShift上部署此示例的示例,请参阅here

答案 1 :(得分:0)

在Sonar 5.2中可以设置这些属性,请参阅here。我已经尝试过并且它有效(我在Sonar 5.1源代码中更改了此类以允许配置这些ES属性,请参阅here)。