Add functionality to create data streams (#17910)

* Create Data Stream template, prepare ism policy

* add ism

* create ism and collect jvm heap as first metric

* change lookup and term query to use data streams

* start moving data stream functionality to graylog

* move data stream management into graylog

* code cleanup, add tests

* better validation, clean up after tests

* additional clean up after IT

* don't remove `index-management` plugin from datanode

* inject ObjectMapper

* change number of replicas from default 1 to 0 for test

* set `number_of_replicas` to 0 for .opendistro-ism-config in test

* replace javax with jakarta classes

* fix integration test

* remove data streams on test cleanup

* set high priority for data stream template
This commit is contained in:
Matthias Oesterheld
2024-01-17 14:45:19 +01:00
committed by GitHub
parent c284cfdbc6
commit 415cd73080
36 changed files with 1518 additions and 13 deletions

View File

@@ -213,6 +213,26 @@ public class Configuration extends BaseConfiguration {
@Parameter(value = "http_allow_embedding")
private boolean httpAllowEmbedding = false;
@Parameter(value = "metrics_timestamp")
private String metricsTimestamp = "timestamp";
@Parameter(value = "metrics_template")
private String metricsTemplate = "gl-datanode-metrics-template";
@Parameter(value = "metrics_stream")
private String metricsStream = "gl-datanode-metrics";
@Parameter(value = "metrics_retention")
private String metricsRetention = "14d";
@Parameter(value = "metrics_daily_retention")
private String metricsDailyRetention = "365d";
@Parameter(value = "metrics_daily_index")
private String metricsDailyIndex = "gl-datanode-metrics-daily";
@Parameter(value = "metrics_policy")
private String metricsPolicy = "gl-datanode-metrics-ism";
public boolean isInsecureStartup() {
return insecureStartup;
}
@@ -361,6 +381,35 @@ public class Configuration extends BaseConfiguration {
return clustername;
}
public String getMetricsTimestamp() {
return metricsTimestamp;
}
public String getMetricsTemplate() {
return metricsTemplate;
}
public String getMetricsStream() {
return metricsStream;
}
public String getMetricsRetention() {
return metricsRetention;
}
public String getMetricsDailyRetention() {
return metricsDailyRetention;
}
public String getMetricsDailyIndex() {
return metricsDailyIndex;
}
public String getMetricsPolicy() {
return metricsPolicy;
}
public static class NodeIdFileValidator implements Validator<String> {
@Override
public void validate(String name, String path) throws ValidationException {
@@ -582,4 +631,5 @@ public class Configuration extends BaseConfiguration {
public String getRootPasswordSha2() {
return rootPasswordSha2;
}
}