天天看點

Storm學習一叢集安裝

1.Storm叢集安裝準備:

  • LInux系統:CentOS 7(3台)
  • JDK:jdk-8u162-linux-x64.tar.gz
  • Zookeeper:zookeeper-3.4.11.tar.gz
  • Storm:apache-storm-1.2.1

2.安裝 2.1 JDK安裝     CentOS7自帶了openjdk,你可以使用這個也可以自己安裝,我是安裝自己的jdk。

  • 打開終端,輸入下列指令,查找openjdk,并删除
rpm -qa | grep java
           
rpm -e --nodeps XXXX_openjdk_XXX
           
  • 官網下載下傳jdk-8u162-linux-x64.tar.gz
  • 解壓jdk-8u162-linux-x64.tar.gz
tar -xvf jdk-8u162-linux-x64.tar.gz
           
  • 修改檔案夾名為jdk1.8
  • 配置jdk的環境變量
sudo vim /etc/bashrc

在bashrc檔案最後加入

export JAVA_HOME=jdk路徑
export PATH=$PATH:$JAVA_HOME/bin
           
  • 儲存退出重新開機系統

  • 檢視環境變量和Java版本

echo $PATH
           
java -version
           
3.zookeeper安裝
  • 從官網下載下傳zookeeper-3.4.11.tar.gz
  • 解壓zookeeper-3.4.11.tar.gz
  • 在zookeeper安裝包目錄下建立一個data檔案夾
  • 重命名zookeeper安裝包的conf目錄下的zoo_sample.cfg為zoo.cfg
  • 打開zoo.cfg檔案,在檔案末尾添加如下配置
dataDir=zookeeper data目錄路徑
           
server.1=ip:2888:3888
           
server.2=ip:2888:3888
           
server.3=ip:2888:3888
           
server.A=B:C:D:其中 A 是一個數字,表示這個是第幾号伺服器;B 是這個伺服器的 ip 位址或主機名;C 表示的是這個伺服器與叢集中的 Leader 伺服器交換資訊
           
的端口;D 表示的是萬一叢集中的 Leader 伺服器挂了,需要一個端口來重新進行選舉,選出一個新的 Leader,而這個端口就是用來執行選舉時伺服器互相通信的端口.
           
  • 在data檔案下建立一個myid檔案内容為1
  • 配置環境變量,儲存退出重新開機
sudo vim /etc/bashrc
           
在bashrc檔案最後加入
           
export ZOOKEEPER=zookeeper路徑
           
export PATH=$PATH:$ZOOKEEPER/bin
           
  • 将以上配置copy到其他機器上,注意myid檔案的内容必須要與ip/主機名對應,即!A和B要對應。
  • 轉到zookeeper 的bin目錄下,測試是否配置成功。
./zkServer.sh start (啟動)
           
./zkServer.sh status (檢視狀态)
           
Storm學習一叢集安裝
4.storm安裝
  • 從官網下載下傳apache-storm-1.2.1.tar.gz
  • 解壓apache-storm-1.2.1.tar.gz
  • 在apache-storm-1.2.1安裝包目錄下建立一個data檔案夾
  • 配置apache-storm-1.2.1安裝包的conf目錄下的storm.yaml,在檔案末尾添加如下配置:
    storm.zookeeper.servers:
         - "master"
         - "slaver1"
         - "slaver2"
     nimbus.seeds: ["master"] 
     supervisor.slots.ports:
          - 6700
          - 6701
          - 6702
          - 6703
               
  • 配置環境變量,儲存退出重新開機
sudo vim /etc/bashrc
在bashrc檔案最後加入
export STORM=storm路徑
export PATH=$PATH:$STORM/bin
           
  • 将以上配置copy到其他機器上

  • 在主節點(master)的機器的storm的bin目錄下運作

./storm nimbus &
           
./storm ui &
           
  • 在從節點(slaver1,slaver2)的機器上的storm bin目錄下運作
./storm supervisor &
           
  • 在浏覽器裡輸入 master:8080/index.html,即可看到storm的運作狀态

至此,storm的叢集部署完成。

注:master,slaver1,slaver2是主機名,可以換成ip

Storm學習一叢集安裝