私のRails API用にElasticsearchを設定中です。 まず、Elasticsearchをローカルに設定しました。elasticsearch gemを使用してインデックスを作成し、DBを検索するのに問題はありませんでした。RailsアプリケーションでAmazons ElasticsearchServiceを使用する
次に、AWS ElasticsearchServiceを使用します。 this guideの後にAWSコンソールでサービスとドメインを設定しました。
私の人生にとって、私はそれに接続する方法を理解できません。 私は、AWS elasticsearch URLを持って、それをヒットしようとしていますので、同じよう:
require 'faraday_middleware/aws_signers_v4'
Elasticsearch::Model.client = Elasticsearch::Client.new url: 'https://search-my-cluster-abc123....es.amazonaws.com' do |f|
f.request :aws_signers_v4,
credentials: Aws::Credentials.new(ENV['AWS_ACCESS_KEY'], ENV['AWS_SECRET_ACCESS_KEY']),
service_name: 'es',
region: 'us-east-1'
end
私は、弾性のgithubのページhereから、このアプローチのstragihtを取りました。しかし、私は接続するように見えません。
[1] pry(main)> Elasticsearch::Model.client.cluster.health
Faraday::ConnectionFailed: execution expired
は、私はまた、アマゾンElasticsearch SDKの上に見えたが、SDKのみ、実際の検索を実行するために、ドメインを設定しないように使用されているように思われます。
ご協力いただきありがとうございます。