storm install
CentOSStorm安装
1.jdk
jdk下载解压略
环境变量配置:
vi/etc/profile
JAVA_HOME=/usr/java/jdk1.6.0_45
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
exportJAVA_HOMECLASSPATHPATH
source/etc/profile
2.搭建Zookeeper集群;
对于Zookeeper集群的话,官方推荐的最小节点数为3个
2.1官方下载Zookeeper包
2.2在conf目录下创建Zookeeper配置文件zoo.cfg
tickTime=2000
#dataDir指定Zookeeper的数据文件目录
dataDir=/var/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
#server.id=host:port:port,id是为每个Zookeeper节点的编号保存在dataDir目录下的myid文件中
server.1=zoo1:2888:3888
2.3在dataDir目录下创建myid文件,文件中只包含一行,且内容为该节点对应的server.id中的id编号。
2.4启动Zookeeper服务
/usr/local/zookeeper-3.4.5/bin/zkServer.shstart#启动服务
/usr/local/zookeeper-3.4.5/bin/zkServer.shstatus#查看状态
/usr/local/zookeeper-3.4.5/binbin/zkCli.sh-server127.0.0.1:2181#客户端连接
3.安装Storm依赖库;
3.1.ZeroMQ
官方下载
解压
./configure
make
sudomakeinstall
如果安装过程中找不到依赖的程序请用yum安装
3.2.JZMQ
Github下载
解压
./autogen.sh
./configure
make
sudomakeinstall
3.3.Python
官方下载
解压
./configure
make
sudomakeinstall
3.4.Unzip
yuminstallunzip
4.下载并解压Storm发布版本;
官方下载
解压
5.修改storm.yaml配置文件
附上storm.yamldemo
1
Storm发行版本解压目录下有一个conf/storm.yaml文件,用于配置Storm。默认配置在这里可以查看。conf/storm.yaml中的配置选项将覆盖defaults.yaml中的默认配置。以下配置选项是必须在conf/storm.yaml中进行配置的:
2
storm.zookeeper.servers:Storm集群使用的Zookeeper集群地址,其格式如下:
storm.zookeeper.servers:
-“111.222.333.444″
-“555.666.777.888″
3
如果Zookeeper集群使用的不是默认端口,那么还需要storm.zookeeper.port选项。
4
storm.local.dir:Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。然后在storm.yaml中配置该目录,如:
storm.local.dir:"/home/admin/storm/workdir"
5
java.library.path:Storm使用的本地库(ZMQ和JZMQ)加载路径,默认为”/usr/local/lib:/opt/local/lib:/usr/lib”,一般来说ZMQ和JZMQ默认安装在/usr/local/lib下,因此不需要配置即可。
6
nimbus.host:Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件,如:
nimbus.host:"111.222.333.444"
7
supervisor.slots.ports:对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口,如:
supervisor.slots.ports:
-6700
-6701
-6702
-6703
6.启动Storm各个后台进程
nohup/usr/local/storm-0.9.0.1/bin/stormnimbus>/dev/null2>&1&
nohup/usr/local/storm-0.9.0.1/bin/stormui>/dev/null2>&1&
nohup/usr/local/storm-0.9.0.1/bin/stormsupervisor>/dev/null2>&1&
7提交jar至集群
nohupstormjarxxx.jarHelloTopology"test"&