diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2021-03-11 13:51:42 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2021-03-11 13:51:42 +0100 |
commit | 8dfd194e88197552c6dcb9c0806c024868c61dba (patch) | |
tree | 2f2d00d96a81b95bb97333e0812f3e96ac9eeb80 /zkfacade | |
parent | b310bcb0d382dcb2f5c481902772c591a77197d8 (diff) |
Add shared ZK client config generator for zkfacade and vespa-zkcli
Diffstat (limited to 'zkfacade')
-rw-r--r-- | zkfacade/pom.xml | 6 | ||||
-rw-r--r-- | zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java | 18 |
2 files changed, 9 insertions, 15 deletions
diff --git a/zkfacade/pom.xml b/zkfacade/pom.xml index d9bd377ffa1..7563ef068a9 100644 --- a/zkfacade/pom.xml +++ b/zkfacade/pom.xml @@ -42,6 +42,12 @@ <scope>provided</scope> </dependency> <dependency> + <groupId>com.yahoo.vespa</groupId> + <artifactId>zookeeper-client-common</artifactId> + <version>${project.version}</version> + <scope>compile</scope> + </dependency> + <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-recipes</artifactId> </dependency> diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java index 4cbb6c95cb4..b825e33cbd8 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java @@ -10,8 +10,8 @@ import com.yahoo.text.Utf8; import com.yahoo.vespa.curator.api.VespaCurator; import com.yahoo.vespa.curator.recipes.CuratorCounter; import com.yahoo.vespa.defaults.Defaults; -import com.yahoo.vespa.zookeeper.VespaSslContextProvider; import com.yahoo.vespa.zookeeper.VespaZooKeeperServer; +import com.yahoo.vespa.zookeeper.client.ZkClientConfigBuilder; import org.apache.curator.RetryPolicy; import org.apache.curator.framework.CuratorFramework; import org.apache.curator.framework.CuratorFrameworkFactory; @@ -124,16 +124,9 @@ public class Curator implements VespaCurator, AutoCloseable { private static ZKClientConfig createClientConfig(Optional<File> clientConfigFile) { if (clientConfigFile.isPresent()) { - boolean useSecureClient = Boolean.parseBoolean(getEnvironmentVariable("VESPA_USE_TLS_FOR_ZOOKEEPER_CLIENT").orElse("false")); - StringBuilder configBuilder = new StringBuilder("zookeeper.client.secure=").append(useSecureClient).append("\n"); - if (useSecureClient) { - configBuilder.append("zookeeper.ssl.context.supplier.class=").append(VespaSslContextProvider.class.getName()).append("\n") - .append("zookeeper.ssl.enabledProtocols=").append(VespaSslContextProvider.enabledTlsProtocolConfigValue()).append("\n") - .append("zookeeper.ssl.ciphersuites=").append(VespaSslContextProvider.enabledTlsCiphersConfigValue()).append("\n") - .append("zookeeper.ssl.clientAuth=NEED\n"); - } + String config = new ZkClientConfigBuilder().toConfigString(); clientConfigFile.get().getParentFile().mkdirs(); - IOUtils.writeFile(clientConfigFile.get(), Utf8.toBytes(configBuilder.toString())); + IOUtils.writeFile(clientConfigFile.get(), Utf8.toBytes(config)); try { return new ZKClientConfig(clientConfigFile.get()); } catch (QuorumPeerConfig.ConfigException e) { @@ -406,9 +399,4 @@ public class Curator implements VespaCurator, AutoCloseable { */ public int zooKeeperEnsembleCount() { return connectionSpec.ensembleSize(); } - private static Optional<String> getEnvironmentVariable(String variableName) { - return Optional.ofNullable(System.getenv().get(variableName)) - .filter(var -> !var.isEmpty()); - } - } |