千家信息网

Storm集群如何搭建

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章将为大家详细讲解有关Storm集群如何搭建,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Storm是什么?Storm是Twitter开源的一个分布式的实时计
千家信息网最后更新 2025年02月03日Storm集群如何搭建

这篇文章将为大家详细讲解有关Storm集群如何搭建,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Storm是什么?
Storm是Twitter开源的一个分布式的实时计算系统
使用场景:
数据的实时分析,持续计算,分布式RPC等等.

Storm特点:(Storm类似手扶电梯,不出故障就会一直运行.
hadoop类似升降电梯,到达一定程度会停止)
分布式
可扩展
高可靠性
编程模型简单
高效实时

常用的类:
BaseRichSpout(消息生产者)
BaseBasicBolt(消息处理者)
TopologyBuilder(拓扑的构建器)
Config(配置)
StormSubmitter/LocalCluster(拓扑提交器)

Storm集群部署
Storm集群架构:

如图:

在Storm的集群里面有两种节点:控制节点和工作节点。
控制节点上面运行一个叫Nimbus进程,Nimbus负责在集群里面

分发代码,分配计算任务,并且监控状态。
每一个工作节点上面运行一个叫做Supervisor进程。
Supervisor负责监听从Nimbus分配给它执行的任务,

据此启动或停止执行任务的工作进程

Nimbus和Supervisor之间的所有协调工作都是通过Zookeeper集群完成。

集群规划:(根据具体需求规划)
linux主机名 Storm角色 Zookeeper
master Nimubus 单节点zk
slave01 Supervisor
slave02 Supervisor

准备工作:
环境:centos6.4
软件:
jzmq-master
storm-0.8.2
zeromq-2.1.7
zookeeper-3.4.5

环境配置:(参见前几篇博客)
linux基本配置:
修改主机名
修改IP
修改主机和IP的映射关系
关闭防火墙

安装步骤:
1.安装jdk
2.搭建Zookeeper集群(这里我们只安装一个zk在主节点上)
解压
进入zk的conf目录下,cp zoo_sample.cfg zoo.cfg(修改一下名字)
其它的暂时都不变
3.安装Storm依赖(zeromq、jzmq、python)
3.1安装zeromq,然后进入到zeromq-2.1.7/目录下
检测环境:./configure
cd zeromq-2.1.7
./configure
#编译可能会出错:

configure: error: Unable to find a working C++ compiler
#安装一下依赖的rpm包:libstdc++-devel gcc-c++
虚拟机可以上网的情况下:(建议使用此方法)
yum install gcc-c++
虚拟机不能上网情况:

首先到

http://mirrors.163.com/centos/6.4/os/x86_64/Packages/
(下载的版本一定要和系统对应)
rpm -i libstdc++-devel-4.4.7-3.el6.x86_64.rpm
rpm -i gcc-c++-4.4.7-3.el6.x86_64.rpm
rpm -i libuuid-devel-2.17.2-12.9.el6.x86_64.rpm
然后运行./configure
make(编译)
make install(这个才彻底安装)
3.2.编译安装JZMQ:
cd jzmq
执行./autogen.sh

(是为了让它产生配置文件,默认没有配置文件的)
#报错:autogen.sh: error: could not find libtool.
libtool is required to run autogen.sh.

缺少libtool
同样,可上网情况下
yum install libtool(readhat企业版不会出现这些报错)
或者手动安装
rpm -i autoconf-2.63-5.1.el6.noarch.rpm
rpm -i automake-1.11.1-4.el6.noarch.rpm
rpm -i libtool-2.2.6-15.5.el6.x86_64.rpm
./configure
make
make install
3.33.编译安装Python

(先确定你系统自带的版本,如果是2.6.6或者之上的不需要安装)
tar -zxvf Python-2.6.6.tgz
cd Python-2.6.6
./configure
make
make install
3.4安装storm
修改storm.yaml配置文件(子节点上也得修改)
修改zk对应的主机名
修改主节点对应的主机名
PS:

3.41.Storm发行版本解压目录下有一个

conf/storm.yaml文件:
用于配置Storm。默认配置在这里可以查看

conf/storm.yaml中的
配置选项将覆盖defaults.yaml中的默认配置。

以下配置选项是必须在

conf/storm.yaml中进行配置的:
storm.zookeeper.servers:

Storm集群使用的Zookeeper集群地址,

其格式如下:
storm.zookeeper.servers:
- "111.222.333.444"> - "555.666.777.888"
如果Zookeeper集群使用的不是默认端口,

那么还需要storm.zookeeper.port选项。
3.42storm.local.dir: Nimbus和Supervisor进程

用于存储少量状态,
如jars、confs等的本地磁盘目录,

需要提前创建该目录并给以足够的访问权限。
然后在storm.yaml中配置该目录,如:
storm.local.dir: "/usr/storm/workdir"

分别启动三台机器
master:到storm的bin目录下

./storm nimbus > /dev/null 2>&1 &
slave01:到storm的bin目录下

./storm supervisor > ../logs/su.log 2>&1 &
slave02:到storm的bin目录下

./storm supervisor > ../logs/su.log 2>&1 &
(启动后台进程,并把正确和错误的信息输出到该文件中)
在master上启动UI管理界面

./storm ui > /dev/null 2>&1 &
通过浏览器观察:(主节点的ip:8080)
观察集群的worker资源使用情况、

Topologies的运行状态等信息。

关于"Storm集群如何搭建"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

集群 配置 节点 目录 主机 文件 进程 工作 运行 情况 编译 任务 分布式 实时 版本 状态 环境 篇文章 系统 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 江山软件开发极速建站 美国警察被指滥用机密数据库 空间数据库 拷贝 互联网科技小创业项目 用Xitami架设web服务器 2021年网络安全周主题曲 医院网络安全工作责任制落实情况 四川省运动技术学院网络安全 电脑服务器的密码能随便给吗 正式服魔兽怎么找的服务器的人 成都软件开发学校好不好 软件开发项目技术支持是什么 阿里云美国服务器 vpn 四川网络安全资讯发展前景好 开封市委网络安全和信息化 网络安全软件测试工程师 网络安全科普总结 前锦网络技术有限公司招聘 上海搜网络技术有限公司 网络技术咨询的问题 全国城市的数据库 上海电商软件开发服务介绍 玉林市app软件开发 sql 删除数据库 语句 优秀东奥网络安全卫士 视频数据记录用什么数据库记录好 中国网络安全宣传常识 fm2022中国数据库 阿里云数据库中国 数据库和信息网络安全的区别
0