`
weitao1026
  • 浏览: 1052900 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Elasticsearch常用配置及性能参数

 
阅读更多

cluster.name: estest   集群名称
node.name: “testanya”  节点名称

node.master: false  是否主节点
node.data: true   是否存储数据

index.store.type: niofs 读写文件方式
index.cache.field.type: soft 缓存类型

bootstrap.mlockall: true 禁用swap

gateway.type: local 本地存储

gateway.recover_after_nodes: 3 3个数据节点开始恢复

gateway.recover_after_time: 5m 5分钟后开始恢复数据

gateway.expected_nodes: 4 4个es节点开始恢复

cluster.routing.allocation.node_initial_primaries_recoveries:8 并发恢复分片数
cluster.routing.allocation.node_concurrent_recoveries:2 同时recovery并发数

indices.recovery.max_bytes_per_sec: 250mb 数据在节点间传输最大带宽
indices.recovery.concurrent_streams: 8 同时读取数据文件流线程

discovery.zen.ping.multicast.enabled: false 禁用多播
discovery.zen.ping.unicast.hosts:[“192.168.169.11:9300”, “192.168.169.12:9300”]

discovery.zen.fd.ping_interval: 10s 节点间存活检测间隔
discovery.zen.fd.ping_timeout: 120s 存活超时时间
discovery.zen.fd.ping_retries: 6 存活超时重试次数

http.cors.enabled: true 使用监控

index.analysis.analyzer.ik.type:”ik” ik分词

thread pool setting

threadpool.index.type: fixed 写索引线程池类型
threadpool.index.size: 64 线程池大小(建议2~3倍cpu数)
threadpool.index.queue_size: 1000 队列大小

threadpool.search.size: 64 搜索线程池大小
threadpool.search.type: fixed 搜索线程池类型
threadpool.search.queue_size: 1000 队列大小

threadpool.get.type: fixed 取数据线程池类型
threadpool.get.size: 32 取数据线程池大小
threadpool.get.queue_size: 1000 队列大小

threadpool.bulk.type: fixed 批量请求线程池类型
threadpool.bulk.size: 32 批量请求线程池大小
threadpool.bulk.queue_size: 1000 队列大小

threadpool.flush.type: fixed 刷磁盘线程池类型
threadpool.flush.size: 32 刷磁盘线程池大小
threadpool.flush.queue_size: 1000 队列大小

indices.store.throttle.type: merge
indices.store.throttle.type: none 写磁盘类型
indices.store.throttle.max_bytes_per_sec:500mb 写磁盘最大带宽

index.merge.scheduler.max_thread_count: 8 索引merge最大线程数
index.translog.flush_threshold_size:600MB 刷新translog文件阀值

cluster.routing.allocation.node_initial_primaries_recoveries:8 并发恢复分片数
cluster.routing.allocation.node_concurrent_recoveries:2 同时recovery并发数

使用bulk API 增加入库速度
初次索引的时候,把 replica 设置为 0
增大 threadpool.index.queue_size 1000
增大 indices.memory.index_buffer_size: 20%
index.translog.durability: async –这个可以异步写硬盘,增大写的速度
增大 index.translog.flush_threshold_size: 600MB
增大 index.translog.flush_threshold_ops: 500000

复制代码
curl -XPOST '127.0.0.1:9200/_cluster/settings' -d '{
    "transient" : 
        {
          "index.indexing.slowlog.threshold.index.warn": "10s",
            "index.indexing.slowlog.threshold.index.info": "5s",
            "index.indexing.slowlog.threshold.index.debug": "2s",
            "index.indexing.slowlog.threshold.index.trace": "500ms",
            "index.indexing.slowlog.level": "info",
            "index.indexing.slowlog.source": "1000",
            "indices.memory.index_buffer_size": "20%"
        }

}'
复制代码
复制代码
curl -XPOST '127.0.0.1:9200/_cluster/settings' -d '{
    "transient" : 
        {
          "index.search.slowlog.threshold.query.warn": "10s",
        "index.search.slowlog.threshold.query.info": "5s",
        "index.search.slowlog.threshold.query.debug": "2s",
        "index.search.slowlog.threshold.query.trace": "500ms",
        "index.search.slowlog.threshold.fetch.warn": "1s",
        "index.search.slowlog.threshold.fetch.info": "800ms",
        "index.search.slowlog.threshold.fetch.debug": "500ms",
        "index.search.slowlog.threshold.fetch.trace": "200ms"
        }

}'
复制代码

–节点下线时,把所有后缀为 -2的从集群中排除

curl -XPUT   http://127.0.0.1:9200/_cluster/settings
{ "transient" : 
      {"cluster.routing.allocation.enable" : "all",            "cluster.routing.allocation.exclude._name":".*-2"}
  }
复制代码
curl -XPUT ip:9200/_cluster/settings -d
'{
    "transient": {
        "logger.discover": "DEBUG" 
    }
    "persistent": {
        "discovery.zen.minimum_master_nodes": 2
    }
}'
复制代码

—批量指定节点下线

curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "cluster.routing.allocation.exclude._name": "atest11-2,atest12-2,anatest13-2,antest14-2" 
    }

}'
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "cluster.routing.allocation.exclude._name": "test_aa73_2,test_aa73" 
    }

}'
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "cluster.routing.allocation.exclude._name": "" 
    }

}'
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "cluster.routing.allocation.cluster_concurrent_rebalance": 10
    }

}'
复制代码
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "indices.store.throttle.type": "none",
         "index.store.type": "niofs",
         "index.cache.field.type": "soft",
         "indices.store.throttle.max_bytes_per_sec": "500mb",
          "index.translog.flush_threshold_size": "600MB",
         "threadpool.flush.type": "fixed",
        "threadpool.flush.size": 32,
       "threadpool.flush.queue_size": 1000
    }

}'
复制代码
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '{
    "transient": {
        "index.indexing.slowlog.level": "warn" 
    }

}'
复制代码
curl -XGET 127.0.0.1:9200/_cluster/health?level=shards

curl -XGET 127.0.0.1:9200/_cluster/settings?pretty

curl -XGET 127.0.0.1:9200/_cluster/pending_tasks?pretty

curl -XGET 127.0.0.1:9200/_cat/aliases

curl -XGET 127.0.0.1:9200/_cat/plugins

curl -XGET 127.0.0.1:9200/_cat/nodes

/_cat/allocation 
/_cat/shards 
/_cat/shards/{index} 
/_cat/master 
/_cat/nodes 
/_cat/indices 
/_cat/indices/{index} 
/_cat/segments 
/_cat/segments/{index} 
/_cat/count 
/_cat/count/{index} 
/_cat/recovery 
/_cat/recovery/{index} 
/_cat/health 
/_cat/pending_tasks 
/_cat/aliases 
/_cat/aliases/{alias} 
/_cat/thread_pool 
/_cat/plugins 
/_cat/fielddata 
/_cat/fielddata/{fields}
复制代码
复制代码
shard的移动
curl -XPOST 'localhost:9200/_cluster/reroute' -d '{
    "commands" : [ {
        "move" :
            {
              "index" : "test_aa_20160529", "shard" : 4,
              "from_node" : "node1", "to_node" : "node2"
            }
        },
        {
          "allocate" : {
              "index" : "test", "shard" : 1, "node" : "node3"
          }
        }
    ]
}'
复制代码
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '
{
  "transient": {
    "logger.indices.recovery": "DEBUG"
  }
}'
curl -XPUT 127.0.0.1:9200/_cluster/settings -d '
{
  "transient": {
    "cluster.routing.allocation.node_initial_primaries_recoveries": "100" 
  }
}'
复制代码
curl -XPOST '127.0.0.1:9200/_cluster/settings' -d '{
    "transient" : 
        {
            "indices.memory.index_buffer_size": "20%"
        }

}'
复制代码
复制代码
curl -XPOST '127.0.0.1:9200/_cluster/settings' -d '{
    "transient" : 
        {
          "index.indexing.slowlog.level" :   "info" 
        }

}'
分享到:
评论

相关推荐

    elasticsearch常用版本

    - **配置文件**:修改`elasticsearch.yml`配置文件,可以设置端口、网络访问、内存分配等参数。 - **内存设置**:确保JVM有足够的内存,通常设置`ES_HEAP_SIZE`环境变量以避免性能问题。 - **插件安装**:根据需求...

    ES查询客户端,elasticsearch可视化工具 elasticsearch查询客户端

    1. 连接Elasticsearch:配置客户端连接参数,如节点地址、端口、认证信息等。 2. 创建索引:定义索引结构,包括字段名、类型等。 3. 插入数据:将数据批量或单条插入到指定索引中。 4. 执行查询:利用客户端提供的...

    elasticsearch-7.8.0.rar

    2. 配置 `config/elasticsearch.yml` 文件,包括集群名、节点设置、网络接口等。 3. 修改 `jvm.options` 调整 JVM 参数以适应服务器资源。 4. 启动 Elasticsearch 服务:`bin/elasticsearch` 或使用系统服务管理命令...

    ElasticSearch性能优化策略

    - **参数配置**:ElasticSearch配置文件中的`node.master`和`node.data`两个参数可用于控制节点的角色。 - `node.master:false node.data:true`:这样的配置表示该节点仅为数据节点,专注于数据的存储与查询,有助...

    ElasticSearch笔记

    ElasticSearch,简称为ES,是一个开源的、高度可扩展的分布式全文检索引擎。它基于 Java 开发,并利用 Lucene 作为其核心,实现了高效索引和搜索功能。ElasticSearch 通过Resultful API简化了与Lucene的交互,隐藏了...

    elasticsearch-analysis-ik-7.8.0

    为了更好地处理中文文本,Elasticsearch 提供了各种分词器,其中最常用的就是 IK (Intelligent Chinese) 分词器。"elasticsearch-analysis-ik-7.8.0" 是专为 Elasticsearch 7.8.0 版本设计的 IK 分词器插件,旨在...

    elasticsearch监控方式-峡谷金桥

    - 为了更好地监控Elasticsearch性能,可以通过配置文件调整慢查询日志阈值。 - 例如,设置查询警告阈值为5秒、信息日志阈值为3秒等。 2. **单个索引日志配置**: - 对于特定索引,可以通过API单独调整慢查询日志...

    ElasticSearch全部学习资料

    #### 一、ElasticSearch 安装及配置 **1.1 ElasticSearch 的安装** - **官网**: 访问官方网址 [www.elastic.co/](https://www.elastic.co/) 下载所需版本的 ElasticSearch。 - **Linux 环境下的安装步骤**: - ...

    最新版windows elasticsearch-7.9.1-windows-x86_64.zip

    7. **集群构建**:Elasticsearch支持多节点集群,通过配置`discovery.zen.*`相关参数,可以将多个节点连接成一个集群,实现数据的分布式存储和处理。 8. **索引管理**:Elasticsearch支持创建、删除、更新索引,...

    Elasticsearch查询API

    本文将详细介绍Elasticsearch接口API的使用,特别是全文检索、查询匹配以及常用的过滤器,以及GET /_search API的各种使用方法。 在Elasticsearch中,查询和过滤上下文是两种不同的操作方式: 1. **查询上下文**:...

    Go-elasticsearchloggolang的elasticsearch日志封装包括搜索查询添加等

    为了使用这个库,开发者需要先安装并引入依赖,然后实例化一个Elasticsearch客户端,配置连接参数如URL、索引名称等。接着,就可以调用相应的接口进行日志的添加、查询和搜索操作。例如: ```go import "github....

    es5.3.2使用热词、停用词、同义词词典.rar

    本资源包“es5.3.2使用热词、停用词、同义词词典.rar”提供了针对Elasticsearch 5.3.2版本的热词、停用词和同义词的相关工具和配置,帮助用户优化全文搜索引擎的表现。 首先,我们来理解一下这些概念: 1. **热词*...

    elasticsearch-0.90.10.tar.gz

    安装和启动Elasticsearch时,你需要配置`elasticsearch.yml`文件,指定集群名称、节点角色等参数。然后,你可以通过curl命令或者客户端API向Elasticsearch发送请求,创建索引、插入文档并执行搜索。 总的来说,...

    对ElasticsearchPHP进行查询语句封装可实现链式调用方便es查询

    6. **性能优化**:了解如何通过设置索引分片和副本、调整查询参数、优化分析器等方式提升Elasticsearch的查询性能。 7. **错误处理**:在编写封装的查询语句时,应考虑错误处理,如网络异常、查询语法错误等,以...

    elasticsearch进阶教程,elasticsearch开发教程

    - JVM调优:分析JVM参数设置对Elasticsearch性能的影响,掌握合理配置JVM的方法。 - 索引结构优化:学习如何通过调整索引设置来改善搜索性能,包括分析器选择、字段类型设置等。 - 查询优化技巧:介绍常见的查询...

    elasticsearch-analysis-ik.7.4.2

    4. **配置**:在 Elasticsearch 的配置文件 `elasticsearch.yml` 中添加以下配置: ``` analysis: analyzer: default: type: "ik_max_word" # 使用 IK 的全模式分词 ``` 或者选择精确模式: ``` analysis: ...

    ELK6.1.2,filebeat及es的常用head和ik插件

    配置文件中指定日志文件位置、Elasticsearch或Logstash的输出设置。 接下来是两个插件: `elasticsearch-analysis-ik-master.zip` 是IK分词器插件,专为Elasticsearch设计,用于中文分词。安装此插件后,Elastic...

    Elasticsearch快速入门:基础配置与使用示例

    2. **常用配置**: - **网络设置**:默认情况下,Elasticsearch 仅绑定到本地回环地址。要允许外部访问,需要修改 `elasticsearch.yml` 中的 `network.host` 配置项,将其设置为 `0.0.0.0`。 - **集群设置**:配置...

Global site tag (gtag.js) - Google Analytics