温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ELK5.4 修改分片数及分片分配方式

发布时间:2020-07-22 11:09:20 来源:网络 阅读:33370 作者:irow10 栏目:大数据

一、修改分片数

elasticsearch默认分片数为5,副本数为1.如果需要修改分片数有两种方式

1、修改索引settings

查看索引状态:curl -GET "http://localhost:9200/index/__settings"

修改索引状态信息:

curl -XPUT 'localhost:9200/index/_settings' -d '{     "index" : {                    "number_of_replicas" : 6,         "number_of_replicas": 2     }}'

这种方式只能针对某个索引单独修改。如果需要所有索引统一修改,就需要修改模板信息

2、修改模板

#获取默认模板信息
curl -XGET http://localhost:9200/_template/logstash

#删除默认模板
curl -XDELETE http://localhost:9200/_template/logstash

#上传修改后的默认模板

curl -XPUT http://localhost:9200/_template/logstash -d ' {         "template": "logstash-*",         "settings": {             "index": {                 "number_of_replicas": "2",                 "number_of_shards": "6",                 "refresh_interval": "5s"             }         },         "mappings": {             "_default_": {                 "dynamic_templates": [                     {                         "message_field": {                             "path_match": "message",                             "mapping": {                                 "norms": false,                                 "type": "text"                             },                             "match_mapping_type": "string"                         }                     },                     {                         "string_fields": {                             "mapping": {                                 "norms": false,                                 "type": "text",                                 "fields": {                                     "keyword": {                                         "type": "keyword"                                     }                                 }                             },                             "match_mapping_type": "string",                             "match": "*"                         }                     }                 ],                 "_all": {                     "norms": false,                     "enabled": true                 },                 "properties": {                     "@timestamp": {                         "include_in_all": false,                         "type": "date"                     },                     "geoip": {                         "dynamic": true,                         "properties": {                             "ip": {                                 "type": "ip"                             },                             "latitude": {                                 "type": "half_float"                             },                             "location": {                                 "type": "geo_point"                             },                             "longitude": {                                 "type": "half_float"                             }                         }                     },                     "@version": {                         "include_in_all": false,                         "type": "keyword"                     }                 }             }         },         "aliases": {}     } '

二、分片分配

默认情况下shard分片是大致均衡的,但是primary 主分片分配不均衡(某个ES重启或者集群节点变动) 

Shard Allocation Settingsedit

The following dynamic settings may be used to control shard allocation and recovery:

  • cluster.routing.allocation.enable

  • Enable or disable allocation for specific kinds of shards:

    • all -             (default) Allows shard allocation for all kinds of shards.

    • primaries -       Allows shard allocation only for primary shards.

    • new_primaries -   Allows shard allocation only for primary shards for new indices.

    • none -            No shard allocations of any kind are allowed for any indices.

上面这个参数可以设定分片分配的方式。

PUT _cluster/settings{   "transient": {     "cluster.routing.allocation.enable": primaries      }}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI