是否可以使用X-
Pack通过HTTPS连接到ElasticSearch?切换为使用证书后,自己的连接方式不再起作用。我使用证书没有问题,但是我需要知道从哪里获得证书或将密钥上传到云实例,但是我无法在任何地方找到信息。我也没有收到论坛或IRC中任何人的答复。
有人成功做到了吗?启动5.x实例时不再有警告,因此我认为这是可能的,但是我只是不知道该怎么做。还告诉我,我无法再启动2.4.1实例,并且只有2.4.2可用(到目前为止太不稳定了),所以我有点无法启动可用实例。
更新资料
有人告诉我,因为使用了公共CA,所以不需要证书。但是,我仍然无法弄清楚如何连接到5.1.1实例。
Settings settings = Settings.builder()
.put("transport.ping_schedule", "5s")
.put("cluster.name", "")
.put("xpack.security.transport.ssl.enabled", "true")
.put("xpack.security.user", "elastic:")
.build();
String hostname = ".us-east-1.aws.found.io";
TransportClient client = new PreBuiltXPackTransportClient(settings)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(hostname), 9343));
我在这里做错了什么?我收到一条错误消息,指出节点不可用。
Exception in thread "main" NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{xlhZqKBCQniYrN4OWzByFQ}{.us-east-1.aws.found.io}{:9343}]]
我也尝试创建一个具有transport_client角色的用户,但仍然是相同的错误。
更新2
我从这里尝试了示例代码,但仍然无法正常工作。
https://github.com/elastic/found-shield-
example/blob/master/src/main/java/org/elasticsearch/cloud/transport/example/TransportExample.java
这是一个您可以测试的实例。在找出问题之后,我将销毁它。
更新3
我发现了问题并破坏了测试集群。在下面找到解决方案。