Centos7搭建Apache Storm 集群运行环境
文章目录
- 1. 安装 Java
- 2. 下载并解压 Storm
- 3. 配置环境变量
- 4. 配置 ZooKeeper
- 5. 配置 Storm
- storm.yaml
- 自定义 `storm.yaml`
- storm-env.sh
- logback/cluster.xml
- 6. 启动 Storm 集群
- 7. 验证
1. 安装 Java
Storm 运行在 Java 平台上,因此需要先安装 Java。你可以使用以下命令安装 OpenJDK 8:
sudo yum install java-1.8.0-openjdk
2. 下载并解压 Storm
你可以从 Storm 的官方网站下载 Storm。在本教程中,我们将使用 Storm 2.2.0 版本。你可以使用以下命令下载 Storm:
wget https://archive.apache.org/dist/storm/apache-storm-2.2.0/apache-storm-2.2.0.tar.gz
下载完成后,你可以使用以下命令解压 Storm:
tar -xvf apache-storm-2.2.0.tar.gz
解压完成后,你可以将 Storm 移动到 /usr/local 目录下:
sudo mv apache-storm-2.2.0 /usr/local/
3. 配置环境变量
为了方便使用 Storm,你需要设置一些环境变量。首先,你需要打开 /etc/profile 文件:
sudo nano /etc/profile
在文件的末尾添加以下内容:
export STORM_HOME=/usr/local/apache-storm-2.2.0
export PATH=$PATH:$STORM_HOME/bin
保存后,使用以下命令使环境变量生效:
source /etc/profile
4. 配置 ZooKeeper
Storm 需要使用 ZooKeeper 来协调集群中的节点。你可以使用以下命令安装 ZooKeeper:
sudo yum install zookeeper
安装完成后,你需要启动 ZooKeeper 服务:
sudo systemctl start zookeeper
为了让 ZooKeeper 服务在系统启动时自动启动,你可以使用以下命令将其添加到系统服务中:
sudo systemctl enable zookeeper
5. 配置 Storm
Storm 的配置文件位于 $STORM_HOME/conf 目录下。你可以使用以下命令进入该目录:
cd $STORM_HOME/conf
在该目录下,有三个文件需要进行配置:
storm.yaml
该文件是 Storm 的主要配置文件,你可以使用以下命令创建该文件:
sudo cp storm.yaml.example storm.yaml
然后使用以下命令打开该文件:
sudo nano storm.yaml
在文件中添加以下内容:
storm.zookeeper.servers:- "localhost"nimbus.seeds: ["localhost"]storm.local.hostname: "localhost"
自定义 storm.yaml
一般我们只需要配置上面的就ok了,如果你想自定义一些参数可以参考下面的,我加了注释方便于你理解。
# 配置 ZooKeeper 服务器地址
storm.zookeeper.servers:- "localhost"# 指定 Storm 集群所使用的本地目录
storm.local.dir: "/mnt/storm"# 指定 Nimbus 的种子节点地址
nimbus.seeds: ["localhost"]# 指定 Storm 使用的 Thrift 传输插件
storm.thrift.transport: "org.apache.storm.security.auth.SimpleTransportPlugin"# 指定 Storm 使用的消息传输插件
storm.messaging.transport: "org.apache.storm.messaging.netty.Context"# 指定 Storm 消息服务器使用的工作线程数
storm.messaging.netty.server_worker_threads: 1# 指定 Storm 消息客户端使用的工作线程数
storm.messaging.netty.client_worker_threads: 1# 指定 Storm 消息缓冲区的大小
storm.messaging.netty.buffer_size: 1024# 指定 Storm 消息传输失败时的最大重试次数
storm.messaging.netty.max_retries: 10# 指定 Storm 消息传输重试时的最大等待时间
storm.messaging.netty.max_wait_ms: 1000# 指定 Storm 消息传输重试时的最小等待时间
storm.messaging.netty.min_wait_ms: 100
storm-env.sh
该文件是 Storm 的环境变量配置文件,你可以使用以下命令创建该文件:
sudo cp storm-env.sh.example storm-env.sh
然后使用以下命令打开该文件:
sudo nano storm-env.sh
在文件中添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
上述配置将 Java 的安装路径设置为 /usr/lib/jvm/java-1.8.0-openjdk。
logback/cluster.xml
该文件是 Storm 的日志配置文件,你可以使用以下命令打开该文件:
sudo nano logback/cluster.xml
找到以下内容:
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${storm.log.dir}/nimbus.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${storm.log.dir}/nimbus.log.%d{yyyy-MM-dd-HH}</fileNamePattern><maxHistory>30</maxHistory></rollingPolicy><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger{36} - %msg%n</pattern></encoder>
</appender>
将其中的 ${storm.log.dir} 替换为 /var/log/storm,这样 Storm 的日志将会被记录在 /var/log/storm/nimbus.log 文件中。
6. 启动 Storm 集群
在完成以上配置后,你可以使用以下命令启动 Storm 集群:
启动了 Nimbus、Supervisor 和 UI 三个进程。& 符号表示将进程放到后台运行。
storm nimbus &
storm supervisor &
storm ui &
7. 验证
已经成功地在 CentOS 7 上安装和配置了 Storm 环境,并启动了 Storm 集群。可以访问 http://localhost:8080/ 来查看 Storm UI

