一、基础环境:
JDK :1.8.0_65 (要求1.6+)
ZooKeeper:3.4.10
Jstorm2.1.1
主机数:3(要求3+,且必须是奇数,因为ZooKeeper的选举算法)
主机名 | IP地址 | JDK | ZooKeeper |
nimbus | 10.116.33.109 | 1.8.0_65 | server.1 |
supervisor | 10.27.185.72 | 1.8.0_65 | server.2 |
supervisor | 10.25.203.67 | 1.8.0_65 | server.3 |
二、节点上安装配置:
下载并解压
wget "https://github.com/alibaba/jstorm/releases/download/2.1.1/jstorm-2.1.1.zip"
unzip jstorm-2.1.1.zip
配置环境变量
vim ~/.bash_profile
JSTORM_HOME=/data/jstorm/jstorm-2.1.1
export PATH=$PATH:$JSTORM_HOME/bin
保存后
source ~/.bash_profile
设置 storm.yaml
vim storm.yaml
storm.zookeeper.servers:zk的IP地址
nimbus.host:nimbus的IP地址
注意:
1.配置文件中参数前必须有一个空格,否则会解析失败。
2.最后加入jvm 参数配置,否则内存太小无法启动
nimbus.childopts: "-Xms128m -Xmx128m -Xmn64m -XX:SurvivorRatio=4 -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+HeapDumpOnOutOfMemoryError -XX:CMSMaxAbortablePrecleanTime=5000"
在提交jar的节点上执行:
mkdir ~/.jstorm
cp -f $JSTORM_HOME/conf/storm.yaml ~/.jstorm
启动JStorm
在nimbus 节点上执行 nohup jstorm nimbus &, 查看$JSTORM_HOME/logs/nimbus.log检查有无错误
在supervisor节点上执行 nohup jstorm supervisor &, 查看$JSTORM_HOME/logs/supervisor.log检查有无错误
运行任务jar
#提交上传jar
执行jstorm jar xxxxxx.jar com.alibaba.xxxx.xx parameter
- xxxx.jar 为打包后的jar
- com.alibaba.xxxx.xx 为入口类,即提交任务的类
- parameter即为提交参数