一、修改分片数
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、网站建设、宜川网络推广、小程序开发、宜川网络营销、宜川企业策划、宜川品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供宜川建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
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重启或者集群节点变动)
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 }}