`
woodding2008
  • 浏览: 289599 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Storm Worker端口冲突

 
阅读更多

 

           storm任务启动过程中一个worker启动失败,通过supervisor日志发现一直在尝试启动,最后定位到时worker的端口被其他进程占用了导致启动失败,尤其是当机器上有大量短连接时会增加worker端口被占的几率。

 

解决办法

  • 其他服务避开worker端口
  • 通过内核参数配置将storm使用到的端口配置成以监听的方式启动

 

三种查看随机端口范围

sysctl  net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 1024     65000


cat /etc/sysctl.conf |grep local
net.ipv4.ip_local_port_range = 1024 65000


cat /proc/sys/net/ipv4/ip_local_port_range
1024    65000

   如果storm使用的端口在这个范围内就有冲突的几率。

 

配置预留端口

 

echo "5710-5714,15710-15714" > /proc/sys/net/ipv4/ip_local_reserved_ports


shell> vim /etc/sysctl.conf
net.ipv4.ip_local_reserved_ports = 5710-5714,15710-15714
shell> sysctl -p
 

 

  net.ipv4.ip_local_reserved_ports描述

ip_local_reserved_ports - list of comma separated ranges Specify the ports which are reserved for known third-party applications. 

These ports will not be used by automatic port assignments (e.g. when calling connect() or bind() with port number 0). Explicit port allocation behavior is unchanged.

The format used for both input and output is a comma separated list of ranges (e.g. "1,2-4,10-10" for ports 1, 2, 3, 4 and 10). Writing to the file will clear all previously reserved ports and update the current list with the one given in the input.

Note that ip_local_port_range and ip_local_reserved_ports settings are independent and both are considered by the kernel when determining which ports are available for automatic port assignments.

You can reserve ports which are not in the current
ip_local_port_range, e.g.:
$ cat /proc/sys/net/ipv4/ip_local_port_range 32000        61000
$ cat /proc/sys/net/ipv4/ip_local_reserved_ports 8080,9148
although this is redundant. However such a setting is useful if later the port range is changed to a value that will include the reserved ports.
Default: Empty

 

 

 

 

 

 

分享到:
评论

相关推荐

    zoroqi#developer-thinking#一次特殊的storm端口占用1

    一次特殊的storm端口占用storm任务迁移, 老集群下线迁移到新集群, 出现一个诡异的问题, 任务死活起不来总是卡主, 卡在链接其他worker上, 也没细

    storm集群部署和配置过程详解

    - **supervisor.slots.ports**:定义worker进程可以使用的端口列表,决定了每台worker机器可运行的worker进程数量。例如,`[6700, 6701, 6702, 6703]`表示最多可运行4个worker进程。 5. **启动后台进程**: 最后...

    Storm入门到精通

    * Worker:Storm 的执行节点,负责执行具体的计算任务。 Storm 属性 Storm 的主要属性包括: * fault-tolerant:Storm 可以自动恢复故障节点,保证系统的高可用性。 * scalable:Storm 可以根据需要水平扩展,...

    细细品味Storm_Storm简介及安装

    ### Storm简介及安装知识点梳理 #### 一、Storm简介 **Storm** 是一款由BackType公司开发的分布式实时计算系统,后被Twitter收购并开源。它主要用于处理大规模的数据流,能够简单、高效、可靠地处理实时数据。...

    Storm 源码分析

    Storm通过Master/Worker架构实现分布式部署,主要由以下几部分组成: - **Nimbus**:Storm集群的主节点,负责管理整个集群,分配任务到各个Worker节点上执行。 - **Supervisor**:每个Worker节点上的管理进程,负责...

    storm原理分析

    4. **Storm/supervisors/**:存储 Supervisor 机器的运行统计信息,包括最近一次更新时间、主机名、supervisor-id、已使用的端口列表、所有端口列表和运行时间等。 5. **Storm/errors/<topology-id>/<component-id>...

    Web Worker版调用Face-Api.js

    "Web Worker版调用Face-Api.js"是一个解决方案,它利用Web Worker技术来封装并异步执行Face-API.js库,从而避免阻塞主线程,提供高性能的用户体验。以下是关于这个主题的详细知识点: 1. **Web Worker**:Web ...

    nextjs-worker-example:这是Webpack使用Next.js加载Web Worker的示例

    NextJS Worker示例这是使Web Worker在NextJS项目中运行的示例。 要使用worker-loader将Web Worker加载到NextJS站点上,并允许在其worker上运行babel等webpack加载器,必须覆盖构建输出路径。 感谢。 // next.config....

    apache-storm-2.4.0.tar.gz

    Apache Storm 是一个分布式实时计算系统,它被设计用于处理大规模数据流,提供高吞吐量、低延迟的数据处理能力。在大数据领域,Storm 被广泛应用于实时分析、在线机器学习、持续计算、数据集成以及任何需要实时处理...

    storm安装包

    Apache Storm 是一个开源的分布式实时计算系统,它允许开发者处理无界数据流,提供高度容错性和可扩展性。在本教程中,我们将详细介绍如何安装和配置Apache Storm 1.0.6版本。 首先,了解Storm的核心概念是必要的。...

    ThinkPHP5集成GatewayWorker

    2. **配置ThinkPHP5**:在`config.php`中添加GatewayWorker的配置项,包括服务器地址、端口、业务逻辑工作进程数等。 3. **创建WebSocket服务**:在ThinkPHP5的应用目录下创建一个WebSocket服务入口文件,如`public...

    STORM学习文档

    Storm 的架构主要由四个组件组成:Nimbus、Supervisor、Worker 和 Zookeeper。 * Nimbus:负责接收用户提交的 topology,并将其分配给 Supervisor。 * Supervisor:负责管理多个 Worker,监控 Worker 的状态,并将...

    tp5.1+GatewayWorker 修复GatewayWorker在windows启动问题

    命令php think worker:gateway在windows下运行...根据GatewayWorker-for-win提供的demo修改的 本资源依赖GatewayWorker扩展,请先安装扩展。 使用方法,把解压后的文件夹放到项目根目录,双击start_for_win.bat,启动

    storm的jar包

    在Storm中,数据流被抽象为持续不断的Tuple(元组)序列,这些Tuple在网络中的worker节点间进行分布式处理,保证每个消息至少被处理一次(At-Least-Once Processing Guarantees)。这使得Storm非常适合于实时数据...

    Storm源码走读笔记

    本文档是关于Storm源码的详细走读笔记,主要分析了Storm的启动场景、Topology提交过程、worker进程中的线程使用情况、消息传递机制以及 TridentTopology的创建和ack机制等多个方面。 首先,文档提到了Storm集群中的...

    Storm笔记-PPT

    **Storm笔记概述** Storm是一个分布式实时计算系统,由Twitter开源并广泛应用于实时数据处理领域。本笔记主要围绕Storm的核心概念、起源、架构、组件、原理以及应用场景进行详细讲解。 **一、Storm概念** Storm...

    Storm配置项详解.docx

    21. **supervisor.slots.ports**:supervisor上可用于运行workers的端口列表,每个worker占用一个端口。 22. **supervisor.childopts**:配置supervisor守护进程的JVM选项。 23. **supervisor.worker.timeout.secs...

    storm实时数据处理

    Storm的核心组件包括:Nimbus(主控节点)、Supervisor(工作节点)、Worker进程以及Spout和Bolt。Nimbus负责任务调度,Supervisor管理worker进程,而worker则执行实际的计算任务。Spout是数据源,负责生成数据流;...

    storm入门 PDF 下载

    1. **Storm架构**:Storm的核心组件包括nimbus(主控节点)、supervisor(工作节点)、worker进程、spout(数据源)和bolt(处理逻辑)。Nimbus负责任务调度,Supervisor管理worker进程,worker运行spout和bolt实例...

Global site tag (gtag.js) - Google Analytics