开始学习Storm,本文主要记录Storm集群安装部署步骤,不包括对Storm的介绍。
安装storm集群,需要依赖以下组件:
- Zookeeper
- Python
- Zeromq
- Storm
- JDK
- JZMQ
故安装过程根据上面的组件分为以下几步:
- 安装JDK
- 安装Zookeeper集群
- 安装Python及依赖
- 安装Storm
另外,操作系统环境为:Centos6.4,安装用户为:root。
安装JDK
安装jdk有很多方法,可以参考文博客使用yum安装CDH Hadoop集群中的jdk安装步骤,需要说明的是下面的zookeeper集群安装方法也可以参考此文。
不管你用什么方法,最后需要配置JAVA_HOME并检测当前jdk版本:
$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
安装Zookeeper集群
可以参考文博客使用yum安装CDH Hadoop集群中的Zookeeper集群安装步骤。
安装Python及依赖
一般操作系统上都安装了Python,查看当前Python版本:
$ python -V
Python 2.6.6
下载Zeromq
$ wget http://download.zeromq.org/zeromq-4.0.4.tar.gz
$ tar zxvf zeromq-4.0.4.tar.gz
$ ./configure
$ make & make install
安装Jzmq
$ git clone git://github.com/nathanmarz/jzmq.git
$ cd jzmq
$ ./autogen.sh
$ ./configure
$ make & make install
安装Storm
下载稳定版本的storm,然后解压将其拷贝到/usr/lib/storm目录:
$ wget https://github.com/downloads/nathanmarz/storm/storm-0.8.1.zip
$ unzip storm-0.8.1.zip
$ mv storm-0.8.1 /usr/lib/storm
接下来,配置环境变量:
export STORM_HOME=/usr/lib/storm export PATH=$PATH:$STORM_HOME/bin
建立storm存储目录:
$ mkdir /tmp/storm
修改配置文件/usr/lib/storm/conf/storm.yaml,修改为如下:
storm.zookeeper.servers: - "cdh1" - "cdh2" - "cdh3" ui.port: 8081 nimbus.host: "cdh2" storm.local.dir: "/tmp/storm" supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703
其中,配置参数说明:
-
storm.zookeeper.servers
:Storm集群使用的Zookeeper集群地址,如果Zookeeper集群使用的不是默认端口,那么还需要storm.zookeeper.port
选项 -
ui.port
:Storm UI的服务端口 -
storm.local.dir
:Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录 -
java.library.path
: Storm使用的本地库(ZMQ和JZMQ)加载路径,默认为"/usr/local/lib:/opt/local/lib:/usr/lib",一般来说ZMQ和JZMQ默认安装在/usr/local/lib
下,因此不需要配置即可。 -
nimbus.host
: Storm集群Nimbus机器地址 -
supervisor.slots.ports
: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口
更多配置参数,请参考Storm配置项详解。
最后,启动Storm各个后台进程:
主控节点上启动nimbus:
$ storm nimbus >/dev/null 2>&1 &
在Storm各个工作节点上运行:
$ storm supervisor >/dev/null 2>&1 &
在Storm主控节点上启动ui:
$ storm ui >/dev/null 2>&1 &
然后,你可以访问http://cdh2:8081/查看集群的worker资源使用情况、Topologies的运行状态等信息。
相关推荐
本文以TwitterStorm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以“注意事项”的形式给出。Storm集群中包含两类节点:主控节点(MasterNode)和工作节点...
storm集群部署和配置过程详解,里面有storm的详细部署步骤
文档详细介绍安装storm集群的详细的操作步骤,并配有截图。
一. Zookeeper集群搭建部署 二. apache-storm集群搭建部署 三. Kafka集群搭建部署 安装部署过程均图文并茂,简单易懂,实际按步骤操作即可。
kafka集群安装,使用者只要照文档步骤就可以部署
你还会了解到如何在Storm集群中利用不同编程语言实现特定的功能,并最终将所有解决方案交付至云端。本书中的每一个步骤都应用了成熟的开发和操作实践,确保你能够可靠地交付产品。 通过阅读本书,你将能够: 搭建你...
Twitter将Storm正式开源了,这是一个分布式的、容错的实时计算系统,它被...有个名为storm-deploy的子项目,可以在AWS上一键部署Storm集群。关于详细的步骤,可以阅读Storm Wiki上的《Setting up a Storm cluster》。
Java编写的网页版魔方游戏,编译后生成.class文件,然后用HTML去调用,不过运行时候需要你的浏览器安装有运行Class的插件。Java源代码实现部分,比较有意思,也具参考性。像坐标控制、旋转矩阵、定时器、生成图像...
Java编写的网页版魔方游戏,编译后生成.class文件,然后用HTML去调用,不过运行时候需要你的浏览器安装有运行Class的插件。Java源代码实现部分,比较有意思,也具参考性。像坐标控制、旋转矩阵、定时器、生成图像...