问题详情
org.apache.thrift7.transport.TTransportException: java.net.ConnectException: Connection refused at org.apache.thrift7.transport.TSocket.open(TSocket.java:183) at org.apache.thrift7.transport.TFramedTransport.open(TFramedTransport.java:81) at backtype.storm.thrift$nimbus_client_and_conn.invoke(thrift.clj:75) at backtype.storm.ui.core$supervisor_summary.invoke(core.clj:501) at backtype.storm.ui.core$fn__8394.invoke(core.clj:849) at compojure.core$make_route$fn__5980.invoke(core.clj:93) at compojure.core$if_route$fn__5968.invoke(core.clj:39) at compojure.core$if_method$fn__5961.invoke(core.clj:24) at compojure.core$routing$fn__5986.invoke(core.clj:106) at clojure.core$some.invoke(core.clj:2443) at compojure.core$routing.doInvoke(core.clj:106) at clojure.lang.RestFn.applyTo(RestFn.java:139) at clojure.core$apply.invoke(core.clj:619) at compojure.core$routes$fn__5990.invoke(core.clj:111) at ring.middleware.reload$wrap_reload$fn__7706.invoke(reload.clj:14) at backtype.storm.ui.core$catch_errors$fn__8437.invoke(core.clj:909) at ring.middleware.keyword_params$wrap_keyword_params$fn__6644.invoke(keyword_params.clj:27) at ring.middleware.nested_params$wrap_nested_params$fn__6683.invoke(nested_params.clj:65) at ring.middleware.params$wrap_params$fn__6616.invoke(params.clj:55) at ring.middleware.multipart_params$wrap_multipart_params$fn__6711.invoke(multipart_params.clj:103) at ring.middleware.flash$wrap_flash$fn__6892.invoke(flash.clj:14) at ring.middleware.session$wrap_session$fn__6881.invoke(session.clj:43) at ring.middleware.cookies$wrap_cookies$fn__6812.invoke(cookies.clj:160) at ring.adapter.jetty$proxy_handler$fn__7659.invoke(jetty.clj:16) at ring.adapter.jetty.proxy$org.mortbay.jetty.handler.AbstractHandler$0.handle(Unknown Source) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) Caused by: java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:579) at org.apache.thrift7.transport.TSocket.open(TSocket.java:178) ... 33 more
解决办法
解决方式1、查看自己的storm.yaml配置文件,是否出现如下的情况。有手误拼错等
解决方式2、注意第一列需要一个空格
解决办法3、对于strom集群的启动顺序,要是如下。(注意,也许你在调试解决这个问题时,没有完全停掉再启动)
1、先在master上启动
storm nimbus &
jps出现nimbus
2、再在master上启动
storm ui &
jps出现core
3、最后在slave1和slave2上启动 supervisor
storm supervisor &
jps出现supervisor
或者直接用后台方式来运行(推荐)
- 启动nimbus后台运行:bin/storm nimbus < /dev/null 2<&1 &
- 启动supervisor后台运行:bin/storm supervisor < /dev/null 2<&1 &
- 启动ui后台运行:bin/storm ui < /dev/null 2<&1 &
解决办法4:
备注:如果你的机器的网络地址存在ipv6的地址,storm启动的时候默认是启用ipv6的地址,但实际上storm是不能使用ipv6的地址,故需在启动脚本中(storm)增加
-Djava.net.preferIPv4Stack=true
如果使用了ipv6有可能进程启动是正常的,但是在访问stormui的时候,页面会提示本博文的错误。
成功!
http://master:9999/index.html
本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/6884913.html,如需转载请自行联系原作者