首页 帮助中心 新加坡高防服务器 CentOS 6.8 安装并使用JStorm集群
CentOS 6.8 安装并使用JStorm集群
时间 : 2022-09-15 11:19:28 编辑 : 华纳云 阅读量 : 1883

JStorm 是参考 Apache Storm 实现的实时流式计算框架,在网络IO、线程模型、资源调度、可用性及稳定性上做了持续改进,已被越来越多企业使用。

从应用的角度,JStorm应用是一种遵守某种编程规范的分布式应用。从系统角度, JStorm是一套类似MapReduce的调度系统。 从数据的角度,JStorm是一套基于流水线的消息处理机制。

实时计算现在是大数据领域中最火爆的一个方向,因为人们对数据的要求越来越高,实时性要求也越来越快,传统的Hadoop MapReduce,逐渐满足不了需求,因此在这个领域需求不断。

Jstorm 集群安装

1、系统环境准备

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;OS:&nbsp;CentOS&nbsp;6.8&nbsp;mininal</span>

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;host.ip:&nbsp;10.1.1.78&nbsp;aniutv-1</span>

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;host.ip:&nbsp;10.1.1.80&nbsp;aniutv-2</span>

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;host.ip:&nbsp;10.1.1.97&nbsp;aniutv-5</span>

2、安装目录自定义

jstorm : /opt/jstorm (源码安装);

zookeeper : /opt/zookeeper(源码安装);

java : /usr/java/jdk1.7.0_79 (rpm包安装)

3、zookeeper 集群安装

4、zeromq 安装

zeromq下载地址:http://zeromq.org/area:download/

下载zeromq-4.2.1.tar.gz 到/usr/local/src

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;/usr/<span style="color: #4ec9b0;line-height: 26px">local</span>/src&nbsp;&amp;&amp;&nbsp;tar&nbsp;-zxf&nbsp;zeromq-4.2.1.tar.gz&nbsp;-C&nbsp;/opt

cd /opt/zeromq-4.2.1 && ./configure && make && sudo make install && sudo ldconfig

5、jzmq安装

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;/opt&nbsp;&amp;&amp;&nbsp;git&nbsp;<span style="color: #4ec9b0;line-height: 26px">clone</span>&nbsp;&nbsp;https://github.com/nathanmarz/jzmq.git

./autogen.sh&nbsp;&amp;&amp;&nbsp;./configure&nbsp;&amp;&amp;&nbsp;make&nbsp;&amp;&amp;&nbsp;make&nbsp;install

6、JStorm安装

wget&nbsp;https://github.com/alibaba/jstorm/releases/download/2.1.1/jstorm-2.1.1.zip&nbsp;-P&nbsp;/usr/<span style="color: #4ec9b0;line-height: 26px">local</span>/src

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;/usr/<span style="color: #4ec9b0;line-height: 26px">local</span>/src&nbsp;&amp;&amp;&nbsp;unzip&nbsp;jstorm-2.1.1.zip&nbsp;-d&nbsp;/opt

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;/opt&nbsp;&amp;&amp;&nbsp;mv&nbsp;jstorm-2.1.1&nbsp;jstorm

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;mkdir&nbsp;/opt/jstorm/jstorm_data</span>

<span style="color: #4ec9b0;line-height: 26px">echo</span>&nbsp;<span style="color: #d69d85;line-height: 26px">'#&nbsp;jstorm&nbsp;env'</span>&nbsp;&gt;&gt;&nbsp;~/.bashrc

<span style="color: #4ec9b0;line-height: 26px">echo</span>&nbsp;<span style="color: #d69d85;line-height: 26px">'export&nbsp;JSTORM_HOME=/opt/jstorm'</span>&nbsp;&gt;&gt;&nbsp;~/.bashrc

<span style="color: #4ec9b0;line-height: 26px">echo</span>&nbsp;<span style="color: #d69d85;line-height: 26px">'export&nbsp;PATH=$PATH:$JSTORM_HOME/bin'</span>&nbsp;&gt;&gt;&nbsp;~/.bashrc

<span style="color: #4ec9b0;line-height: 26px">source</span>&nbsp;~/.bashrc

# JStorm 配置

sed&nbsp;-i&nbsp;/<span style="color: #d69d85;line-height: 26px">'storm.zookeeper.servers:/a\&nbsp;-&nbsp;"10.1.1.78"'</span>&nbsp;/opt/jstorm/conf/storm.yaml

