2015-05-04 31 views
1

我在關注http://jayatiatblogs.blogspot.com/2011/11/storm-installation.html,嘗試使用少量虛擬機(EC2)與Amazon Web Services上的Ubuntu 14.04 LTS配置Apache Storm遠程羣集。無法在Apache Storm羣集中使用遠程從屬節點

我的主節點是10.0.0.230,我的從節點是10.0.0.79。我的動物園管理員駐留在我的主節點中。當我在主節點使用風暴罐風暴起動0.9.4-罐與 - dependencies.jar storm.starter.RollingTopWords生產拓撲遠程,下面出現的消息,指示它被成功提交:

339 [main] INFO storm.starter.RollingTopWords - Topology name: production-topology 
377 [main] INFO storm.starter.RollingTopWords - Running in remote (cluster) mode 
651 [main] INFO backtype.storm.StormSubmitter - Jar not uploaded to master yet. Submitting jar... 
655 [main] INFO backtype.storm.StormSubmitter - Uploading topology jar storm-starter-0.9.4-jar-with-dependencies.jar to assigned location: /home/ubuntu/storm/data/nimbus/inbox/stormjar-380bb1a2-1699-4ad1-8341-3d4b92c14764.jar 
672 [main] INFO backtype.storm.StormSubmitter - Successfully uploaded topology jar to assigned location: /home/ubuntu/storm/data/nimbus/inbox/stormjar-380bb1a2-1699-4ad1-8341-3d4b92c14764.jar 
672 [main] INFO backtype.storm.StormSubmitter - Submitting topology production-topology in distributed mode with conf {"topology.debug":true} 
714 [main] INFO backtype.storm.StormSubmitter - Finished submitting topology: production-topology 

的Stoum UI & 風暴列表命令表明,該拓撲結構是活性:

Topology_name  Status  Num_tasks Num_workers Uptime_secs 
------------------------------------------------------------------- 
production-topology ACTIVE  0   0   59 

然而,在Storm UI的集羣摘要,有0個管理員,0個使用的插槽,0個空閒插槽,0個執行器,0個任務。在拓撲配置,supervisor.slots.ports表明它使用主節點的默認管理引擎槽位端口,而不是從屬節點的管理引擎槽位端口。

下面是我的我的主節點的zoo.cfg:我的主節點的

tickTime=2000 
dataDir=/home/ubuntu/zookeeper-data 
clientPort=2181 

storm.yaml:中

storm.zookeeper.servers: 
    - "10.0.0.230" 
storm.zookeeper.port: 2181 

nimbus.host: "localhost" 
nimbus.thrift.port: 6627 
nimbus.task.launch.secs: 240 

supervisor.worker.start.timeout.secs: 240 
supervisor.worker.timeout.secs: 240 

storm.local.dir: "/home/ubuntu/storm/data" 
java.library.path: "/usr/lib/jvm/java-7-oracle" 

storm.yaml我從節點:

storm.zookeeper.server: 
    - "10.0.0.230" 
storm.zookeeper.port: 2181 
nimbus.host: "10.0.0.230" 
nimbus.thrift.port: 6627 

storm.local.dir: "/home/ubuntu/storm/data" 
java.library.path: "/usr/lib/jvm/java-7-oracle" 

supervisor.slots.ports: 
    - 6700 
    - 6701 
    - 6702 
    - 6703 
    - 6704 

我不得不使用zkCli.sh -server 10.0.0.230:2181在主節點連接到動物園管理員,它工作正常:

2015-05-04 03:40:20,866 [myid:] - INFO [main:[email protected]] - Initiating client connection, connectString=10.0.0.230:2181 sessionTimeout=30000 [email protected] 
2015-05-04 03:40:20,888 [myid:] - INFO [main-SendThread(10.0.0.230:2181):[email protected]] - Opening socket connection to server 10.0.0.230/10.0.0.230:2181. Will not attempt to authenticate using SASL (unknown error) 
Welcome to ZooKeeper! 
2015-05-04 03:40:20,900 [myid:] - INFO [main-SendThread(10.0.0.230:2181):[email protected]] - Socket connection established to 10.0.0.230/10.0.0.230:2181, initiating session 
JLine support is enabled 
2015-05-04 03:40:20,918 [myid:] - INFO [main-SendThread(10.0.0.230:2181):[email protected]] - Session establishment complete on server 10.0.0.230/10.0.0.230:2181, sessionid = 0x14d1ca1ab73001c, negotiated timeout = 30000 

