【问题标题】:AWS Elasticsearch and CORSAWS Elasticsearch 和 CORS
【发布时间】:2016-01-25 01:05:09
【问题描述】:

我正在试用 AWS Elasticsearch 服务:

https://aws.amazon.com/elasticsearch-service/

非常容易设置。基本上只需点击部署。不幸的是,我无法连接任何 Elasticsearch GUI(ElasticHQ、Elasticsearch Head),因为 AWS 构建中未启用 CORS,并且无法更改 elasticsearch 配置或安装我可以看到的插件。

有人知道如何在 AWS 上更改这些选项吗?

【问题讨论】:

  • 这更像是一个固执己见的问题,不适合 stackoverflow,但这是我的 2 美分。摆脱它。我用了一个月的elasticsearch,作为服务使用它有很多限制。我为此写了blog post。即使是支持也无法帮助我根据需要设置 IAM 政策。
  • 简短回答:你不能,这很糟糕,亚马逊对即将推出的功能非常安静,在我看来,整个服务都是为日志创建/优化的,因为他们把它放在了分析部分。

标签: amazon-web-services elasticsearch elasticsearch-plugin amazon-elasticsearch


【解决方案1】:

我仍然留在 AWS 生态系统中的解决方法是使用 API Gateway 创建一个 API。

我使用我的 elasticsearch 实例的地址创建了一个新的 POST 端点,然后按照以下指南:CORS on AWS API Gateway 将 CORS 添加到该端点。这使我的前端代码能够从不同的域发出请求。

【讨论】:

  • 这实际上帮助我前进了一步。谢谢。 :)
【解决方案2】:

如果它对其他人有用 - 您可以使用 Chrome plugin 禁用 CORS 以进行测试。

ElasticHQ 和 Elasticsearch Head 仍然无法与 AWS Elasticsearch 一起正常工作(在撰写本文时),因为它们调用了当前不是 supported AWS ElasticSearch operations 之一的 /_cluster/state

禁用 CORS 并在 /_cluster/state 返回上执行 GET

{
    Message: "Your request: '/_cluster/state' is not allowed."
}

某些功能在 ElasticHQ 中仍然有效,但我无法让 Elasticsearch Head 工作。

【讨论】:

    【解决方案3】:

    就像@Le3wood 所说,解决方法可能是与 AWS 生态系统集成。除了 API 网关,使用 AWS Lambda 也可以。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-19
      • 2016-07-28
      • 2019-04-04
      • 2016-09-19
      • 1970-01-01
      • 2018-05-22
      • 1970-01-01
      • 2018-06-16
      相关资源
      最近更新 更多