`
aishu
  • 浏览: 23546 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Logstash写入Elasticsearch并发问题

阅读更多

Logstash写入Elasticsearch并发问题

              公司项目是通过Logstash采集日志存入Elasticsearch集群中,Logstash通过配置文件启动的时候报如下错误:

   

[2017-03-11T10:08:11,390][ERROR][Logstash.outputs.elasticsearch] Action
[2017-03-11T10:08:11,391][ERROR][Logstash.outputs.elasticsearch] Action
[2017-03-11T10:08:11,393][INFO][logstash.outputs.elasticsearch]retrying failed 
action with response code:429 ({"type" => "es_rejected_execution_exception", "reason" => "rejected" execute of org.elasticsearch.transport.TransportService$6@1046foc on EsThreadPoolExecutor [bulk.queue.capacity=50, org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor@e2e35f2 [Runing, pool size = 32, active threads = 32 queue.capacity=50, completed tasks=1041050369"]}

      以为是资源不够,通过停了所有Logstash进程再重新启动,同样报这个错误。确认不是集群资源问题。通过设置elasticsearch.yml设置纯种池也无法解决问题:

    

  1. threadpool.index.type: fixed  
  2. threadpool.index.size: 100  
  3. threadpool.index.queue_size: 500 

 

线程处理不过来。queue加大到1000也无法解决这个问题。

 

       通过RestAPIs:http://localhost:9002/_cat/thread_pool?pretty查看其拒绝服务的那台机器,正好是分片数量最多的节点。也就是分片没有打散,当前集中有3个分片,导致请求压力都在当前节点上。通过设置模版和索引的index.routing.allocation.total_shards_per_node属性解决这个问题。设置成功后分片会打散至其他节点上。 

        需要特别注意这个属性,如果设置值为1,也就是说每个节点最多保存一个分片,当你分片的总数(包括复本数)大于节点数,会一值报分片的异常。



   

 

   

 

 

 

  • 大小: 66.9 KB
分享到:
评论

相关推荐

    elasticsearch and logstash版本6.2.4同步mysql

    在集成MySQL的过程中,我们需要使用Logstash的`jdbc`输入插件来读取MySQL数据,然后通过Elasticsearch输出插件将数据写入Elasticsearch。以下是具体步骤: 1. **安装Elasticsearch**:解压 `elasticsearch-6.2.4....

    logstash-7.6.1.zip

    7.6.1版本可能增强了与Elasticsearch的集成,提高了数据写入速度。 Elastic Stack(ELK)是Logstash的重要应用场景,它包括Elasticsearch(存储和搜索数据)、Logstash(数据收集和处理)以及Kibana(数据可视化)...

    logstash配置文件.rar

    - **输出插件**:elasticsearch output用于将数据写入Elasticsearch,stdout output用于在控制台输出调试信息。 - **Ruby插件**:提供自定义逻辑处理,可以处理复杂的业务规则。 - **日志解析**:正确解析日志格式是...

    es-kibana-logstash.txt

    根据提供的文件信息,我们可以推断出这是一份与Elasticsearch、Kibana和Logstash相关的文档。由于实际内容并未给出,以下将基于标题、描述和标签中的关键词展开,介绍这三个核心组件的基本概念、功能及如何协同工作...

    Elasticsearch参考手册中文版高清

    Elasticsearch支持实时更新文档,但建议采用幂等性更新策略以避免并发问题。 `_update` API允许部分更新文档,而无需读取、修改再写入整个文档。 四、索引管理 索引模板(Template)用于预先定义索引设置和映射...

    logstash-7.12.0-output-clickhouse.rar

    4. 监控与报警:结合Elasticsearch和Kibana,可以实时监控Logstash和Clickhouse的状态,及时发现并解决问题。 总结,Logstash 7.12.0与Clickhouse的集成,为大数据实时处理提供了强大且灵活的解决方案。通过合理...

    最新版windows logstash-7.8.1.zip

    - Elasticsearch输出插件:将处理后的数据发送到Elasticsearch,进行索引和搜索。 - Kafka输出插件:将数据流式传输到Apache Kafka,用于分布式消息传递。 - File输出插件:将结果写入文件,供离线分析或备份。 ...

    logstash-6.7.0.tar.gz

    它被广泛应用于日志管理和大数据处理,是Elastic Stack(以前称为ELK Stack,包括Elasticsearch、Logstash和Kibana)的重要组成部分。Logstash 6.7.0 版本提供了许多增强的功能和改进,旨在提高性能、稳定性和用户...

    logstash-1.4.2

    Elasticsearch 是 Logstash 最常搭配的存储和搜索平台,两者结合可以构建出强大的实时日志分析系统。 4. **与 Hadoop 的协同**: 虽然“Hadoop”标签并未直接指明 Logstash 1.4.2 与 Hadoop 的集成,但 Logstash ...

    最新版linux logstash-8.2.3-linux-x86_64.tar.gz

    3. **输出插件(Outputs)**:Logstash 将处理过后的数据发送到各种目的地,如Elasticsearch、Kibana、文件系统或自定义服务。8.2.3版本可能优化了与Elastic Stack的集成,提高写入速度,同时可能引入了新的输出选项...

    最新版windows logstash-7.13.2-windows-x86_64.zip

    在Windows Logstash环境中,常见目标包括Elasticsearch(用于索引和搜索)、Kafka(消息队列)、File(写入文件)或其他日志聚合服务。对于7.13.2版本,Elasticsearch是最常见的输出选择,用于构建实时数据分析平台...

    elk部署需要的工具logstash

    在ELK(Elasticsearch, Logstash, Kibana)堆栈中,它扮演着数据收集器的角色,将来自不同源的日志数据转换并发送到Elasticsearch进行存储和分析,或者直接通过Kibana进行可视化。现在我们将详细讨论Logstash及其在...

    ElasticSearch面试题

    12. **Elasticsearch如何处理高并发写入?** 通过负载均衡和分片机制,分散写入压力,同时使用 bulk API 提升批量写入效率。 13. **谈谈Elasticsearch的安全性?** ES 5.x引入了 Shield 插件(现集成在X-Pack中)...

    最新版linux logstash-7.10.1-linux-x86_64.tar.gz

    输出组件负责将处理后的数据发送到各种目标,如 Elasticsearch、Kibana、MongoDB、Redis 或者直接写入文件等。在 logstash-7.10.1 中,Elasticsearch 通常是首选的存储和检索平台,因为它与 Logstash 和 Kibana 集成...

    最新版linux logstash-7.10.2-linux-x86_64.tar.gz

    在7.10.2版本中,可能加强了与Elasticsearch的集成,提高了数据写入速度,或者增加了对新目标的支持,以扩展Logstash的可扩展性。 此版本还可能包含了性能优化,例如更快的事件处理速度、更低的资源消耗,以及更好...

    Elasticsearch简单介绍-莫海滩.pptx

    2. **近实时(Near Realtime, NRT)**:Elasticsearch的数据写入到可搜索之间存在大约1秒的延迟,这种设计保证了系统的实时性。同时,通过构建集群,Elasticsearch可以实现高可用性和水平扩展。 3. **集群与节点**:...

    解决ElasticSearch 7.x 设置大分片的时,导入数据发生rejected 429

    解决这个问题的方法之一是调整Elasticsearch的配置,以增加写入线程池的队列大小。在Elasticsearch的配置文件(通常是`elasticsearch.yml`)中,可以找到并修改`thread_pool.write.queue_size`参数,将其值增大,如...

    Elasticsearch+Fluentd+Kafka搭建日志系统

    Fluentd配置文件(如fluent.conf)包含了输入和输出插件的设置,例如Kafka输入插件用于从Kafka消费数据,Elasticsearch输出插件将数据写入Elasticsearch。 2. **fluent.conf**:Fluentd使用`@type copy`插件复制...

    Elasticsearch最新2021年面试题附答案解析,大汇总.md

    Beats 是一种轻量级的数据采集工具,主要用于收集和发送服务器日志和监控数据至 Elasticsearch 或 Logstash 进行处理。 - **应用场景**: - **审计数据**:系统审计记录,如登录尝试和权限变更。 - **日志文件**...

    elasticsearch

    - **Logstash**:数据采集工具,用于从各种来源收集数据并发送到Elasticsearch。 - **Beats**:轻量级数据shippers,如Filebeat用于日志传输,Metricbeat监控系统指标。 - **Kibana**:数据可视化和交互式探索...

Global site tag (gtag.js) - Google Analytics