Skip to content
This repository has been archived by the owner on Jun 16, 2023. It is now read-only.

如何安装

xinchun wang edited this page Jan 3, 2016 · 28 revisions

安装步骤

  • Downloads下载relase包
  • 搭建Zookeeper集群
  1. 安装Python 2.6
  2. 安装Java
  3. 安装Zeromq(可略过)
  4. 安装Jzmq(可略过)
  5. 配置$JSTORM_HOME/conf/storm.yaml
  6. 搭建Web UI
  • 启动JStorm集群

搭建Zookeeper集群

本处不细描叙Zookeeper安装步骤

搭建JStorm集群

安装Python 2.6

curl -kL http://xrl.us/pythonbrewinstall | bash

-s $HOME/.pythonbrew/etc/bashrc && source $HOME/.pythonbrew/etc/bashrc

pythonbrew install 2.6.7

pythonbrew switch 2.6.7

安装JDK (1.7 版本)

注意,如果当前系统是64位系统,则需要下载64 JDK位,如果是32为系统,则下载32位JDK

安装Zeromq(默认JStrom底层使用netty, 可以不安装zeromq)

wget http://download.zeromq.org/zeromq-2.1.7.tar.gz

tar zxf zeromq-2.1.7.tar.gz

cd zeromq-2.1.7

./configure

make

sudo make install

sudo ldconfig

如果没有root权限,或当前用户无sudo权限时,执行 “ ./configure --prefix=/home/xxxxx” 替换 “./configure”, 其中/home/xxxx 为安装目标目录

安装jzmq(如果不使用Zeromq, 可以不安装jzmq)

git clone git://github.com/nathanmarz/jzmq.git

cd jzmq

./autogen.sh

./configure

make

make install

如果没有root权限,或当前用户无sudo权限时,执行 “ ./configure --prefix=/home/xxxx --with-zeromq=/home/xxxx” 替换 “./configure”, 其中/home/xxxx 为安装目标目录

###安装JStorm 假设以jstorm-0.9.6.2.zip为例

unzip jstorm-0.9.6.2.zip

vi ~/.bashrc

export JSTORM_HOME=/XXXXX/XXXX

export PATH=$PATH:$JSTORM_HOME/bin

配置$JSTORM_HOME/conf/storm.yaml

配置项:

  • storm.zookeeper.servers: 表示zookeeper 的地址,
  • nimbus.host: 表示nimbus的地址
  • storm.zookeeper.root: 表示JStorm在zookeeper中的根目录,当多个JStorm共享一个zookeeper时,需要设置该选项,默认即为“/jstorm”
  • storm.local.dir: 表示JStorm临时数据存放目录,需要保证JStorm程序对该目录有写权限
  • java.library.path: Zeromq 和java zeromq library的安装目录,默认"/usr/local/lib:/opt/local/lib:/usr/lib"
  • supervisor.slots.ports: 表示Supervisor 提供的端口Slot列表,注意不要和其他端口发生冲突,默认是68xx,而Storm的是67xx
  • supervisor.disk.slot: 表示提供数据目录,当一台机器有多块磁盘时,可以提供磁盘读写Slot,方便有重IO操作的应用。
  • topology.enable.classloader: false, 默认关闭classloader,如果应用的jar与JStorm的依赖的jar发生冲突,比如应用使用thrift9,但jstorm使用thrift7时,就需要打开classloader
  • nimbus.groupfile.path: 如果需要做资源隔离,比如数据仓库使用多少资源,技术部使用多少资源,无线部门使用多少资源时,就需要打开分组功能, 设置一个配置文件的绝对路径,改配置文件如源码中group_file.ini所示
  • storm.local.dir: JStorm使用的本地临时目录,如果一台机器同时运行Storm和JStorm的话, 则不要共用一个目录,必须将二者分离开

在提交jar的节点上执行:

#mkdir ~/.jstorm
#cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm

安装JStorm Web UI

必须使用tomcat 7.0 或以上版本, 注意不要忘记拷贝 ~/.jstorm/storm.yaml

Web UI 可以和Nimbus不在同一个节点

mkdir ~/.jstorm
cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm
下载tomcat 7.x (以apache-tomcat-7.0.37 为例)
tar -xzf apache-tomcat-7.0.37.tar.gz
cd apache-tomcat-7.0.37
cd webapps
cp $JSTORM_HOME/jstorm-ui-0.9.6.2.war ./
mv ROOT ROOT.old
ln -s jstorm-ui-0.9.6.2 ROOT           这个地方可能变化,是根据你的JStorm版本来确定,比如当0.9.6.1时,是ln -s jstorm-0.9.6.1 ROOT
另外不是 ln -s jstorm-ui-0.9.6.2.war ROOT 这个要小心
cd ../bin
./startup.sh

启动JStorm

  • 在nimbus 节点上执行 “nohup jstorm nimbus &”, 查看$JSTORM_HOME/logs/nimbus.log检查有无错误
  • 在supervisor节点上执行 “nohup jstorm supervisor &”, 查看$JSTORM_HOME/logs/supervisor.log检查有无错误
Clone this wiki locally