sed&nbsp;-i&nbsp;/<span style="color: #d69d85;line-height: 26px">'storm.zookeeper.servers:/a\&nbsp;-&nbsp;"10.1.1.80"'</span>&nbsp;/opt/jstorm/conf/storm.yaml

sed&nbsp;-i&nbsp;/<span style="color: #d69d85;line-height: 26px">'storm.zookeeper.servers:/a\&nbsp;-&nbsp;"10.1.1.97"'</span>&nbsp;/opt/jstorm/conf/storm.yaml

sed&nbsp;-i&nbsp;/<span style="color: #d69d85;line-height: 26px">'storm.zookeeper.root/a\&nbsp;nimbus.host:&nbsp;"10.1.1.78"'</span>&nbsp;/opt/jstorm/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;

topology.enable.classloader: false, 默认关闭classloader,如果应用的jar与JStorm的依赖的jar发生冲突,比如应用使用thrift9,但jstorm使用thrift7时,就需要打开classloader。建议在集群级别上默认关闭,在具体需要隔离的topology上打开这个选项。

# 下面命令只需要在安装 jstorm_ui 和提交jar节点的机器上面执行即可

mkdir&nbsp;~/.jstorm

cp&nbsp;-f&nbsp;<span style="color: #bd63c5;line-height: 26px">$JSTORM_HOME</span>/conf/storm.yaml&nbsp;~/.jstorm

7、安装JStorm Web UI

强制使用tomcat7.0或以上版本,切记拷贝**~/.jstorm/storm.yaml,** Web UI 可以和Nimbus在同一个节点上

mkdir&nbsp;~/.jstorm

cp&nbsp;-f&nbsp;<span style="color: #bd63c5;line-height: 26px">$JSTORM_HOME</span>/conf/storm.yaml&nbsp;~/.jstorm

下载tomcat&nbsp;7.x&nbsp;(以apache-tomcat-7.0.37&nbsp;为例)

tar&nbsp;-xzf&nbsp;apache-tomcat-7.0.75.tar.gz

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;apache-tomcat-7.0.75

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;webapps

cp&nbsp;<span style="color: #bd63c5;line-height: 26px">$JSTORM_HOME</span>/jstorm-ui-2.1.1.war&nbsp;./

mv&nbsp;ROOT&nbsp;ROOT.old

ln&nbsp;-s&nbsp;jstorm-ui-2.1.1&nbsp;ROOT&nbsp;&nbsp;&nbsp;

<span style="color: #57a64a;font-style: italic;line-height: 26px">#&nbsp;另外不是&nbsp;ln&nbsp;-s&nbsp;jstorm-ui-2.1.1.war&nbsp;ROOT&nbsp;这个要小心</span>

<span style="color: #4ec9b0;line-height: 26px">cd</span>&nbsp;../bin

./startup.sh

8、JStorm启动

1.在nimbus 节点(10.1.1.78)上执行 “nohup jstorm nimbus &”, 查看$JSTORM_HOME/logs/nimbus.log检查有无错误

2.在supervisor节点(10.1.1.78,10.1.1.80,10.1.1.97)上执行 “nohup jstorm supervisor &”, 查看$JSTORM_HOME/logs/supervisor.log检查有无错误

9、JStorm Web UI

JStorm集群启动成功截图如下:

https://www.hncloud.com/uploads/UEditorImages/202209/15/99e3761b0c7476b2477881ce9f2b2ac4.jpg

CentOS 6.8 实战部署JStorm集群CentOS 6.8 实战部署JStorm集群

# JStorm 集群安装问题总结

1、注意/etc/hosts设置,添加相对应的ip hostname

2、设置ssh免密操作(此步骤在zookeeper集群完成)

3、注意各服务的环境变量设置

华纳云 推荐文章
如何重新安装 Ubuntu Linux系统? iis6 无法访问网站_IIS重启无效 IIS无法显示中文名称图片问题的解决方法 CentOS 7 中创建RAID 5磁盘阵列 CentOS 7上修改主机名 win2003 https 网站的图文配置教程 Windows服务器安装PHP MongoDB扩展的方法 CentOS 8清空DNS缓存的方法 Ubuntu中使用VNC链接 GNOME具体方法 Linux中使用TestDisk恢复文件具体方法
客服咨询
7*24小时技术支持
技术支持
渠道支持