storm安装指南.docx
- 文档编号:4295431
- 上传时间:2022-11-29
- 格式:DOCX
- 页数:12
- 大小:144.45KB
storm安装指南.docx
《storm安装指南.docx》由会员分享,可在线阅读,更多相关《storm安装指南.docx(12页珍藏版)》请在冰豆网上搜索。
storm安装指南
STORM安装文档
(本文档重要部分用其他颜色标记)
目录
STORM安装文档1
1.安装Storm依赖库2
1.1安装ZMQ2.1.72
1、下载相应的包2
1.2.安装JZMQ4
1.3.安装Java65
1.4.安装python2.7.26
1.5.安装unzip6
2.安装Zookeeper单机模式6
3.zookeeper集群搭建(版本:
zookeeper-3.4.6)9
4.下载并解压Storm发布版本13
5.本地运行测试程序storm-starter14
1.安装Storm依赖库
需要在Nimbus和Supervisor机器上安装Storm的依赖库,具体如下:
1.ZeroMQ2.1.7 –请勿使用2.1.10版本,因为该版本的一些严重bug会导致Storm集群运行时出现奇怪的问题。
2.JZMQ
3.Java6及以上
4.Python2.6.6
5.unzip
以上依赖库的版本是经过Storm测试的,Storm并不能保证在其他版本的Java或Python库下可运行。
1.1安装ZMQ2.1.7
1、下载相应的包
wget http:
//download.zeromq.org/zeromq-2.1.7.tar.gz
2、解压缩包
tar -xzf zeromq-2.1.7.tar.gz
3、转到解压缩目录
cd zeromq-2.1.7
4、./configure是用来检测你的安装平台的目标特征的。
比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
make是用来编译的,它从Makefile中读取指令,然后编译。
makeinstall是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
命令如下:
1、./configure
2、Make
3、sudomakeinstall
注意事项:
1.如果安装过程报错uuid找不到,则通过如下的包安装uuid库:
解决方法:
sudoapt-get install build-essential uuid-dev
2.如果报错
configure:
error:
没有安装c++compiler
解决方法:
sudoapt-getinstallg++
3.如果遇到Error:
cannotlinkwith-luuid,installuuid-dev
原因为缺少uuid相关package
解决方法:
sudoapt-get install build-essential uuid-dev
1.2.安装JZMQ
下载后编译安装JZMQ:
1、安装git
sudoapt-getinstallgit
2、下载相应的包(命令如下)
1)git clone
2)cdjzmq
3)./autogen.sh
4)./configure
5)Make
6)sudo make install
为了保证JZMQ正常工作,一般需要先完成步骤1.3的安装(JAVA的安装及配置)。
注意事项:
如果命令出现问题,参考这里。
1、autogen.sh:
error:
couldnotfindlibtool.libtoolisrequiredtorunautogen.sh.
解决方法:
sudoapt-getinstalllibtool
2、autogen.sh:
error:
couldnotfindautoreconf.autoconfandautomakearerequiredtorunautogen.sh.
解决方法:
sudoapt-getinstallautoreconf*
1.3.安装Java6
1.下载并安装JDK6,参考这里;
sudoapt-getinstallJAVA6及以上
2.配置JAVA_HOME环境变量;
配置环境变量
sudogedit/etc/profile
在/etc/profile下增加
#setJavaenvironment
JAVA_HOME=/usr/lib/jvm/java-6-openjdk-i386
PATH=$JAVA_HOME/bin:
$PATH
CLASSPATH=.:
$JAVA_HOME/lib/dt.jar:
$JAVA_HOME/lib/tools.jar
exportJAVA_HOME
exportPATH
exportCLASSPATH
再执行以下步骤:
source/etc/profile
3.运行java、javac命令,测试java正常安装。
1.4.安装python2.7.2
1、下载Python2.6.6:
wget http:
//www.python.org/ftp/python/2.6.6/Python-2.6.6.tar.bz2
2、编译安装Python2.6.6:
输入命令:
1)tar xvf Python-2.6.6.tar.bz2
2)cd Python-2.6.6
3)./configure
4)make
5)sudomake install
3.测试Python2.6.6:
python -V
1.5.安装unzip
1.执行以下命令安装unzip:
sudoapt-get install unzip
2.安装Zookeeper单机模式
2.1.下载Zookeeper
# wget
2.2解压缩
# tar -zxvf zookeeper-3.4.6.tar.gz
2.3解压完成之后得到一个zookeeper-3.4.6的文件夹
然后一路cd到conf目录
cdzookeeper-3.4.6
cdconf
用cp命令拷贝一个zoo_samle.cfg为zoo.cfg
2.4设置ZOOKEEPER_HOME和$ZOOKEEPER_HOME/bin
为了方便运行zkServer.sh脚本,我们将zookeeper的bin路径加入到/etc/profile中,作为一个全局变量进行输出到PATH中,记得修改完成之后运行source/etc/profile使修改生效
ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.6
exportZOOKEEPER_HOME
exportPATH=$PATH:
$ZOOKEEPER_HOME/bin:
$ZOOKEEPER_HOME/conf
2.5用zoo_sample.cfg制作$ZOOKEEPER_HOME/conf/zoo.cfg
#cp /usr/local/zookeeper3.4.6/conf/zoo_sample.cfg /usr/local/zookeeper3.4.6/conf/zoo.cfg
2.6修改配置文件conf/zoo.cfg
~sudogedit/usr/local/zoo.cfg
在zoo.cfg文件中加入以下内容:
(注意空格)
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6/zk0
clientPort=2181
Server.1=202.117.77.245:
2888:
3888
非常简单,我们已经配置好了的zookeeper单节点
2.7启动zookeeper
~bin/zkServer.shstartzoo.cfg
JMXenabledbydefault
Usingconfig:
/home/conan/zoo/zk0/zookeeper345/bin/../conf/zoo.cfg
Usage:
bin/zkServer.sh{start|start-foreground|stop|restart|status|upgrade|print-cmd}
conan@conan:
~/zoo/zk0/zookeeper345$bin/zkServer.shstart
JMXenabledbydefault
Usingconfig:
/home/conan/zoo/zk0/zookeeper345/bin/../conf/zoo.cfg
Startingzookeeper...STARTED
#zk的服务显示为QuorumPeerMain
~jps
5321QuorumPeerMain
5338Jps
#查看运行状态
~bin/zkServer.shstatus
JMXenabledbydefault
Usingconfig:
/home/conan/zoo/zk0/zookeeper345/bin/../conf/zoo.cfg
Mode:
standalone
单节点的时,Mode会显示为standalone
停止ZooKeeper服务
~bin/zkServer.shstop
JMXenabledbydefault
Usingconfig:
/home/conan/zoo/zk0/zookeeper345/bin/../conf/zoo.cfg
Stoppingzookeeper...STOPPED
错误解决:
安装过程会出现问题,因为配置文档里指定的log目录没有创建导致出错,手动增加目录后重启,问题解决。
3.zookeeper集群搭建(版本:
zookeeper-3.4.6)
3台机器部署ZooKeeper集群,IP和主机名对应关系如下:
ip
主机名
主控节点:
202.117.77.245
nimbus1
工作节点1:
202.117.77.208
supervisor2
工作节点2:
202.117.77.209
supervisor3
3.1、更改hosts文件:
#sudogedit/etc/hosts
202.117.77.245 nimbus1
202.117.77.208 supervisor2
202.117.77.209 supervisor3
3.2、解压zookeeper到/usr/local/src/下配置zookeeper主配置文件:
一、将/usr/local/zookeeper-3.4.6/conf/zoo_sample.cfg 改名成zoo.cfg
#mvzoo_sample.cfg zoo.cfg
配置主配置文件:
(注意空格)
sudogedit/usr/local/zookeeper-3.4.6/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6/data
dataLog=/usr/local/zookeeper-3.4.6/log
server.1=nimbus1:
2888:
3888
server.2=supervisor1:
2888:
3888
server.3=supervisor2:
2888:
3888
保存退出
重要:
在dataDir目录下创建myid文件,文件中只包含一行,且内容为该节点对应的server.id中的id编号。
#echo"1">/usr/local/zookeeper3.4.6/myid (工作节点也需要创建相应的id编号)
将主控节点zookeeper-3.4.6分别拷贝到两个工作节点上
#scp-rpzookeeper-3.4.6/ root@202.117.77.209:
/usr/local/zookeeper-3.4.6/
#scp-rpzookeeper-3.4.6/ root@202.117.77.208:
/usr/local/zookeeper-3.4.6/
二、工作节点1
1、配置java环境变量:
同主工作节点
2、配置hosts文件(同上)
3、在dataDir目录下创建myid文件,文件中只包含一行,且内容为该节点对应的server.id中的id编号。
#echo"2">/usr/local/zookeeper3.4.6/myid (工作节点也需要创建相应的id编号)
三、工作节点2
1、配置java环境变量:
同主工作节点
2、配置hosts文件
3、在dataDir目录下创建myid文件,文件中只包含一行,且内容为该节点对应的server.id中的id编号。
#echo"3">/usr/local/zookeeper3.4.6/myid (工作节点也需要创建相应的id编号)
四:
启动zookeeper集群
在主控节点上执行:
#cd/usr/local/zookeeper-3.4.6/
#./bin/zkServer.shstartzoo.cfg
在工作节点1上执行:
#cd/usr/local/src/zookeeper-3.4.6/
#./bin/zkServer.shstartzoo.cfg
在工作节点2上执行:
#cd/usr/local/src/zookeeper-3.4.6/
#./bin/zkServer.shstartzoo.cfg
然后查看每个节点的工作状态:
在主控节点上执行:
#cd/usr/local/src/zookeeper-3.4.6/
#./bin/zkServer.shstatuszoo.cfg
JMXenabledbydefault
Usingconfig:
/usr/local/src/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode:
follower
#./bin/zkServer.shstatuszoo.cfg
JMXenabledbydefault
Usingconfig:
/usr/local/src/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode:
leader
#./bin/zkServer.shstatuszoo.cfg
JMXenabledbydefault
Usingconfig:
/usr/local/src/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode:
follower
4.下载并解压Storm发布版本
下一步,需要在Nimbus和Supervisor机器上安装Storm发行版本。
1.下载Storm发行版本,推荐使用Storm0.8.1:
Wget
2.解压到安装目录下:
unzipstorm-0.8.1.zip
4.1修改storm.yaml配置文件
Storm发行版本解压目录下有一个conf/storm.yaml文件,用于配置Storm。
默认配置在这里可以查看。
conf/storm.yaml中的配置选项将覆盖defaults.yaml中的默认配置。
以下配置选项是必须在conf/storm.yaml中进行配置的:
1) storm.zookeeper.servers:
Storm集群使用的Zookeeper集群地址,其格式如下:
storm.zookeeper.servers:
-"nimbus.ip"-"supervisor.ip1"
-"supervisor.ip2"
如果Zookeeper集群使用的不是默认端口,那么还需要storm.zookeeper.port选项。
5.本地运行测试程序storm-starter
下载并解压:
这里采用eclipse自导入包的方法来编译storm-starter
1) 安装twitter4j
1.# mkdir twitter4j
2.# cd twitter4j
3.# wget http:
//twitter4j.org/en/twitter4j-2.2.6.zip
4.# unzip twitter4j-2.2.6.zip
如果下载不了,在网上搜一搜。
2)追加源文件storm-start/src/jvm/storm使用eclipse建立javaproject。
追加twitter4j和storm的jar文件。
File->New->JavaProject->随便取个名字->Next->Libraries->addExternalJARs...->追加twitter4j和storm的jar文件(/path/to/twitter4j/lib/*.jar和/path/to/storm/lib/*.jar和/path/to/storm/storm-{version}.jar)->Finsh
导入storm-start
File->Import->General->FileSystem->Next->Browse(Fromdirectory)->/path/to/storm-start/src/jvm/storm->Browse(Infofloder) ->xxx->src->OK->“storm”和“Createtop-levelfolder”前打勾->Finish
完成之后如图:
3)追加源文件storm-start/multilang/resources(python文件wordcount用)
File->Import->General->FileSystem->Next->Browse(Fromdirectory)->/path/to/storm-start/multilang/resources->Browse(Infofloder) ->xxx->OK->check“resources”and“Createtop-levelfolder”->Finish
2个源文件都追加好之后,eclipse左边显示如下图:
如果使用的是storm-0.8.1,下面这行代码会报错,下载0.8.2版本即可解决
1.import backtype.storm.task.IMetricsContext;
如果下面这行报错,说明没有commons-collections.jar包,下载地址:
http:
//commons.apache.org/proper/commons-collections/download_collections.cgi
1.import mons.collections.buffer.CircularFifoBuffer;
4)JARexport
File->Export->JAR->JARfile->取消“.classpath”,“.project”和“<.settings”->的勾browse->path/to/export/name.jar->Finish(忽视warnings)
可能会报错说PrintSampleStream和TwitterSampleSpout这两个类找不到,将这两个类的注释取消掉即可。
5)执行刚才编译的文件。
1.# storm jar StormStarter.jar storm.starter.ExclamationTopology
如果出现类似下面的文字,说明运行成功!
....
11367[Thread-25]INFO backtype.storm.daemon.task -Emitting:
classstorm.starter.ExclamationTopology$ExclamationBoltsource:
2:
3,stream:
1,id:
{},[golda!
!
!
]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- storm 安装 指南