原文連接:Java 核心知識整理收集 :a870439570.github.io/interview-d…html
Apache Storm是一個分佈式實時大數據處理系統。Storm設計用於在容錯和水平可擴展方法中處理大量數據。它是一個流數據框架,具備最高的攝取率。雖然Storm是無狀態的,它經過Apache ZooKeeper管理分佈式環境和集羣狀態。它很簡單,您能夠並行地對實時數據執行各類操做。git
拓撲(Topologies)這裏寫連接內容 流(Streams) 數據源(Spouts 數據流處理組件(Bolts) 數據流分組(Stream groupings) 可靠性(Reliability) 任務(Tasks) 工做進程(Workers)github
Tuple數據庫
Streamapache
Spouts編程
Bolts安全
一個工做的Storm集羣應該有一個Nimbus和一個或多個supervisors。另外一個重要的節點是Apache ZooKeeper,它將用於nimbus和supervisors之間的協調。bash
如今讓咱們仔細看看Apache Storm的工做流程 −網絡
默認狀況下,Storm集羣中有兩種模式:數據結構
www.apache.org/dyn/closer.… 下載解壓,編輯conf/storm.yaml文件
##填寫zookeeper集羣的ip地址或者主機名
########### These MUST be filled in for a storm configuration
storm.zookeeper.servers:
- "192.168.2.149"
- "192.168.2.150"
- "192.168.2.151"
nimbus.seeds: ["192.168.2.149"]
#配置數據存儲路徑
storm.local.dir: "/data/ms/storm-1.1.1/data"
##配置節點健康檢測
storm.health.check.dir: "healthchecks"
storm.health.check.timeout.ms: 5000
storm.local.hostname: "192.168.2.150"
#配置supervisor: 開啓幾個端口插槽,就開啓幾個對應的worker進程
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
複製代碼
配置詳解 xstarcd.github.io/wiki/Cloud/…
最後一步是啓動全部的Storm守護進程。 在監督下運行這些守護進程是很是重要的。 Storm是一個快速失敗(fail-fast)系統,意味着只要遇到意外錯誤,進程就會中止。 Storm的設計能夠在任什麼時候候安全中止,並在從新啓動過程時正確恢復。 這就是爲何Storm在進程中不保持狀態 - 若是Nimbus或Supervisors從新啓動,運行的拓撲結構不受影響。 如下是如何運行Storm守護進程:
Nimbus:在Storm主控節點上運行命令bin/storm nimbus &,啓動Nimbus後臺程序,並放到後臺執行。
Supervisor:在Storm各個工做節點上運行命令bin/storm supervisor &。
UI: 在Storm主控節點上運行命令bin/storm ui &,啓動UI後臺程序,並放到後臺執行
複製代碼
訪問http://192.168.1.191:8080 成功