登录
首页 >  Golang >  Go教程

使用olivere/elastic库连接带账号密码的Elasticsearch时,如何解决“health check timeout”错误?

时间:2024-10-30 13:04:03 239浏览 收藏

大家好,我们又见面了啊~本文《使用olivere/elastic库连接带账号密码的Elasticsearch时,如何解决“health check timeout”错误?》的内容中将会涉及到等等。如果你正在学习Golang相关知识,欢迎关注我,以后会给大家带来更多Golang相关文章,希望我们能一起进步!下面就开始本文的正式内容~

使用olivere/elastic库连接带账号密码的Elasticsearch时,如何解决“health check timeout”错误?

elasticsearch连接带账号密码库的连接问题

当使用github.com/olivere/elastic/v7库连接带有账号和密码的elasticsearch库时,出现了"health check timeout: no elasticsearch node available"的错误。

这个问题是由使用小权限用户连接elasticsearch集群引起的。官方库可以使用小权限用户连接集群,而olivere库需要使用最大权限账户才能连接

为了解决这个问题,需要使用具有足够权限的账户重新初始化客户端。以下是修改后的代码:

client, err = elastic.NewClient(
    elastic.SetSniff(false),
    elastic.SetHealthcheckInterval(10*time.Second),
    elastic.SetMaxRetries(3),
    elastic.SetURL("http://xx:9200"),
    // 使用具有最大权限的账户
    elastic.SetBasicAuth("admin", "password"),
)

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>