mirror of
https://github.com/Graylog2/graylog2-server.git
synced 2026-03-13 09:32:21 +08:00
changing config parameters to Object so we can support yml lists etc. in opensearch.yml (#18799)
Co-authored-by: Matthias Oesterheld <33032967+moesterheld@users.noreply.github.com>
This commit is contained in:
@@ -97,7 +97,7 @@ public class OpensearchConfigurationProvider implements Provider<OpensearchConfi
|
||||
.findFirst();
|
||||
|
||||
try {
|
||||
ImmutableMap.Builder<String, String> opensearchProperties = ImmutableMap.builder();
|
||||
ImmutableMap.Builder<String, Object> opensearchProperties = ImmutableMap.builder();
|
||||
|
||||
if (localConfiguration.getInitialClusterManagerNodes() != null && !localConfiguration.getInitialClusterManagerNodes().isBlank()) {
|
||||
opensearchProperties.put("cluster.initial_cluster_manager_nodes", localConfiguration.getInitialClusterManagerNodes());
|
||||
@@ -136,8 +136,8 @@ public class OpensearchConfigurationProvider implements Provider<OpensearchConfi
|
||||
}
|
||||
}
|
||||
|
||||
private ImmutableMap<String, String> commonOpensearchConfig(final Configuration localConfiguration) {
|
||||
final ImmutableMap.Builder<String, String> config = ImmutableMap.builder();
|
||||
private ImmutableMap<String, Object> commonOpensearchConfig(final Configuration localConfiguration) {
|
||||
final ImmutableMap.Builder<String, Object> config = ImmutableMap.builder();
|
||||
localConfiguration.getOpensearchNetworkHost().ifPresent(
|
||||
networkHost -> config.put("network.host", networkHost));
|
||||
config.put("path.data", datanodeConfiguration.datanodeDirectories().getDataTargetDir().toString());
|
||||
@@ -146,8 +146,8 @@ public class OpensearchConfigurationProvider implements Provider<OpensearchConfi
|
||||
config.put("network.bind_host", localConfiguration.getBindAddress());
|
||||
|
||||
// https://opensearch.org/docs/latest/tuning-your-cluster/availability-and-recovery/snapshots/snapshot-restore/#shared-file-system
|
||||
if (localConfiguration.getPathRepo() != null && !localConfiguration.getPathRepo().isEmpty()) {
|
||||
config.put("path.repo", String.join(",", localConfiguration.getPathRepo()));
|
||||
if(localConfiguration.getPathRepo() != null && !localConfiguration.getPathRepo().isEmpty()) {
|
||||
config.put("path.repo", localConfiguration.getPathRepo());
|
||||
}
|
||||
|
||||
//config.put("network.publish_host", Tools.getLocalCanonicalHostname());
|
||||
|
||||
@@ -115,8 +115,8 @@ public class OpensearchCommandLineProcess implements Closeable {
|
||||
opensearchCli.keystore().add("s3.client.default.secret_key", config.s3RepositoryConfiguration().getS3ClientDefaultSecretKey());
|
||||
}
|
||||
|
||||
private static Map<String, String> getOpensearchConfigurationArguments(OpensearchConfiguration config) {
|
||||
Map<String, String> allArguments = new LinkedHashMap<>(config.asMap());
|
||||
private static Map<String, Object> getOpensearchConfigurationArguments(OpensearchConfiguration config) {
|
||||
Map<String, Object> allArguments = new LinkedHashMap<>(config.asMap());
|
||||
|
||||
// now copy all the environment values to the configuration arguments. Opensearch won't do it for us,
|
||||
// because we are using tar distriburion and opensearch does this only for docker dist. See opensearch-env script
|
||||
|
||||
@@ -168,7 +168,7 @@ public class OpensearchProcessService extends AbstractIdleService implements Pro
|
||||
private void configure(Map<String, String> additionalConfig) {
|
||||
final OpensearchConfiguration original = configurationProvider.get();
|
||||
|
||||
final var finalAdditionalConfig = new HashMap<String, String>();
|
||||
final var finalAdditionalConfig = new HashMap<String, Object>();
|
||||
finalAdditionalConfig.putAll(original.additionalConfiguration());
|
||||
finalAdditionalConfig.putAll(additionalConfig);
|
||||
|
||||
|
||||
@@ -43,11 +43,11 @@ public record OpensearchConfiguration(
|
||||
S3RepositoryConfiguration s3RepositoryConfiguration,
|
||||
|
||||
String nodeSearchCacheSize,
|
||||
Map<String, String> additionalConfiguration
|
||||
Map<String, Object> additionalConfiguration
|
||||
) {
|
||||
public Map<String, String> asMap() {
|
||||
public Map<String, Object> asMap() {
|
||||
|
||||
Map<String, String> config = new LinkedHashMap<>();
|
||||
Map<String, Object> config = new LinkedHashMap<>();
|
||||
|
||||
config.put("action.auto_create_index", "false");
|
||||
|
||||
@@ -78,7 +78,7 @@ public record OpensearchConfiguration(
|
||||
config.put("discovery.seed_providers", "file");
|
||||
|
||||
config.put("node.search.cache.size", nodeSearchCacheSize);
|
||||
if(s3RepositoryConfiguration.isRepositoryEnabled()) {
|
||||
if (s3RepositoryConfiguration.isRepositoryEnabled()) {
|
||||
config.putAll(s3RepositoryConfiguration.toOpensearchProperties());
|
||||
}
|
||||
|
||||
@@ -97,12 +97,12 @@ public record OpensearchConfiguration(
|
||||
}
|
||||
|
||||
public HttpHost getRestBaseUrl() {
|
||||
final boolean sslEnabled = Boolean.parseBoolean(asMap().getOrDefault("plugins.security.ssl.http.enabled", "false"));
|
||||
final boolean sslEnabled = Boolean.parseBoolean(asMap().getOrDefault("plugins.security.ssl.http.enabled", "false").toString());
|
||||
return new HttpHost(hostname(), httpPort(), sslEnabled ? "https" : "http");
|
||||
}
|
||||
|
||||
public HttpHost getClusterBaseUrl() {
|
||||
final boolean sslEnabled = Boolean.parseBoolean(asMap().getOrDefault("plugins.security.ssl.http.enabled", "false"));
|
||||
final boolean sslEnabled = Boolean.parseBoolean(asMap().getOrDefault("plugins.security.ssl.http.enabled", "false").toString());
|
||||
return new HttpHost(hostname(), transportPort(), sslEnabled ? "https" : "http");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user