performance - 提高Elasticsearch副本创建性能

标签 performance elasticsearch

我有一个Elasticsearch设置,到目前为止,它有一台机器(16核64GB RAM 4x800GB SSD,在450个索引中包含1.5TB的日志数据,运行ES 5.1。

现在,我向集群添加了第二台相同的服务器。两者都通过10GBit网络连接。

所有索引都具有1个分片,并且我已将它们配置为在第二台服务器联机后具有1个副本。

现在,正在创建副本,但速度很慢。两台计算机上的负载均低于1,IO速率约为2MB / s或更低。

我正在运行以下设置:

{
  "persistent": {
    "cluster": {
      "routing": {
        "allocation": {
          "node_concurrent_incoming_recoveries": "20",
          "node_initial_primaries_recoveries": "8",
          "node_concurrent_outgoing_recoveries": "20"
        }
      }
    },
    "indices": {
      "recovery": {
        "max_bytes_per_sec": "400mb"
      },
      "store": {
        "throttle": {
          "type": "none"
        }
      }
    }
  },
  "transient": {
    "logger": {
      "org": {
        "elasticsearch": {
          "indices": "DEBUG"
        }
      }
    }
  }
}

ES 5中似乎不再存在index.store.throttle.type。

以目前的速度,传输所有数据将需要数周的时间。

最佳答案

我在这里发现了问题-节点宣布了错误的网卡的IP,所有数据均通过慢速链接进行路由。

我应该早些考虑过iftop。

更改已宣布的IP后,复制的工作速度> 800MB / s。

关于performance - 提高Elasticsearch副本创建性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41247436/

相关文章:

python - 在 Python 中将值转换为各自数据类型的最快方法

elasticsearch - 如何在ElasticSearch上执行不区分大小写的搜索?

elasticsearch - NEST试图将枚举转换为字符串

Elasticsearch Bindexception 无法分配请求的地址

elasticsearch - 查询以查找与查询中所有字段完全匹配的所有文档

java - System.currentTimeMillis 执行时间

javascript - 有什么方法可以使这种洪水在 HTML5 Canvas 中更快地填充?

php - 如何提高使用 MySQL 的 PHP 脚本的速度?

json - 在负载中指定 elasticsearch 索引

java - 从 Java 中的 BufferedReader 对象中提取全部内容的最佳方法是什么?