Sonar下启动发生错误,elasticsearch启动错误

 Download | SonarQube | Sonar (sonarsource.com)

1.首先我的sonar版本为 10.4.1 ,java版本为17

2.sonar启动需要数据库,我先安装了mysql, 但是目前sonar从7.9开始不支持mysql,且java版本要最少11,推荐使用java17

3.安装postsql,创建sonar数据库

4.启动sonar发生错误

5.检查日志

首先检查sonar.log

再检查es.log

6.加大文件描述符数量和虚拟内存大小

临时修改文件描述符: ulimit -n 65535

永久修改文件描述符: cat >> /etc/security/limits.conf << EOF

                                   * soft nofile 65535

                                   * hard nofile 65535

                                   EOF

临时修改虚拟内存大小 sysctl -w vm.max_map_count=262144

永久修改虚拟内存大小 cat >> /etc/sysctl.conf << EOF

                                        vm.max_map_count=262144

                                        EOF

                                        sysctl -p

7. 再次查看日志

lsof /opt/sonar/data/es8/node.lock 查看是否被其他进程占用

ls -ld /opt/sonar/data/es8   检查是否有足够的权限

rm -rf /opt/sonar/data/es8/node.lock 删除该文件可能会解决问题

8.再次检查日志,发现没有任何错误,可能是版本问题(我安装的是最新版的sonar)

