【问题标题】:SonarQube does not come back up after I enable PostGres and set sonar.properties启用 PostGres 并设置 sonar.properties 后,SonarQube 没有恢复
【发布时间】:2017-11-26 02:13:01
【问题描述】:

设置 SonarQube 版本 6.4(内部版本 25310)并在出现未从上一个问题打开 9000 的问题后运行它: Setting up SonarQube on AWS using EC2

现在我正在尝试通过 AWS RDS 设置 PostGres:

  1. 安装 PostgreSQL 9.6.2
  2. 为 Sonar EC2 实例配置安全性以允许入站规则:
  3. PostGreSQl/TCP/5432/0.0.0.0/0, ::/0
  4. PostGreSQl/TCP/5432/Anywhere/0.0.0.0/0, ::/0
  5. PostGreSQl/TCP/5432/Custom/Sonar 安全组 --> 声纳实例组
  6. VI sonar.properties 文件
  7. sonar.jdbc.username=XXXXXX --> RDS 设置期间使用的用户名
  8. sonar.jdbc.password=XXXXXX --> RDS 设置期间使用的密码
  9. sonar.jdbc.url=jdbc:sonardbpostgre.XXXXXXXXX.us-east-1.rds.amazonaws.com:5432
  10. cd ../bin/linux-x86-64/
  11. ./sonar.sh restart

据我所知,我的配置中的某些内容并不满意,因为它确实尝试启动,因为我看到 pid 出现但随后它立即被杀死。

有什么建议吗?

如果我取消注释 sonar.properties 中的更改,它会在重新启动后恢复。

这是我尝试为数据库添加配置后看到的内容:

root@ip-172- linux-x86-64]# ls
lib  SonarQube.pid  sonar.sh  wrapper
[root@ip-172- linux-x86-64]# ./sonar.sh restart
Stopping SonarQube...
Stopped SonarQube.
Starting SonarQube...
Started SonarQube.
[root@ip-172- linux-x86-64]# ls
lib  sonar.sh  wrapper
[root@ip-172- linux-x86-64]# ls
lib  sonar.sh  wrapper
[root@ip-172- linux-x86-64]# ./sonar.sh restart
Stopping SonarQube...
SonarQube was not running.
Starting SonarQube...
Started SonarQube.
[root@ip-172- linux-x86-64]# ls
lib  SonarQube.pid  sonar.sh  wrapper
[root@ip-172- linux-x86-64]# ls
lib  sonar.sh  wrapper

【问题讨论】:

  • 2017-06-22 16:13:01 UTC::@:[2882]:WARNING: unrecognized configuration parameter "rds.logical_replication" 这是我在数据库实例中看到的唯一日志
  • 您在 SonarQube 服务器日志中看到了什么?
  • WrapperSimpleApp: Encountered an error running main: org.sonar.process.MessageException: Bad format of JDBC URL: jdbc:sonardbpostgre.XXXXXXX.us-east-1.rds.amazonaws.com:5432 org.sonar.process.MessageException: Bad format of JDBC URL: jdbc:sonardbpostgre.XXXXXX.us-east-1.rds.amazonaws.com:5432 有特定的格式吗?
  • 更新了 jdca URL 以包含`jdbc:postgresql://sonardbpostgre.~`,但仍然不会出现,但从 web.log 中得到了这个并看到了这个:java.lang.IllegalStateException: Can not connect to database. Please check connectivity and settings (see the properties prefixed by 'sonar.jdbc.'). 所以跟踪出

标签: linux amazon-web-services amazon-ec2 sonarqube sonarqube-ops


【解决方案1】:

PostgreSQL 的 JDBC URL 格式为jdbc:postgresql://<host>/<database>。在您的情况下,该属性应类似于 sonar.jdbc.url=jdbc:postgresql://xxx.us-east-1.rds.amazonaws.com:5432/sonarqube

【讨论】:

  • 017-06-22 20:54:15 UTC:172.31.22.8(38022):XXXXXX@sonarqube:[31172]:FATAL: database "sonarqube" does not exist
  • @isaacweathers ,您需要使用create database sonarqube 命令在您的postgres DB 服务器中创建第一个sonarqube 数据库,您可以使用一些命令行客户端到postgres 来完成。
  • 啊。说得通。让我今天早上试试,看看是否有帮助。谢谢@AmitK
  • 这就是@AmitK -- 一旦我通过pgadmin4-1.5 登录就更有意义了 -- 绝对是 PostGre 的有用工具。赞成你的答案。再次感谢。是否有在 AWS 中配置 EC2 实例运行 sonarqube 以使用 ELB/SSL 和 Route53 域的链接,还是我应该只查看文档?
  • @isaacweathers,很高兴我能在这里为您提供帮助。我不确定是否有包含所有要求的合并链接,尽管您可以按照每个步骤的各种其他链接进行操作。
猜你喜欢
  • 2018-12-14
  • 2015-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-31
  • 1970-01-01
  • 1970-01-01
  • 2015-07-27
相关资源
最近更新 更多