做爲流計算的開篇,筆者首先給出storm的安裝和部署,storm的第二篇,筆者將詳細的介紹storm的工做原理。下邊直接上乾貨,跟筆者的步伐一起安裝storm。java
原文連接:Storm環境搭建(分佈式集羣)node
Step1:新建用戶linux
在全部主機上新建hadoop用戶,密碼是Hadoop123web
useradd hadoopapache
passwd hadoopvim
輸入密碼Hadoop123centos
Step2:設置免密登陸服務器
設置全部主機之間ssh免密碼登陸。設置主節點到從節點的免密碼登陸便可。less
Step3:軟件包下載ssh
(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/,如圖:
下篇。。。