13

Я пытаюсь использовать AWS Managed ElasticSearch для моего проекта.Клиент Elastic Transport на AWS Managed ElasticSearch

Я следил за https://aws.amazon.com/blogs/aws/new-amazon-elasticsearch-service/, и я могу запустить экземпляр и который является успешным. Но я не могу подключиться к одному экземпляру из своей службы, используя транспортный клиент elasticsearch.

Я знаю, что клиент транспорта должен подключаться к порту 9300, и этот порт я не могу включить через консоль aws.

Вот код, который я использую для подключения, который успешно подключается к моей установке упругого поиска на машине ec2 на порте 9300.

ImmutableSettings.Builder settings = ImmutableSettings.settingsBuilder(); 
        settings.put("cluster.name", "my-cluster-name") 
          .put("client.transport.nodes_sampler_interval", "15s") 
          .put("client.transport.ping_timeout", "15s") 
          .put("client.transport.sniff", true) 
          .put("client.transport.ignore_cluster_name", false).build(); 
        client = new TransportClient(settings) 
         .addTransportAddress(
          new InetSocketTransportAddress(
             env.getProperty("elastic-host-url-provided-by-aws",80) 
          )); 

Я получаю за исключением

org.elasticsearch.client.transport.NoNodeAvailableException: Ни один из сконфигурированные узлы отсутствуют: [] в org.elasticsearch.client.transport.TransportClientNodesService .ensureNodesAreAvailable (TransportClientNodesService.java:305) на org.elasticsearch.client.transport.TransportClientNodesService.execute (TransportClientNodesService.java:200) на org.elasticsearch.client.transp ort.support.InternalTransportClient.execute (InternalTransportClient.java:106) на org.elasticsearch.client.support.AbstractClient.index (AbstractClient.java:98)

Я подозреваю, что эта ошибка, так как я подключение TransportClient через порт HTTP. Но я не знаю, что такое TCP-порт для ускоренного поиска экстази. Я искал в документах aws, и я не мог найти их. Если некоторые из них использовали TransportClient для связи с Amazon ES, дайте мне знать.

NB: Я проверил, что elasticsearch Java баночка версия, что я , используя как же, как же с сервером. И из моей системы я могу получить доступ к Kibana и ES HTTP PORTS без каких-либо проблем.

+1

нашел в форуме, что его можно подключить только с помощью http-клиента – Ysak

+0

от этого сервиса не открыты транспортные порты – Ysak

+0

не могли бы вы добавить ссылку на форум здесь? Я хотел использовать ту же настройку, что и ваш. – constpetrov

ответ

15

Форум AWS, связанный с link.

Here являются ограничениями для службы AWS ElasticSearch:

TCP транспорт Служба поддерживает HTTP порт 80, но не поддержки TCP транспорта.

1

документация раздел об отсутствии поддержки TCP транспорта для AWS Elasticsearch 5.x доменов можно найти here:

TCP транспорт

Служба поддерживает HTTP порт 80, но не поддерживает TCP-транспорт.

Смежные вопросы