作為流計算的開篇,筆者首先給出storm的安裝和部署,storm的第二篇,筆者將詳細的介紹storm的工作原理。下邊直接上干貨,跟筆者的步伐一塊兒安裝storm。
原文鏈接:Storm環境搭建(分布式集群)
Step1:新建用戶
在所有主機上新建hadoop用戶,密碼是Hadoop123
useradd hadoop
passwd hadoop
輸入密碼Hadoop123
Step2:設置免密登錄
設置所有主機之間ssh免密碼登錄。設置主節點到從節點的免密碼登錄即可。
Step3:軟件包下載
(1)mkdir -p /mnt/data/software
(2)將所需要的軟件包放在/mnt/data/software目錄下
如需要以下三個安裝包,請長按文末二維碼關注“大數據技術宅”,后台輸入“storm安裝包”獲取。
jdk-8u121-linux-i586.tar.gz
apache-storm-1.0.5.tar.gz
zookeeper-3.4.10.tar.gz
Step4:安裝JDK
(1)卸載openjdk
rpm -qa | grep jdk
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodepscopy-jdk-configs-1.2-1.el7.noarch
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
(2)安裝jdk1.8
cd /mnt/data/software
tar -zxvf jdk-8u121-linux-i586.tar.gz
配置java環境變量
vim /etc/profile
在文件中寫入以下內容
JAVA_HOME=/mnt/data/software/jdk1.8.0_121
JRE_HOME=/mnt/data/software/jdk1.8.0_121/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
使環境變量生效:source/etc/profile
Step5:安裝zookeeper
(1)關閉三台機器上的防火牆(CentOS 7)
firewall-cmd --state 查看防火牆狀態
systemctl stop firewalld.service 關閉防火牆
systemctl disable firewalld.service 禁止開機啟動
(2)安裝
cd /mnt/data/software
tar -zxvf zookeeper-3.4.10.tar.gz
mv zookeeper-3.4.10
cd zookeeper/conf
將conf目錄中的zoo_sample.cfg文件復制為zoo.cfg並利用vi命令進行修改
dataDir=/mnt/data/software/zookeeper/data
server.1=ip:2888:3888 ip為服務器的ip
server.2=ip:2888:3888 ip為服務器的ip
server.3=ip:2888:3888 ip為服務器的ip
這里的dataDir需要自己創建 mkdir命令創建,並在目錄下創建一個文件:myid分別在myid上按照配置文件的server.<id>中id的數值,在不同機器上的該文件中填寫相應過的值1|2|3
如[root@safe01data]# vim myid
1
保存即可
(3)添加zookeeper環境變量
vim /etc/profile
ZOOKEEPER_HOME=/mnt/data/software/zookeeper
PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
export JAVA_HOME CLASSPATH ZOOKEEPER_HOME PATH
引用環境變量:source/etc/profile
(4)測試安裝
三台機器執行zkServer.shstart進行啟動zookeeper
查看狀態zkServer.shstatus
[root@safe01 data]# zkServer.sh status
JMX enabled by default
Using config: /mnt/data/software/zookeeper/bin/../conf/zoo.cfg
Mode: follower
兩個follower一個leader就是正確的
Step6:安裝Storm
(1)安裝
cd /mnt/data/software
tar -zxvf apache-storm-1.0.5.tar.gz
mv apache-storm-1.0.5 storm
cd ./storm/conf
編輯storm.yaml
storm.zookeeper.servers:
- "172.16.2.27"
- "172.16.2.42"
- "172.16.2.72"
#nimbus
nimbus.host: "172.16.2.27"
ui.port: 8081
supervisor.slots.ports:
-6700
-6701
-6702
-6703
storm.local.dir:"/mnt/data/software/storm/data"
創建數據文件目錄:mkdir /mnt/data/software/storm/data
將storm分發到其他主機上:
scp -r /mnt/data/software/storm/ hadoop@172.16.2.42:/mnt/data/software
scp -r /mnt/data/software/storm/ hadoop@172.16.2.72:/mnt/data/software
在所有主機上添加storm的環境變量:
STORM_HOME=/mnt/data/software/storm
PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$STORM_HOME/bin:$KAFKA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH ZOOKEEPER_HOME STORM_HOME KAFKA_HOME PATH
(2)啟動
在主機centos上開啟nimbus進程
storm nimbus &
在另外兩台機子上開啟supervisor 進程
storm supervisor &
開啟完按Ctrl+c
在centos主機上開啟
storm ui &
storm logviewer &
這樣就可以通過web查看storm部署情況了
訪問http://172.16.2.27:8080/,如圖:
下篇。。。