有没有发现今天的内容甚至有些倒退,是的,是因为gemini忘了一开始指定的计划了,我让它回想起来之后,它觉得我学的太快了,所以重新学一些基础的东西
查看集群状态_cluster/health
- number_of_nodes:集群中在线的总节点数。
- number_of_data_nodes:专门负责存储数据的节点数。
- active_primary_shards:集群中所有索引处于激活状态的主分片总数。
- active_shards:所有激活的分片总数(主分片 + 副本分片)。
- relocating_shards:正在从一个节点移动到另一个节点的分片数(通常发生在扩容或缩容时)。
- initializing_shards:正在初始化的分片数(刚创建索引或节点重启时)。
- unassigned_shards:重点关注。未分配的分片数。如果非 0,集群状态通常会变黄或变红。
1 | { |
查看索引清单_cat/indices
- health:这个索引自己的健康度。
- status:通常是
open。 - index:索引的名字(比如
syslog-security-xxx)。 - docs.count:这里面现在存了多少条日志?
- pri (Primary):主分片数量。
- rep (Replica):副本分片数量。
可以看出的内容
- .internal 开头的:这些是系统的”内账”,记录的是 Kibana 的配置、告警规则等
- syslog-security 索引,pri 是 3,rep 是 1。数据被切成了 3 块(分片)存储,且每一块都有 1 个备份

ES的CRUD
1 | 1.创建一条假日志 |
第二天创建了一个索引,syslog-security-*,索引默认会永久保存
现在要让他在7天后自动删除以节省空间
这个在kibana的面板上点点点也可以设置,但是我们这里用api,这俩是同步的
创建生命周期策略
1 | PUT _ilm/policy/my_syslog_policy |
绑定生命周期策略到现有索引模板
1 | PUT _index_template/syslog_template |
- 匹配范围:当一个新索引(如
syslog-security-2026.03.24)创建时,ES 会扫描所有模板。 - 冲突检查:如果有多个模板的
index_patterns都匹配这个名字,ES 会检查priority。 - 报错触发:如果优先级相同,ES 为了防止配置混乱(比如模板 A 说要 3 个分片,模板 B 说要 1 个分片),就会抛出你看到的这个
illegal_argument_exception。
