elasticsearch索引模板

什么是索引模板

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

快速入门

下面来看个例子:

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-开头的索引。

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

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

ELK实战

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状态。下面是具体步骤:

1、访问kibana,点击Dev Tools :

2、输入以下代码:

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

3、点击执行即可.

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

删除索引步骤如下:

第一步:

第二步:

第三步,选择你需要删除的进行删除即可。

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

长按扫码关注微信公众号

Java软件编程之家

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值