Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java客户端连接到外部HTTPS Elasticsearch_Java_Ssl_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Https - Fatal编程技术网 elasticsearch,https,Java,Ssl,elasticsearch,Https" /> elasticsearch,https,Java,Ssl,elasticsearch,Https" />

使用Java客户端连接到外部HTTPS Elasticsearch

使用Java客户端连接到外部HTTPS Elasticsearch,java,ssl,elasticsearch,https,Java,Ssl,elasticsearch,Https,因为我想使用Elasticsearch的Java API,所以我尝试使用Java TransportClient连接到外部Elasticsearch的REST服务器,我必须调用的URL如下所示: https://ssl-secure-host/their-index/their-type/_search 显然,我首先使用keytool信任ssl-secure-host提供的证书,并生成了keystore.jks 我没有关于elasticsearch的索引、节点等的任何其他信息,我只有上面的UR

因为我想使用Elasticsearch的Java API,所以我尝试使用Java TransportClient连接到外部Elasticsearch的REST服务器,我必须调用的URL如下所示:

https://ssl-secure-host/their-index/their-type/_search
显然,我首先使用keytool信任ssl-secure-host提供的证书,并生成了keystore.jks

我没有关于elasticsearch的索引、节点等的任何其他信息,我只有上面的URL

这是为了建立连接而编写的TransportClient:

ImmutableSettings.Builder settings = ImmutableSettings.settingsBuilder()
    .put("cluster.name", "elasticsearch")
    .put("discovery.zen.ping.multicast.enabled", false)
    .put("shield.user", "user:password")
    .put("shield.ssl.truststore.path", "/Users/me/path/cert/keystore.jks")
    .put("shield.ssl.truststore.password", "changeit")
    .put("shield.transport.ssl", true);

TransportClient client = new TransportClient(settings)
    .addTransportAddress(new InetSocketTransportAddress("ssl-secure-host", ?????));
是否可以以任何其他方式建立连接,或者我必须向提供商询问有关主机端口等的更多信息

或者,我必须通过实现一个简单的REST客户机来查询其他人提供给我的Elasticsearch的索引来实现这一点吗

是否可能在elasticsearch节点的前面存在Apache HTTP服务器


非常感谢:)

您可以使用JEST库。它是一个用于ElasticSearch的HTTP客户端。因此,您可以使用它代替Elasticsearch提供的传输客户端

检查此链接: