一、storm 的安装

在搭建Storm 集群时,具体分为这么几步:

1、搭建zookeeper集群

2、安装storm 的依赖库

3、下载并解压Storm

4、修改配置文件

5、启动Storm



第一步:搭建zookeeper集群

zookeeper作为storm的管理协调者,zookeeper是必不可少的

拷贝安装包,并解压tar -xvf zookeeper-3.3.6.deploy.tar.gz

修改zookeeper目录下conf中的zoo.cfg文件
dataDir=/home/shaka/zookeeper/zookeeper-3.3.6/data
# the port at which the clients will connect
clientPort=2181
# set logs
dataLogDir=/home/shaka/zookeeper/zookeeper-3.3.6/logs
# set server
server.1=[IP]:4887:5887  //[IP]为本机IP地址
 



修改红色部分的配置文件,端口2181可以保持默认,没有特殊需求不必修改



修改完成配置文件后,在bin/目录下启动  zkServer.sh start



查看zookeeper状态,在bin/目录下 zkServer.sh status



停止:zkServer.sh stop



重启:zkServer.sh stop



启动客户端:zkCli.sh -server 127.0.0.1:2181



显示根目录下、文件: ls / 使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
显示根目录下、文件: ls2 / 查看当前节点数据并能看到更新次数等数据
创建文件,并设置初始内容: create /zk "test" 创建一个新的 znode节点“ zk ”以及与它关联的字符串



获取文件内容: get /zk 确认 znode 是否包含我们所创建的字符串
 修改文件内容: set /zk "zkbak" 对 zk 所关联的字符串进行设置
 删除文件: delete /zk 将刚才创建的 znode 删除
 退出客户端: quit
 帮助命令: help



第二步:安装Storm依赖库



在/home/user/下创建dependences目录,安装依赖库文件



拷贝zeromq,jzmq到该目录



解压两个文件



tar -xvf zeromq-4.0.4.tar.gz
tar -xvf jzmq.deploy.tar.gz



安装zeromq



cd zeromq-4.0.4



./configure
make   (使用ROOT用户执行make命令)
make install  (使用ROOT用户执行make命令)



安装jzmq



cd jzmq
./configure
make (使用ROOT用户执行make命令)



make install(使用ROOT用户执行make命令)



第三步:安装Storm



下载解压文件:



tar -xvf apache-storm-0.9.2-incubating.deploy.tar.gz



配置环境变量



vim ~/.bash_profile



追加



export STORM_HOME=/home/user/storm/apache-storm-0.9.2-incubating



export PATH=$PATH:$STORM_HOME/bin



重载环境变量    . ~/.bash_profile



修改配置文件/home/user/storm/conf/storm.yaml




########### These MUST be filled in for a storm configuration
 storm.zookeeper.servers:
     - "10.2.73.11"
 nimbus.host: "10.2.73.11"   (地址与zookeeper中配置的保持一致)
 storm.local.dir: "/home/shaka/apache-storm-0.9.2-incubating/File_Storm"




1)如果Zookeeper集群使用的不是默认端口,那么还需要storm.zookeeper.port选项。
2) nimbus.host: Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件,如:
nimbus.host: "111.222.333.444"
3) storm.local.dir: Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。然后在storm.yaml中配置该目录,如:
storm.local.dir: "./workdir"



启动Storm
启动Storm(在此之前要启动Zookeeper)
storm nimbus &
storm supervisor &
storm ui &

启动后可以通过http://{nimbus host}:8080   在windows的浏览器上。


到此storm的安装完成。
一个单节点模式的storm搭建起来了!
启动如果碰到错误:
normclasspath = cygpath if sys.platform == 'cygwin' else identity
原因分析:
python2.4
python2.6
版本问题,需要指定用2.6版本,方法:
rm /usr/bin/python
ln -s /usr/local/bin/python2.6 /usr/bin/python



扩展成一个Strom集群的方法
将shaka/storm下的软件包完全一样的拷贝到新的机器上。
配置文件不需要修改!
因为要共用zk和nimbus

配置环境变量
vim ~/.bash_profile
          追加export STORM_HOME=/home/shaka/storm/apache-storm-0.9.2-incubating
          export PATH=$PATH:$STORM_HOME/bin

启动supervisro &的方法:
storm supervisor &


启动后可以通过http://{nimbus host}:8080   在windows的刘篮球上。


到此集群版的storm的安装完成。
一个集群模式的storm搭建起来了!