AWS ElasticSearch 服务和数据流

AWS ElasticSearch Service and DataStream

AWS ElasticSearch 服务 (OpenDistro) 不支持 DataStreams 吗?我今天尝试使用 AWS ElasticSearch 服务创建数据流,但无法执行任何操作。试图获取数据流列表 returns

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

根据 X-Pack 文档 here 它指出 6.3 之后的所有 elasticsearch 版本默认情况下都会有 X-Pack,我在 AWS 上使用的是 elasticsearch 版本 7.10弹性搜索服务。

我在文档中找不到任何明确说明是否支持此功能的内容。如果有人可以提供更多相关信息,那将是一个很大的帮助。

不支持,AWS Elasticsearch Service和Elasticsearch有一些不同。

数据流是仅在 Elastic 自己分发的 Elasticsearch 中可用的功能,根据 Elastic License 获得许可。

AWS 使用了 Elasticsearch 开源版本的一个分支,所有带有标签 x-pack 的功能仅在 Elastic 许可证下可用,其中一些是免费的,一些是 paid,但它们在 AWS 使用的 OSS 版本中不可用。

从 7.11 版开始,Elastic changed the license 现在可以在 Elastic 和 SSPL 这两个许可证下使用,其中 none 允许 AWS 从 7.11 版开始将 Elasticsearch 作为服务出售。

这导致 AWS 在名为 Opensearch 的新项目中分叉了最后一个版本 7.10.2,AWS Elasticsearch Service 将更名为 AWS Opensearch Service

AWS 版本的 ElasticSearch,OpenSearch,现在支持数据流。 在此处结帐 official docs

要创建数据流,只需使用以下配置创建一个新索引,

PUT _index_template/logs-template
{
  "index_patterns": [
    "my-data-stream", // This is the DS index pattern. It can contain wildcards.
  ],
  "data_stream": {},  // This tells OpenSearch to create index as DS.
  "priority": 100
}

数据流是 OpenSearch 在后台创建的索引集合。您仍将查询和管理主索引 my-data-stream 上的数据,但 OpenSearch 将在内部创建格式为 .ds-<name_of_index>-0000001.

的索引

您还可以在主索引上定义“策略”,例如滚动策略或删除策略,以管理旧数据,例如到 re-index 超过 30 天的数据。 OpenSearch 将在 30 天后创建名为 0000002 的新索引,并应用您在 0000001 数据集上指定的策略。

您可以使用

检查系统中定义的所有数据流

GET /_data_stream