2015-01-11 2 views
3

검색을 시작할 때 openshift 인스턴스에 최신 버전의 sonar를 설치하려고하는데, 0.0.0.0:9001에 바인딩하려고 시도하지만 openshift가 모든 인터페이스에 바인딩 할 수 없으므로 IP를 설정하려면 구성에서이 등록 정보를 설정할 수 있습니까?Openshift sonarqube

이미 사전에이 같은

# Binding IP address. For servers with more than one IP address, this property specifies which 
# address will be used for listening on the specified ports. 
# By default, ports will be used on all IP addresses associated with the server. 
sonar.web.host=${env:OPENSHIFT_DIY_IP} 

감사 바인딩을위한 수중 음파 탐지기의 IP를 구성

가 직접 IP를 할당하도록 [편집]

나는 설정 파일을 변경 한

,하지만 여전히 동일한 오류가 있습니다, 설정을 무시합니까?

2015.01.13 20:09:47 WARN sea[o.s.p.ProcessEntryPoint] Starting search 
2015.01.13 20:09:47 INFO sea[o.s.s.SearchServer] Starting ES[sonarqube] on port: 15000 
2015.01.13 20:09:47 INFO sea[o.elasticsearch.node] [sonar-1421197785954] version[1.1.2], pid[286110], build[e511f7b/2014-05-22T12:27:39Z] 
2015.01.13 20:09:47 INFO sea[o.elasticsearch.node] [sonar-1421197785954] initializing ... 
2015.01.13 20:09:47 INFO sea[o.e.plugins] [sonar-1421197785954] loaded [], sites [] 
2015.01.13 20:09:51 INFO sea[o.elasticsearch.node] [sonar-1421197785954] initialized 
2015.01.13 20:09:51 INFO sea[o.elasticsearch.node] [sonar-1421197785954] starting ... 
2015.01.13 20:09:52 WARN sea[o.s.p.ProcessEntryPoint] Fail to start search 
org.elasticsearch.transport.BindTransportException: Failed to bind to [15000] 
    at org.elasticsearch.transport.netty.NettyTransport.doStart(NettyTransport.java:381) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:85) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.transport.TransportService.doStart(TransportService.java:92) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:85) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.node.internal.InternalNode.start(InternalNode.java:229) ~[elasticsearch-1.1.2.jar:na] 
    at org.sonar.search.SearchServer.start(SearchServer.java:135) [sonar-search-4.5.2.jar:na] 
    at org.sonar.process.ProcessEntryPoint.launch(ProcessEntryPoint.java:77) ~[sonar-process-4.5.2.jar:na] 
    at org.sonar.search.SearchServer.main(SearchServer.java:261) [sonar-search-4.5.2.jar:na] 
Caused by: org.elasticsearch.common.netty.channel.ChannelException: Failed to bind to: 0.0.0.0/0.0.0.0:15000 
    at org.elasticsearch.common.netty.bootstrap.ServerBootstrap.bind(ServerBootstrap.java:272) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.transport.netty.NettyTransport$3.onPortNumber(NettyTransport.java:372) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.transport.PortsRange.iterate(PortsRange.java:58) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.transport.netty.NettyTransport.doStart(NettyTransport.java:368) ~[elasticsearch-1.1.2.jar:na] 
    ... 7 common frames omitted 
java.net.SocketException: Permiso denegado 
    at sun.nio.ch.Net.bind0(Native Method) ~[na:1.7.0_71] 
    at sun.nio.ch.Net.bind(Net.java:444) ~[na:1.7.0_71] 
    at sun.nio.ch.Net.bind(Net.java:436) ~[na:1.7.0_71] 
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214) ~[na:1.7.0_71] 
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) ~[na:1.7.0_71] 
    at org.elasticsearch.common.netty.channel.socket.nio.NioServerBoss$RegisterTask.run(NioServerBoss.java:193) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.processTaskQueue(AbstractNioSelector.java:372) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:296) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.netty.channel.socket.nio.NioServerBoss.run(NioServerBoss.java:42) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) ~[elasticsearch-1.1.2.jar:na] 
    at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) ~[elasticsearch-1.1.2.jar:na] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_71] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ~[na:1.7.0_71] 
    at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_71] 
+0

최신 버전을 의미합니까? – CSchulz

+1

"$ {env : OPENSHIFT_DIY_IP}"가 작동하지 않습니다. https://jira.codehaus.org/browse/SONAR-3682 –

+0

@CSchulz 버전 4.5.2 – jaxkodex

답변

1

${env:OPENSHIFT_DIY_IP} 환경 변수가 아직 처리되지 않아 작동하지 않습니다.

당신은 these guys did 같은 빌드 스크립트의 변수를 대체 할 수있는보고 http://jira.codehaus.org/browse/SONAR-3682

+0

그래서, 나는 env 변수를 사용하지 않으려 고 노력했다. 그래서 나는 직접 ip를 asssigned했다 ... 그것은 설정을 완벽하게 무시한다. 내 질문에 오류가 편집했습니다. – jaxkodex

+0

sonar.properties 파일의 내용을 표시 할 수 있습니까? (예 : http://pastebin.com에 넣으십시오). 감사합니다 –

+0

안녕하세요, 지연에 대해 죄송합니다, 여기 내 configs입니다 https://gist.github.com/jaxkodex/468d3c53dc32a4fdaa3c – jaxkodex

0

에게 투표 해주십시오.
당신의 편집의 문제는 빌드

# Adapt elasticsearch host 
sed -i "s/^#sonar.search.javaAdditionalOpts=.*$/sonar.search.javaAdditionalOpts=-Des.network.host=$OPENSHIFT_DIY_IP/" sonar.properties 
# Adapt elasticsearch host to be in permitted range 15000-35530 for openshift, as specified here: https://help.openshift.com/hc/en-us/articles/202185874 
sed -i "s/^#sonar.search.port=.*$/sonar.search.port=35530/" sonar.properties 

이를 추가하여 방지 할 수 있습니다하지만 당신은 NoNodeAvailableException: No node available하게 될 겁니다. 나는 그 특정 질문을 here에게 물었다. 다행히도, 누군가는 이것을 해결하는 방법에 대한 아이디어로 나타납니다.