elasticsearch SonarQube 6.7无法启动,因为未将CONFIG_SECCOMP编译到内核中,elasticsearch,sonarqube,elasticsearch,Sonarqube" /> elasticsearch SonarQube 6.7无法启动,因为未将CONFIG_SECCOMP编译到内核中,elasticsearch,sonarqube,elasticsearch,Sonarqube" />

elasticsearch SonarQube 6.7无法启动,因为未将CONFIG_SECCOMP编译到内核中

elasticsearch SonarQube 6.7无法启动,因为未将CONFIG_SECCOMP编译到内核中,elasticsearch,sonarqube,elasticsearch,Sonarqube,我刚刚将运行在CentOS 6机箱中的SonarQube从6.0升级到6.7 LTS,并注意到ElasticSearch(ES)无法启动,因为内核(2.6.32-696.3.1.el6.x86_64)没有可用的 这在中有正式的记录,对于没有此功能的系统,正确的解决方法是在elasticsearch.yml中将bootstrap.system\u call\u filter配置为false 这里的问题是因为Sonar在启动时创建ES配置,写入$Sonar\u HOME/temp/conf/ES/e

我刚刚将运行在CentOS 6机箱中的SonarQube从6.0升级到6.7 LTS,并注意到ElasticSearch(ES)无法启动,因为内核(2.6.32-696.3.1.el6.x86_64)没有可用的

这在中有正式的记录,对于没有此功能的系统,正确的解决方法是在
elasticsearch.yml
中将
bootstrap.system\u call\u filter
配置为false

这里的问题是因为Sonar在启动时创建ES配置,写入
$Sonar\u HOME/temp/conf/ES/elasticsearch.yml
,而我还没有找到设置
bootstrap.system\u call\u filter
属性的方法


我尝试了一种自然的(没有文档记录的)方式,在
sonar.properties
中引入
sonar.search.bootstrap.system\u call\u filter
bootstrap.system\u call\u filter
属性,但它不起作用。

你真的可以欺骗和编辑
/${sonar\u HOME}/elasticsearch/bin/elasticsearch


在设置“demonized”变量之前。

您好,我试图将bootstrap.system_call_filter:“false”回传到temp/conf/es/elasticsearch.yml,我看到了该文件中的行,但在centos6上启动sonarqube 6.7时遇到了相同的错误


有人成功地测试过吗?

我们也有同样的问题。起初,我们使用上述解决方案,但在github上搜索sonar代码后,找到了应放置此设置的位置:

编辑sonar.properties文件并更改行:

#sonar.search.javaAdditionalOpts=


sonar.search.javaAdditionalOpts=-Dbootstrap.system\u call\u filter=false
首先:不要尝试更新
elasticsearch.yml
。SonarQube自行管理其ElasticSearch组件配置,因此任何手动干预的尝试都是有害的。(提醒:操作SonarQube时唯一需要修改的配置文件是
sonar.properties

更有趣的是,关于
seccomp
组件:

  • seccomp
    要求确实来自,并可过渡地适用于操作SonarQube
  • 如果您使用默认配置在本地运行SonarQube(特别是:default sonar.search.host),则
    seccomp
    检查可能不是致命的(即只是一个警告)
  • 如果您确实覆盖了sonar.search.host,那么您首先应该想知道的是:除了环回之外,ElasticSearch JVM真的需要监听其他接口吗?(知道SonarQube在本地使用ES,数据中心版除外)。如果没有很好的答案,那么将sonar.search.host保持为其默认值

最后但并非最不重要的一点是,这里的黄金路径显然是遵循要求(即在操作系统上提供
seccomp
),即使这涉及升级到更新的Linux内核。总而言之:我们进行了编辑,以透明地分享这种情况。

我还尝试通过环境变量替换在sonar.sh中设置ES\u BOOTSTRAP\u SYSTEM\u CALL\u FILTER=false来配置elastic。它不起作用。同意,但这证实了没有正式且优雅的方法可以做到这一点?这是在seccomp未编译到内核的地方启动SonarQube的正确方法。如果有帮助,它位于文件夹/conf文件夹内部和第215行。
echo "bootstrap.system_call_filter = 'false'" >> 
/${SONAR_HOME}/temp/conf/es/elasticsearch.yml