首页 > 文章列表 > ## 使用 Olivere/Elastic/v7 库连接带密码的 ES 库时,为什么会出现“health check timeout: no Elasticsearch node available” 错误?

## 使用 Olivere/Elastic/v7 库连接带密码的 ES 库时,为什么会出现“health check timeout: no Elasticsearch node available” 错误?

419 2024-11-12

## 使用 Olivere/Elastic/v7 库连接带密码的 ES 库时,为什么会出现“health check timeout: no Elasticsearch node available” 错误?

如何使用 Olivere/Elastic/v7 库连接带密码的 ES 库

在使用 Olivere/Elastic/v7 库连接 ES 库时,如果遇到无法连接带密码的库问题,以下内容可能有助于解决问题。

在问题中提供的代码中,初始化设置包括:

  • 设置健康检查间隔为 10 秒
  • 设置最大重试次数为 3
  • 设置 ES URL 为 "http://xx:9200"
  • 设置基本认证用户名和密码

尽管使用了这些设置,连接仍然失败并显示 "health check timeout: no Elasticsearch node available" 错误。

解决方案是,确保 ES 集群上的用户具有连接所需的适当权限。在某些情况下,官方 ES 库可以使用小权限用户连接集群,而 Olivere/Elastic/v7 库则需要使用具有最大权限的账户连接。

因此,请确认用于初始化连接的账户具有足够的权限连接 ES 库。解决权限问题后,重新初始化连接即可成功建立连接。

来源:1729758708