gpt4 book ai didi

ruby-on-rails - AWS elasticsearch服务引发Faraday::ConnectionFailed:无法打开与https:80的TCP连接(getaddrinfo:名称或服务未知)

转载 作者:行者123 更新时间:2023-12-02 22:22:02 24 4
gpt4 key购买 nike

我目前正在尝试在Rails v 5.1.4应用程序中配置AWS的Elasticsearch服务。我正在使用elasticsearch-rails 6.0.0.我目前所遇到的问题是我在初始化程序中如何设置Elasticsearch客户端。我的一个限制是我无法使用faraday_middleware-aws-signers-v4 gem来帮助我的AWS elastisearch实例与我的应用程序之间的通信。我正尝试仅使用aws-sdk-rails 1.0.1.来执行此操作,因为该服务器与elasticsearch实例位于同一安全组中,所以我假设不需要传递凭据。

这是我的错误:

Faraday::ConnectionFailed: Failed to open TCP connection to https:80 (getaddrinfo: Name or service not known)
from /usr/local/lib/ruby/2.4.0/net/http.rb:906:in `rescue in block in connect'`

这是我的 initializers/elasticsearch.rb:
config = {
hosts: {host: 'https://search-epl-elasticsearch-xxxxxxxxxxxxxxxxxx.us-east-2.es.amazonaws.com', port: '80'},
transport_options: {
request: { timeout: 5 }
}
}
Elasticsearch::Model.client = Elasticsearch::Client.new(config)

最佳答案

我知道已经过了几个月,但是看来您正在使用https url配置elasticsearch并告诉它使用端口80而不是443。请尝试以下操作:

config = {
url: 'https://search-epl-elasticsearch-xxxxxxxxxxxxxxxxxx.us-east-2.es.amazonaws.com',
transport_options: {
request: { timeout: 5 }
}
}
Elasticsearch::Model.client = Elasticsearch::Client.new(config)

关于ruby-on-rails - AWS elasticsearch服务引发Faraday::ConnectionFailed:无法打开与https:80的TCP连接(getaddrinfo:名称或服务未知),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com