sonarqube:java.net.BindException: Address already in use



 啓動sonarqube服務後,從客戶端不能訪問主機。查詢日誌文件 /usr/local/sonarqube-5.0.1/logs/sonar.log 後,發現如下錯誤:


2016.06.20 18:31:25 INFO  sea[o.s.p.ProcessEntryPoint]  Starting search
2016.06.20 18:31:25 INFO  sea[o.s.s.SearchServer]  Starting Elasticsearch[sonarqube] on port 9001
2016.06.20 18:31:25 INFO  sea[o.elasticsearch.node]  [sonar-1466427684530] version[1.1.2], pid[4912], build[e511f7b/2014-05-22T12:27:39Z]
2016.06.20 18:31:25 INFO  sea[o.elasticsearch.node]  [sonar-1466427684530] initializing ...
2016.06.20 18:31:25 INFO  sea[o.e.plugins]  [sonar-1466427684530] loaded [], sites []
2016.06.20 18:31:27 INFO  sea[o.elasticsearch.node]  [sonar-1466427684530] initialized
2016.06.20 18:31:27 INFO  sea[o.elasticsearch.node]  [sonar-1466427684530] starting ...
2016.06.20 18:31:27 WARN  sea[o.s.p.ProcessEntryPoint]  Fail to start search
org.elasticsearch.transport.BindTransportException: Failed to bind to [9001]

......

java.net.BindException: Cannot assign requested address


解決問題:

問題的關鍵在於紅字給出的錯誤。 說明9001端口被別的程序佔用了(很可能是上次啓動遺留下來的elasticsearch進程佔用的)

# lsof -i:9001|more
COMMAND   PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    20598 root  184u  IPv4 10467575      0t0  TCP *:etlservicemgr (LISTEN)
java    20598 root  186u  IPv4 10481815      0t0  TCP svnhost.:34460->svnhost.:etlservicemgr (ESTABLISHED)
java    20598 root  187u  IPv4 10481117      0t0  TCP svnhost.:etlservicemgr->svnhost.:34460 (ESTABLISHED)
...


殺掉這個進程即可

# kill -9 20598

然後重新啓動SonarQube就好了



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章