相关文章:
Centos7搭建Apache Storm 集群运行环境
文章目录 1. 安装 Java2. 下载并解压 Storm3. 配置环境变量4. 配置 ZooKeeper5. 配置 Stormstorm.yaml自定义 storm.yamlstorm-env.shlogback/cluster.xml 6. 启动 Storm 集群7. 验证 1. 安装 Java Storm 运行在 Java 平台上,因此需要先安装 Java。你可以使用以下命…...
C语言假期作业 DAY 12
一、选择题 1、请阅读以下程序,其运行结果是( ) int main() { char cA; if(0<c<9) printf("YES"); else printf("NO"); return 0; } A: YES B: NO C: YESNO D: 语句错误 答案解析 正确答案: A 0<c&l…...
2.4在运行时选择线程数量
在运行时选择线程数量 C标准库中对此有所帮助的特性是std::thread::hardware_currency()。这个函数返回一个对于给定程序执行时能够真正并发运行的线程数量的指示。例如,在多核系统上它可能是CPU 核心的数量。它仅仅是一个提示,如果该信息不可用则函数可…...
element-ui中Notification 通知自定义样式、按钮及点击事件
Notification 通知用于悬浮出现在页面角落,显示全局的通知提醒消息。 一、自定义html页面 element-ui官方文档中说明Notification 通知组件的message 属性支持传入 HTML 片段,但是示例只展示了简单的html片段,通常不能满足开发中的更深入需要…...
无头单向非循环单链表、带头双向循环链表
文章内容 1. 链表的概念及结构 2. 链表的分类 3.链表实现 4.代码 文章目录 1. 链表的概念及结构 概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表 中的指针链接次序实现的 。 现实中 数据结构中 链表和顺序表…...
UE4/5C++多线程插件制作(二十、源码)
目录 头文件 MultiThreadPlugins.uplugin MultiThreadPlugins.Build.cs MultiThreadPlugins.h MTPPlatform.h MTPManage.h RTPAgendy.h MTPThreadTaskManage.h...
构建稳健的PostgreSQL数据库:备份、恢复与灾难恢复策略
在当今数字化时代,数据成为企业最宝贵的资产之一。而数据库是存储、管理和保护这些数据的核心。PostgreSQL,作为一个强大的开源关系型数据库管理系统,被广泛用于各种企业和应用场景。然而,即使使用了最强大的数据库系统࿰…...
查看本地mysql账号密码
使用Navicat工具打开本地mysql,新建查询输入下面查询语句 SELECT user, authentication_string FROM mysql.user WHERE userroot将authentication_string 中的加密密码复制出来打开链接: Magic Data 5输入加密的密码,和验证码,点…...
数据结构:顺序表详解
数据结构:顺序表详解 一、 线性表二、 顺序表概念及结构1. 静态顺序表:使用定长数组存储元素。2. 动态顺序表:使用动态开辟的数组存储。三、接口实现1. 创建2. 初始化3. 扩容4. 打印5. 销毁6. 尾插7. 尾删8. 头插9. 头删10. 插入任意位置数据…...
采集数据筛选-过滤不要数据或只保留指定数据
采集文章数据,有时候会遇到一些不需要采集的数据,或者只想采集一些特定的数据,可以使用简数采集器的内容过滤功能,对采集的数据进行筛选,只有符合的数据才采集保留。 可以用于过滤掉一些广告、专题、网站首页等无效数…...
RISC-V基础指令之shift移动指令slli、srli、srai、sll、srl、sra
RISC-V的shift指令是用于对一个寄存器或一个立即数进行位移运算,并将结果存放在另一个寄存器中的指令。位移运算就是把一个操作数的每一位向左或向右移动一定的位数,得到一个新的位。RISC-V的shift指令有以下几种: slli:左逻辑位…...
【沁恒蓝牙mesh】CH58x flash分区与数据存储管理
本文主要介绍了 沁恒蓝牙芯片 CH58x 的flash 分区与数据存储管理 📋 个人简介 💖 作者简介:大家好,我是喜欢记录零碎知识点的小菜鸟。😎📝 个人主页:欢迎访问我的 Ethernet_Comm 博客主页&…...
Ctfshow web入门 JWT篇 web345-web350 详细题解 全
CTFshow JWT web345 先看题目,提示admin。 抓个包看看看。 好吧我不装了,其实我知道是JWT。直接开做。 在jwt.io转换后,发现不存在第三部分的签证,也就不需要知道密钥。 全称是JSON Web Token。 通俗地说,JWT的本质…...
2023年国家留学基金委(CSC)青年骨干教师项目即将开始申报
国家留学基金委(以下简称CSC)的青年骨干教师出国研修项目(即高校合作项目),将于2023年9月10-25日进行网上报名及申请受理。知识人网小编特提醒申请者注意流程及政策,以防错过申报时间。 青年骨干教师项目&a…...
GC垃圾回收器【入门笔记】
GC:Garbage Collectors 垃圾回收器 C/C,手动回收内存;难调试、门槛高。忘记回收、多次回收等问题 Java、Golang等,有垃圾回收器:自动回收,技术门槛降低 一、如何定位垃圾? https://www.infoq.c…...
在 React 中渲染大型数据集的 3 种方法
随着 Web 应用程序变得越来越复杂,我们需要找到有效的方法来优化性能和渲染大型数据集。在 React 应用程序中处理大型数据集时,一次呈现所有数据可能会导致性能不佳和加载时间变慢。 虚拟化是一种通过一次仅呈现数据集的一部分来解决此问题的技术&#…...
uniapp iOS 消息推送扩展:后台/杀死app进程状态能语音播报
文章目录 引言I 前期准备1.1 配置扩展1.2 测试报文II iOS Extension(扩展)2.1 插件作者配置2.2 插件使用者配置see also引言 HBuilderX3.1.5+版本uni原生插件支持iOS Extension(扩展)。 消息推送离线语音播报插件获取方式: 公z号:iOS逆向: 离线包x10, 源码是x15。 实…...
批量创建可配置物料参数文件
启用可配置物料之后,每次创建新的物料需要通过CU41创建可配置物料,没找大批量创建的程序,所以SHDB录屏搞了一个代码。 前提:物料主数据初始化通过程序导入时,可配置物料参数文件已按照物料代码赋值。 效果…...
性能压力测试的重要性与实施方法
性能压力测试是在软件开发过程中评估系统在不同负载条件下的表现和稳定性的关键步骤。这种测试是为了确定系统在正常和峰值负载下的性能表现,以验证系统是否能够满足用户需求,同时发现潜在的性能问题并加以解决。 首先,性能压力测试对于确保系…...
HCIP入门静态实验
题目及要求 第一步:拓扑的搭建 第二步:路由、IP的配置 r1: <Huawei>sys Enter system view, return user view with CtrlZ. [Huawei]sys r1 [r1]int loop [r1]int LoopBack 0 [r1-LoopBack0]ip add 192.168.1.65 27 [r1-LoopBack0]int loop 1 […...
Spring Cloud AWS 实战教程:构建高可用 SQS 消息队列应用 [特殊字符]
Spring Cloud AWS 实战教程:构建高可用 SQS 消息队列应用 🚀 【免费下载链接】spring-cloud-aws The New Home for Spring Cloud AWS 项目地址: https://gitcode.com/gh_mirrors/sp/spring-cloud-aws Spring Cloud AWS 是一个强大的开源框架&…...
64_《智能体微服务架构企业级实战教程》授权与认证之授权认证集成测试
前言 配套视频教程: 在 Bilibili课堂、CSDN课程、51CTO学堂 同步发售,提供:源码+部署脚本+文档。 bilibili课堂视频教程:智能体微服务架构企业级实战教程_哔哩哔哩_bilibili CSDN课程视频教程:智能体微服务架构企业级实战教程_在线视频教程-CSDN程序员研修院 51CTO学堂…...
告别CAJ格式困扰:3分钟学会用开源工具将知网文献转为PDF
告别CAJ格式困扰:3分钟学会用开源工具将知网文献转为PDF 【免费下载链接】caj2pdf Convert CAJ (China Academic Journals) files to PDF. 转换中国知网 CAJ 格式文献为 PDF。佛系转换,成功与否,皆是玄学。 项目地址: https://gitcode.com/…...
<背包问题>
背包问题是一类组合优化问题,其基本形式是给定一组物品,每个物品都有一个重量和一个价值,以及一个有限的背包容量,目标是在不超过背包容量的前提下,选择物品使得背包中的物品价值最大化。动态规划是解决背包问题的常用…...
【审计专栏】【财务领域】 第四十九篇 人在企业中的核心资产和核心利益01
编号 类型 企业 (行业/企业产品/企业利益链/生态位与层级) 业务领域 企业性质 企业中人的角色/岗位/利益矩阵 人在企业中的核心资产/附属资产 资产的业务-财务数学模型及数字/数值 关联知识 1 核心经营性资产(如IP、数据、品牌) 行业:人工智能 产品:工业视觉检…...
企业云盘签章技术方案:从数字签名原理到工程落地
背景 电子签章在企业云盘中的落地,不只是一个"上传盖章图片"的功能实现。本质上,它是一套涉及数字签名、PKI基础设施、文档完整性校验的综合性技术方案。本文从技术选型角度,说清楚企业云盘内置签章需要解决哪些问题、主流实现方案…...
基于KS距离度量交通流分布偏移:提升DRL交通信号控制鲁棒性的工程实践
1. 项目概述与核心挑战在智能交通系统(ITS)领域,基于深度强化学习(DRL)的交通信号控制(Traffic Signal Control)正从研究走向实际部署。作为一名长期关注AI落地应用的从业者,我见过太…...
ImageGlass:一个支持90+图像格式的轻量级Windows图片查看器
ImageGlass:一个支持90图像格式的轻量级Windows图片查看器 【免费下载链接】ImageGlass 🏞 A lightweight, versatile image viewer 项目地址: https://gitcode.com/gh_mirrors/im/ImageGlass 还在为Windows自带的图片查看器功能单一而烦恼吗&…...
DeepSeek代码审查能力白皮书(2024企业级实测报告)
更多请点击: https://kaifayun.com 第一章:DeepSeek代码审查能力白皮书(2024企业级实测报告)概述 本报告基于2024年Q1至Q3期间,面向金融、电信与云原生三大垂直行业的17家头部企业客户开展的深度实测,覆盖…...
H3C VSR路由器实战:用QoS策略给不同VLAN用户打DSCP标签(附配置命令详解)
H3C VSR路由器QoS实战:基于VLAN的DSCP标记与流量调度指南 在企业网络环境中,不同业务对网络质量的需求差异显著。普通办公流量可以容忍轻微延迟,但视频会议需要稳定的低延迟保障,而访客上网则可能消耗大量带宽却无需优先保障。本文…...
