不多說,直接上干貨!
前期博客
apache-storm-0.9.6.tar.gz的集群搭建(3節點)(圖文詳解)
問題詳情
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/ 和 http://www.cnblogs.com/lchzls/ http://www.cnblogs.com/sunnyDream/
詳情請見:http://www.cnblogs.com/zlslch/p/7473861.html
人生苦短,我願分享。本公眾號將秉持活到老學到老學習無休止的交流分享開源精神,匯聚於互聯網和個人學習工作的精華干貨知識,一切來於互聯網,反饋回互聯網。
目前研究領域:大數據、機器學習、深度學習、人工智能、數據挖掘、數據分析。 語言涉及:Java、Scala、Python、Shell、Linux等 。同時還涉及平常所使用的手機、電腦和互聯網上的使用技巧、問題和實用軟件。 只要你一直關注和呆在群里,每天必須有收獲
對應本平台的討論和答疑QQ群:大數據和人工智能躺過的坑(總群)(161156071)