2024.04.11 10:21:09 INFO  es[][o.e.n.Node] JVM home [/usr/lib/jvm/jdk-17-oracle-x64], using bundled JDK [false]
2024.04.11 10:21:09 INFO  es[][o.e.n.Node] JVM arguments [-Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -Djava.security.manager=allow, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j2.formatMsgNoLookups=true, -Djava.locale.providers=SPI,COMPAT, --add-opens=java.base/java.io=org.elasticsearch.preallocate, -XX:+UseG1GC, -Djava.io.tmpdir=/opt/sonar/temp, -XX:ErrorFile=/opt/sonar/logs/es_hs_err_pid%p.log, -Xlog:disable, -Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -Djna.tmpdir=/opt/sonar/temp, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dio.netty.allocator.numDirectArenas=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j2.formatMsgNoLookups=true, -Djava.locale.providers=COMPAT, -Dcom.redhat.fips=false, -Des.enforce.bootstrap.checks=true, -Xmx512m, -Xms512m, -XX:MaxDirectMemorySize=256m, -XX:+HeapDumpOnOutOfMemoryError, -XX:G1HeapRegionSize=4m, -XX:InitiatingHeapOccupancyPercent=30, -XX:G1ReservePercent=15, -Des.distribution.type=tar, --module-path=/opt/sonar/elasticsearch/lib, --add-modules=jdk.net, --add-modules=ALL-MODULE-PATH, -Djdk.module.main=org.elasticsearch.server]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [x-pack-core]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [old-lucene-versions]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [parent-join]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [lang-painless]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [rest-root]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [x-pack-redact]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [reindex]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [analysis-common]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [x-pack-security]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [transport-netty4]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [apm]
2024.04.11 10:21:11 INFO  es[][o.e.p.PluginsService] loaded module [aggregations]
2024.04.11 10:21:16 INFO  es[][o.e.e.NodeEnvironment] using [1] data paths, mounts [[/ (/dev/mapper/centos-root)]], net usable_space [12.7gb], net total_space [16.9gb], types [xfs]
2024.04.11 10:21:16 INFO  es[][o.e.e.NodeEnvironment] heap size [512mb], compressed ordinary object pointers [true]
2024.04.11 10:21:16 INFO  es[][o.e.n.Node] node name [sonarqube], node ID [0VhLHUqqTP2MePAyZ55RvQ], cluster name [sonarqube], roles [data_cold, data, remote_cluster_client, master, data_warm, data_content, transform, data_hot, ml, data_frozen, ingest]
2024.04.11 10:21:18 INFO  es[][o.e.x.s.Security] Security is disabled
2024.04.11 10:21:19 INFO  es[][o.e.t.n.NettyAllocator] creating NettyAllocator with the following configs: [name=unpooled, suggested_max_allocation_size=1mb, factors={es.unsafe.use_unpooled_allocator=null, g1gc_enabled=true, g1gc_region_size=4mb, heap_size=512mb}]
2024.04.11 10:21:19 INFO  es[][o.e.i.r.RecoverySettings] using rate limit [40mb] with [default=40mb, read=0b, write=0b, max=0b]
2024.04.11 10:21:19 INFO  es[][o.e.d.DiscoveryModule] using discovery type [single-node] and seed hosts providers [settings]
2024.04.11 10:21:20 INFO  es[][o.e.n.Node] initialized
2024.04.11 10:21:20 INFO  es[][o.e.n.Node] starting ...
2024.04.11 10:21:22 INFO  es[][o.e.t.TransportService] publish_address {127.0.0.1:34806}, bound_addresses {127.0.0.1:34806}
2024.04.11 10:21:22 INFO  es[][o.e.b.BootstrapChecks] explicitly enforcing bootstrap checks
2024.04.11 10:21:22 INFO  es[][o.e.c.c.ClusterBootstrapService] this node is locked into cluster UUID [7GnAZLRhS5qMVgXaYkkG6g] and will not attempt further cluster bootstrapping
2024.04.11 10:21:23 INFO  es[][o.e.c.s.MasterService] elected-as-master ([1] nodes joined in term 2)[_FINISH_ELECTION_, {sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}{7twHHZMPRIKjHxwRYG01Yg}{sonarqube}{127.0.0.1}{127.0.0.1:34806}{cdfhilmrstw}{8.11.0}{7000099-8500003} completing election], term: 2, version: 6, delta: master node changed {previous [], current [{sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}{7twHHZMPRIKjHxwRYG01Yg}{sonarqube}{127.0.0.1}{127.0.0.1:34806}{cdfhilmrstw}{8.11.0}{7000099-8500003}]}
2024.04.11 10:21:23 INFO  es[][o.e.c.s.ClusterApplierService] master node changed {previous [], current [{sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}{7twHHZMPRIKjHxwRYG01Yg}{sonarqube}{127.0.0.1}{127.0.0.1:34806}{cdfhilmrstw}{8.11.0}{7000099-8500003}]}, term: 2, version: 6, reason: Publication{term=2, version=6}
2024.04.11 10:21:23 INFO  es[][o.e.c.f.AbstractFileWatchingService] starting file watcher ...
2024.04.11 10:21:23 INFO  es[][o.e.c.c.NodeJoinExecutor] node-join: [{sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}{7twHHZMPRIKjHxwRYG01Yg}{sonarqube}{127.0.0.1}{127.0.0.1:34806}{cdfhilmrstw}{8.11.0}{7000099-8500003}] with reason [completing election]
2024.04.11 10:21:23 INFO  es[][o.e.c.f.AbstractFileWatchingService] file settings service up and running [tid=30]
2024.04.11 10:21:23 INFO  es[][o.e.h.AbstractHttpServerTransport] publish_address {127.0.0.1:9001}, bound_addresses {127.0.0.1:9001}
2024.04.11 10:21:23 INFO  es[][o.e.n.Node] started {sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}{7twHHZMPRIKjHxwRYG01Yg}{sonarqube}{127.0.0.1}{127.0.0.1:34806}{cdfhilmrstw}{8.11.0}{7000099-8500003}{xpack.installed=true, rack_id=sonarqube}
2024.04.11 10:21:23 INFO  es[][o.e.l.ClusterStateLicenseService] license [70360a8b-3b41-40b1-8b48-a9818b38d002] mode [basic] - valid
2024.04.11 10:21:23 INFO  es[][o.e.g.GatewayService] recovered [0] indices into cluster_state
2024.04.11 10:21:23 INFO  es[][o.e.h.n.s.HealthNodeTaskExecutor] Node [{sonarqube}{0VhLHUqqTP2MePAyZ55RvQ}] is selected as the current health node.
2024.04.11 10:21:29 INFO  es[][o.e.n.Node] stopping ...
2024.04.11 10:21:29 INFO  es[][o.e.c.f.AbstractFileWatchingService] shutting down watcher thread
2024.04.11 10:21:29 INFO  es[][o.e.c.f.AbstractFileWatchingService] watcher service stopped
2024.04.11 10:21:29 INFO  es[][o.e.n.Node] stopped
2024.04.11 10:21:29 INFO  es[][o.e.n.Node] closing ...
2024.04.11 10:21:29 INFO  es[][o.e.n.Node] closed

9.下载sonar低版本 sonar-9.9.4   Download | SonarQube | Sonar (sonarsource.com)

重新安装配置,发现sonar启动成功

10.总结

在sonar中环境和版本配置比较重要

#在sonar现在的版本中已经不支持mysql了,推荐使用postsql

推荐sonar 9.9.4 java 17 postsql 15 

在安装过程中还有许多问题: 

1. postsql的模式 建议删掉默认是public

#----- PostgreSQL 11 or greater
# By default the schema named "public" is used. It can be overridden with the parameter "currentSchema".
sonar.jdbc.url=jdbc:postgresql://localhost/sonar

2.sonar和es的启动要用 sonar或者其他用户启动,因为安全问题elasticsearch 不让用root用户直接运行

su sonar /opt/sonar/bin/linux-x86-64/sonar.sh start

3. sonar文件夹和文件下的内容必须要所属属于启动的的用于

chmod -R sonar:sonar /opt/sonar

4.可能端口被占用

5.内存不足

6.jdk不兼容

7.当重新启动后,发现sonar中的es还是启动不了

解决办法 删除/opt/sonar/tmp/* 下的所有内容,删除临时文件,重新启动

  • 24
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值