WATCHER:: 

WatchedEvent state:SyncConnected type:None path:null 
[zk: 10.0.0.230:2181(CONNECTED) 0] 

以下是從我的從節點監督員日誌:

2015-05-06T06:16:28.487+0000 o.a.s.z.ClientCnxn [INFO] Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error) 
2015-05-06T06:16:28.487+0000 o.a.s.z.ClientCnxn [WARN] Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect 
java.net.ConnectException: Connection refused 
     at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.7.0_80] 
     at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:744) ~[na:1.7.0_80] 
     at org.apache.storm.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:361) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1081) ~[storm-core-0.9.4.jar:0.9.4] 
2015-05-06T06:16:28.589+0000 b.s.d.supervisor [ERROR] Error on initialization of server mk-supervisor 
java.lang.RuntimeException: org.apache.storm.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /storm 
     at backtype.storm.util$wrap_in_runtime.invoke(util.clj:44) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.zookeeper$exists_node_QMARK_$fn__807.invoke(zookeeper.clj:102) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.zookeeper$exists_node_QMARK_.invoke(zookeeper.clj:98) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.zookeeper$mkdirs.invoke(zookeeper.clj:114) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.cluster$mk_distributed_cluster_state.invoke(cluster.clj:43) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.cluster$mk_storm_cluster_state.invoke(cluster.clj:238) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.daemon.supervisor$supervisor_data.invoke(supervisor.clj:214) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.daemon.supervisor$fn__5518$exec_fn__1754__auto____5519.invoke(supervisor.clj:409) ~[storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.AFn.applyToHelper(AFn.java:167) [clojure-1.5.1.jar:na] 
     at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na] 
     at clojure.core$apply.invoke(core.clj:617) ~[clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor$fn__5518$mk_supervisor__5544.doInvoke(supervisor.clj:405) [storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.RestFn.invoke(RestFn.java:436) [clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor$_launch.invoke(supervisor.clj:629) [storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.daemon.supervisor$_main.invoke(supervisor.clj:659) [storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.AFn.applyToHelper(AFn.java:159) [clojure-1.5.1.jar:na] 
     at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor.main(Unknown Source) [storm-core-0.9.4.jar:0.9.4] 
Caused by: org.apache.storm.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /storm 
     at org.apache.storm.zookeeper.KeeperException.create(KeeperException.java:99) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.zookeeper.KeeperException.create(KeeperException.java:51) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.zookeeper.ZooKeeper.exists(ZooKeeper.java:1045) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:172) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:161) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.RetryLoop.callWithRetry(RetryLoop.java:107) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.framework.imps.ExistsBuilderImpl.pathInForeground(ExistsBuilderImpl.java:157) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:148) ~[storm-core-0.9.4.jar:0.9.4] 
     at org.apache.storm.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:36) ~[storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.zookeeper$exists_node_QMARK_$fn__807.invoke(zookeeper.clj:101) ~[storm-core-0.9.4.jar:0.9.4] 
     ... 16 common frames omitted 
2015-05-06T06:16:28.607+0000 b.s.util [ERROR] Halting process: ("Error on initialization") 
java.lang.RuntimeException: ("Error on initialization") 
     at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:325) [storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor$fn__5518$mk_supervisor__5544.doInvoke(supervisor.clj:405) [storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.RestFn.invoke(RestFn.java:436) [clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor$_launch.invoke(supervisor.clj:629) [storm-core-0.9.4.jar:0.9.4] 
     at backtype.storm.daemon.supervisor$_main.invoke(supervisor.clj:659) [storm-core-0.9.4.jar:0.9.4] 
     at clojure.lang.AFn.applyToHelper(AFn.java:159) [clojure-1.5.1.jar:na] 
     at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na] 
     at backtype.storm.daemon.supervisor.main(Unknown Source) [storm-core-0.9.4.jar:0.9.4] 

下面是我的靈氣日誌從我的主節點:

2015-05-06T06:14:19.291+0000 b.s.d.nimbus [INFO] Using default scheduler 
2015-05-06T06:14:19.304+0000 b.s.u.StormBoundedExponentialBackoffRetry [INFO] The baseSleepTimeMs [1000] the maxSleepTimeMs [30000] the maxRetries [5] 
2015-05-06T06:14:19.415+0000 o.a.s.c.f.i.CuratorFrameworkImpl [INFO] Starting 
2015-05-06T06:14:19.417+0000 o.a.s.z.ZooKeeper [INFO] Initiating client connection, connectString=10.0.0.230:2181 sessionTimeout=20000 [email protected] 
2015-05-06T06:14:19.436+0000 o.a.s.z.ClientCnxn [INFO] Opening socket connection to server 10.0.0.230/10.0.0.230:2181. Will not attempt to authenticate using SASL (unknown error) 
2015-05-06T06:14:19.448+0000 o.a.s.z.ClientCnxn [INFO] Socket connection established to 10.0.0.230/10.0.0.230:2181, initiating session 
2015-05-06T06:14:19.457+0000 o.a.s.z.ClientCnxn [INFO] Session establishment complete on server 10.0.0.230/10.0.0.230:2181, sessionid = 0x14d27dbda310000, negotiated timeout = 20000 
2015-05-06T06:14:19.459+0000 o.a.s.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED 
2015-05-06T06:14:19.460+0000 b.s.zookeeper [INFO] Zookeeper state update: :connected:none 
2015-05-06T06:14:20.485+0000 o.a.s.z.ClientCnxn [INFO] EventThread shut down 
2015-05-06T06:14:20.485+0000 o.a.s.z.ZooKeeper [INFO] Session: 0x14d27dbda310000 closed 
2015-05-06T06:14:20.486+0000 b.s.u.StormBoundedExponentialBackoffRetry [INFO] The baseSleepTimeMs [1000] the maxSleepTimeMs [30000] the maxRetries [5] 
2015-05-06T06:14:20.487+0000 o.a.s.c.f.i.CuratorFrameworkImpl [INFO] Starting 
2015-05-06T06:14:20.487+0000 o.a.s.z.ZooKeeper [INFO] Initiating client connection, connectString=10.0.0.230:2181/storm sessionTimeout=20000 [email protected] 
2015-05-06T06:14:20.504+0000 o.a.s.z.ClientCnxn [INFO] Opening socket connection to server 10.0.0.230/10.0.0.230:2181. Will not attempt to authenticate using SASL (unknown error) 
2015-05-06T06:14:20.505+0000 o.a.s.z.ClientCnxn [INFO] Socket connection established to 10.0.0.230/10.0.0.230:2181, initiating session 
2015-05-06T06:14:20.507+0000 o.a.s.z.ClientCnxn [INFO] Session establishment complete on server 10.0.0.230/10.0.0.230:2181, sessionid = 0x14d27dbda310001, negotiated timeout = 20000 
2015-05-06T06:14:20.507+0000 o.a.s.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED 
2015-05-06T06:14:20.547+0000 b.s.d.nimbus [INFO] Starting Nimbus server... 

我用了風暴靈氣 & 風暴UI在我的主節點風暴主管在我的從節點。

從我的從屬節點的supervisor.logs,它表明我的從屬節點傾向於連接到本地主機上的zookeeper,儘管我在我的從屬節點的storm.yaml中指定了我的動物園管理員在我的主節點。 爲什麼會發生這種情況,以及如何解決這個問題?

那麼,爲什麼在Storm UI的集羣摘要中,有0個主管,0個使用的插槽,0個空閒插槽,0個執行器& 0任務? 爲什麼它使用主節點的監控插槽端口,而不是從節點?

當我點擊風暴UI的拓撲摘要生產拓撲,有0民工人,0民執行人,0民的任務? 爲什麼Spout & Bolts沒有信息顯示?

+0

首先檢查您的主管是否正在運行。正如你已經提到的那樣,有0名主管,因此這項工作還沒有分配,這就是爲什麼沒有看到有關噴口和螺栓的任何信息。你開始風暴雨雲後是否開始風暴監督? – sahu

+0

我確實啓動了我的主管。請參閱我編輯的問題。 – Toshihiko

+0

如果管理員正在運行,請檢查從節點。如果它運行並且你的配置是正確的,那麼它本身就應該是暴風雨。我認爲你的主管不能連接到靈氣。檢查管理員日誌,看它是否連接到Nimbus。 – sahu

回答

0

我發現了這個問題。我應該把我的動物園管理員放在我的奴隸節點上,而不是放在我的主節點上。現在問題解決&風暴集羣已經啓動。

+1

你怎麼能在你的奴隸節點設置zookeeper?我的意思是我該怎麼做,到底在哪裏? – user5520049

+0

@Toshihiko你需要在從節點設置zookeeper嗎?你究竟做了什麼來解決這個問題 – Sankalp

相關問題