logstash自动创建所有以k8s命名空间为名称的索引
时间: 2024-05-14 20:16:22 浏览: 88
要在Logstash中自动创建以Kubernetes命名空间名称为索引名称的索引,请按照以下步骤操作:
1.在Logstash配置文件中,添加以下内容:
```
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{kubernetes.namespace}"
}
}
```
此配置将使用Logstash中的Kubernetes命名空间名称来创建索引名称。例如,如果命名空间名称为“my-namespace”,则索引名称将为“filebeat-7.1.1-my-namespace”。
2. 如果你使用了Filebeat或其他Beats,将以下内容添加到Filebeat配置文件的“output.elasticsearch”部分中:
```
output.elasticsearch:
hosts: ["localhost:9200"]
index: "%{[beat.name]}-%{[beat.version]}-%{[kubernetes.namespace]}"
```
此配置将使用Filebeat中的Kubernetes命名空间名称来创建索引名称。
请确保Elasticsearch正在运行,并且Logstash和Filebeat正在将数据发送到Elasticsearch。如果一切正常,Logstash和Filebeat将使用Kubernetes命名空间名称来创建索引名称。
阅读全文