搭建Strom集群指南:从单机到多机扩展
需积分: 10 5 浏览量
更新于2024-08-20
收藏 2.08MB PPT 举报
"本文档详细介绍了如何将Storm扩展成为一个集群,并提供了相关组件如Zookeeper、Kafka和Maven的背景知识。"
在分布式计算领域,Apache Storm是一个强大的实时计算系统,它允许用户处理无界数据流。为了实现高可用性和可扩展性,Storm通常会部署在集群环境中。以下是如何将Storm扩展成一个集群的方法:
首先,你需要准备多台机器,每台机器上都需要安装相同版本的Storm软件包。这个过程可以从Shaka/storm目录下复制整个软件包到新机器上。值得注意的是,由于集群中的Zookeeper和Nimbus是共享的,所以在新机器上配置文件不需要修改。
Zookeeper是一个分布式的协调服务,它用于管理集群的状态信息,例如Storm集群的元数据。Zookeeper的推荐配置是部署2N+1台服务器,这样可以保证集群的高可用性和稳定性,即使有N台服务器出现故障,集群仍然能够正常工作。
Supervisor是Storm集群中的节点管理者,负责在各个节点上启动和监控worker进程。你可以根据需求动态扩展Supervisor的数量。默认情况下,一个Supervisor分配4个worker,每个worker可以执行多个task任务。
在Storm集群中,一个Topology可以跨越多个worker运行,每个worker在一个独立的机器上。worker进程执行Topology的一部分,而executor则执行特定component(spout或bolt)的一部分。每个component至少对应一个executor,但一个executor只能对应一个component。executor线程可以执行一个或多个tasks,尽管通常每个executor只执行一个task。
Task是实际执行业务逻辑的单元,它可以看作是执行线程,但不完全等同。worker进程的数目可以根据负载和机器数量进行配置,以优化并发性能。
在优化Storm Topology时,parallelism(并行度)是一个关键概念,它决定了worker、executor和task的数量。在单服务器上进行scale(扩展)时,可以通过调整这些参数来适应不同的处理需求。
24/5/22的笔记提到了parallelism和单服务器scale,这可能是指在优化Topologies时,通过增加并行度来提高处理能力,尤其是在单一服务器资源有限的情况下。
总结来说,构建一个Storm集群涉及复制相同的Storm软件包到多台机器,配置环境变量,启动Supervisors,并利用Zookeeper进行集群协调。理解worker、executor和task的关系以及如何调整并行度对于优化Storm集群的性能至关重要。同时,保持Zookeeper的高可用性是确保整个集群稳定运行的基础。
158 浏览量
2021-06-11 上传
2021-04-30 上传
127 浏览量
2024-12-26 上传
109 浏览量
2024-12-26 上传
西住流军神
- 粉丝: 31
- 资源: 2万+
最新资源
- Leaflet.Vehicletrackplayback.rar
- WebAccess实战应用二 :OCX 控件在WebAccess 中的应用.rar
- Django-taskmanager-app:一个使用Django构建的简单待办事项应用
- Java_Web项目-招聘网站
- DangerousNanthy:旧版经典DOS游戏《 Dangerous Dave 1995》的重制版
- 施工管理资料表格-F0501_制冷设备运行调试记录
- 纯jQuery代码实现时钟效果
- jd_review_num_sina_h1
- hapi-auth-bearer-token:用于hapi的简单Bearer身份验证方案插件,通过Header,Cookie或Query参数接受令牌
- Mock-Test
- 迅鹏 SPR90 4路压力记录仪.zip
- phaser-typescript-webpack:另一个使用TypeScript和Webpack的Phaser CE样板
- 电动汽车_NEDC工况下的换挡点计算.zip
- Lekcja9:09.03.2021
- index-p-vuejs
- ActionView问题需求跟踪工具 v1.12.0(支持二次开发).zip