elasticsearch索引模板





什么是索引模板javascript


索引模板(indices-templates)的做用的告诉es在建立某些索引时如何配置索引的约束,包括的约束有:mappings,、settings、aliases。注意,索引模板须要在建立索引以前建立,而后在手动建立索引或经过对doc创建索引时,模板设置将起做用。css



快速入门java



下面来看个例子:编程


PUT /_index_template/template_1{  "index_patterns" : ["hello-*"], "priority" : 1, "template": { "settings" : { "number_of_shards" : 2 } }}


URL格式:
微信


PUT /_index_template/<index-template-name>


描述:
架构


  • index_patterns:指定适配的索引,支持简单的正则通配符,hello-*表示适配全部以hello-开头的索引。app

  • priority:指定当前索引模板的优先级,值越大优先级越高,默认为0。当索引有多个模板同时适配时,相同的配置以优先级高的为准。分布式

  • template:设置索引settings、mappings、aliases部分,关于settings、mappings、aliases这里不作展开介绍。测试



ELK实战
spa


ELK是分布式架构下日志收集的一套解决方案,咱们一般会在生产环境或测试环境都搭建一套ELK,假如咱们测试环境资源有限,es只部署在单个节点上,而且配置logstash时使用了默认的索引配置,这时咱们访问http://ip:9200/_cat/health就会发现咱们的es集群状态为:yellow,大概以下图所示:


1594262473 02:41:13 my-es yellow 1 1 17 17 0 0 10 0 - 63.0%


缘由是默认主分片数量为1,主分片副本数量也是1,加起来就是2,可是es强制规定同一个节点不能建立2个相同的分片,这时就会致使任何索引的主分片的副本没有复制。为了解决这个问题,咱们经过索引模板来修改建立索引时的分片副本数量为0,这样每一个主分片就没有副本了,整个es集群就会恢复green状态。下面是具体步骤:


一、访问kibana,点击Dev Tools :



二、输入如下代码:


PUT /_index_template/template_1{  "index_patterns" : ["myindex_*"], "priority" : 100, "template": { "settings" : { "number_of_shards" : 1, "number_of_replicas": 0 } }}



三、点击执行便可.


四、删除索引,或者等待下次建立索引时才会生效。


删除索引步骤以下:


第一步:



第二步:



第三步,选择你须要删除的进行删除便可。





---------- 正文结束 ----------


长按扫码关注微信公众号


Java软件编程之家



本文分享自微信公众号 - Java软件编程之家(gh_b3a87885f8f5)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索