【问题标题】:Connect to distant ELK server with jhipster使用 jhipster 连接到远程 ELK 服务器
【发布时间】:2019-07-24 23:29:12
【问题描述】:

我使用 JHipster 和 elasticsearch 启动了一个项目,但我不知道如何配置我的项目以连接远程 elk 服务器。

我在 10.119.19.28:9200 上有一个远程 elasticsearch,当我在浏览器中输入地址时,我得到了这个:

{
  "name" : "Home",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "groSpqBZRbW9BtTCW3S4Dg",
  "version" : {
    "number" : "7.1.0",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "606a173",
    "build_date" : "2019-05-16T00:43:15.323135Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

我的后端有 2 个 java 属性:

data:
  elasticsearch:
    cluster-name: elasticsearch
    cluster-nodes: 10.119.19.28:9200

当我尝试运行我的应用时,我收到了这个错误:

java.lang.IllegalStateException: handshake failed with {127.0.0.1:9300}{dx8H800uTceGEL6zDPrGNg}{127.0.0.1}{127.0.0.1:9300}
    at org.elasticsearch.transport.TransportService.handshake(TransportService.java:400)
    at org.elasticsearch.transport.TransportService.handshake(TransportService.java:367)
    at org.elasticsearch.discovery.zen.UnicastZenPing$PingingRound.getOrConnect(UnicastZenPing.java:366)
    at org.elasticsearch.discovery.zen.UnicastZenPing$3.doRun(UnicastZenPing.java:471)
    at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:723)
    at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: org.elasticsearch.transport.NodeDisconnectedException: [][127.0.0.1:9300][internal:transport/handshake] disconnected

如何使用我的 Jhipster 后端连接到这个弹性 7.1.0 服务器?

【问题讨论】:

  • 这是一个非常广泛的问题。如果您有具体问题,人们可以提供帮助。在提问之前您应该阅读此内容:stackoverflow.com/help/how-to-ask
  • 在 JHipster 上下文中不太宽泛

标签: java spring-boot elasticsearch jhipster spring-data-elasticsearch


【解决方案1】:

在您的application-*.yml 文件中设置spring.data.jest.* 属性

这不是 JHipster 特有的,请参阅有关应用程序属性的 Spring Boot 文档:https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

【讨论】:

  • 当我执行我的 jhipster 项目时,我有这个错误:java.lang.IllegalStateException: handshake failed with {127.0.0.1:9300}{Ieus9c3eTyqqBPjDjZPYnQ}{127.0.0.1}{127.0.0.1:9300}
  • 请编辑您的问题以在 application_*.yml 中添加与 elasticsearch 相关的完整错误和配置。
【解决方案2】:

您应该在 elasticsearch.yml 中定义远程 elasticsearch 实例

这个文件的内容已经有占位符了。只需填写正确的域名或IP地址并删除注释“#”

# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
#network.host: 127.0.0.1
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:
#
#http.port: 9200

【讨论】:

    【解决方案3】:

    我认为您应该在 application_*.yml 的配置中包含类似的内容:

    spring:
      devtools:
        ....
      datasource:
        ....
        ....
      data:
        jest:
          uri: http://10.119.19.28:9200
      elasticsearch:
        rest:
          uris: http://10.119.19.28:9200
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-28
      • 2016-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多