storm依賴zookeeper和python環境,具體安裝步驟不再列出,只簡單介紹storm的安裝過程。
wget
tar -zxvf apache-storm-0.10.0.tar.gz
vi conf/storm.yaml
//這是乙個為storm集群服務的zookeeper集群的主機列表,它的配置應該類似於:
storm.zookeeper.servers:
- 「zookeeperip01」
- 「zookeeperip02」
- 「zookeeperip03」
//nimbus 節點
nimbus.host: 「nimbusip」
//supervisor 埠
對於每個工作節點,可以通過該配置項來設定該節點上執行多少個worker。每個worker使用乙個埠接收訊息,此設定定義為使用哪些埠是開啟的。如果在這裡定義5個埠,然後storm將分配5個worker在這台主機上執行。如果定義3個埠,storm只會分配3個worker。此設定預設為在埠6700、6701、6702和6703上配置執行4個worker,如下:
supervisor.slots.ports:
-6700
-6701
-6702
-6703
本示例是 nimbus和supervisor節點部署在同一臺機器上。
關於storm的屬性配置,開頭都要保留乙個空格,不要用tab鍵。
此配置檔案在各個節點上都是相同的,具體那個服務節點承擔什麼角色要看節點上啟動的服務是什麼,如下命令
bin/storm nimbus >/dev/null 2>&1 &
bin/storm supervisor >/dev/null 2>&1 &
bin/storm ui >/dev/null 2>&1 &
其中 storm ui 啟動後,可以通過http://:8080觀察集群的worker資源使用情況、topologies的執行狀態等資訊。而且storm ui必須和storm nimbus部署在同一臺機器上,否則ui無法正常工作。
可以直接執行storm目錄下的例項程式來看一下效果:
bin/storm jar ../examples/storm-starter/storm-starter-topologies-0.10.0.jar storm.starter.wordcounttopology |grep 『thread-[0-9]*-count』
列印出的日誌就是每個bolt執行後的結果,這是相當於本地執行,實際上並沒有想集群中提交拓撲,真正提交集群拓撲是這樣的
bin/storm jar ../examples/storm-starter/storm-starter-topologies-0.10.0.jar storm.starter.wordcounttopology word-count
這時會向集群中提交乙個名字為 word-count的拓撲,這個拓撲已經提交,就會在後台一直執行,除非手動kill掉這個拓撲,此時,可以檢視 log目錄下的日誌:
tail -f word-count-xx-******-worker-***.log
此時發現這個拓撲會在後台一直執行進行單詞的個數統計。
Storm集群安裝與部署
1 三颱虛擬機器 192.168.1.128 nimbus 192.168.1.131 supervisor 192.168.1.132 supervisor 2 jdk1.8 3 zookeeper3.4.10 4 storm 1.1.1 1 配置storm ps 三颱機器的配置都是這樣的 sto...
Storm 單機 集群安裝部署
官方文件 注意 storm.yaml 每個屬性名前和冒號後都要有個空格,不然會解析錯誤 zookeeper 集群位址 storm.zookeeper.servers 127.0.0.1 nimbus.seeds 127.0.0.1 storm.local.dir users qiaojialin d...
storm安裝及啟動
1 安裝乙個zookeeper集群 2 上傳storm的安裝包,解壓 3 修改配置檔案storm.yaml 所使用的zookeeper集群主機 storm.zookeeper.servers weekend05 weekend06 weekend07 nimbus所在的主機名 nimbus.host...