亚马逊AWS官方博客

开放预览:Amazon OpenSearch Serverless – 无需管理集群即可运行搜索和分析工作负载

大多数 AWS 分析服务都提供极其优秀的无服务器选择,让客户无需配置、扩展或管理底层基础设施即可更轻松地分析大量数据。

除其他无服务器分析(例如用于商业智能的 Amazon QuickSight 和用于数据集成的 AWS Glue)外,我们今年还推出了 Amazon EMR ServerlessAmazon MSK ServerlessAmazon Redshift Serverless

今天,我们宣布 Amazon OpenSearch Service新无服务器选项推出预览版,使客户无需管理集群即可轻松运行大规模搜索和分析工作负载。此功能会自动预调配和扩展底层资源,提供快速的数据摄取和查询响应,即使是要求极为严苛和不可预测的工作负载也能轻松应对,无需配置和优化集群。

借助 Amazon OpenSearch Serverless,您无需考虑事先难以知道的因素,例如查询的频率和复杂性或预计要分析的数据量。您不再需要管理基础设施,只需专注于使用 OpenSearch 来探索数据并从中获取见解。您还可以开始使用熟悉的 API 来加载和查询数据,并使用 OpenSearch 控制面板进行交互式数据分析和可视化。

配置 OpenSearch Serverless 集合
要开始使用 Amazon OpenSearch Serverless,您可以通过 AWS 管理控制台、AWS 命令行接口(AWS CLI)或 AWS API 创建一个 Collection(集合)。

在启动 OpenSearch Serverless 之前,您需要首先创建一个托管式集群,指定实例类型、数量和存储选项,然后管理该集群内索引的生命周期和分片策略。您可以使用 OpenSearch Serverless 创建一个集合来管理一组索引,这些索引协同工作以支持特定的工作负载。您不再需要直接指定硬件或管理索引。

要创建 OpenSearch Serverless 集合并保护数据,您需要设置 Encryption policies(加密策略)以将 AWS KMS 密钥分配给一个或多个集合,然后将 Network policies(网络策略)附加到集合,以控制来自指定 VPC 和公有 IP 地址的访问。

要创建加密策略,请在左侧导航窗格中选择 Encryption policies(加密策略)和 Create encryption policy(创建加密策略)。静态加密可保护集合中的索引。对于每个集合,AWS KMS 都会生成一个唯一的对称加密密钥。加密策略是跨多个集合管理 AWS KMS 密钥的理想方式。您可以定义目标集合名称或前缀,这会自动将此策略中的加密设置应用到集合。

要允许用户访问集合,请在左侧导航窗格中选择 Network policies(网络策略),然后选择 Create network policy(创建网络策略)。网络策略决定了您的集合是否可以通过互联网从公共网络访问,还是必须通过 OpenSearch Serverless 托管式 VPC 端点进行访问。

您可以为每个集合定义多条规则,Access Type(访问类型)可以是 Public(公有)或 VPC,后者是推荐选项。如果您选择公有选项,则可以从 OpenSearch 控制面板访问集合。

此外,您可以配置 OpenSearch 控制面板和 OpenSearch 端点的访问权限。对于 Resource type(资源类型),请同时启用对 OpenSearch 端点的访问和对 OpenSearch 控制面板的访问。在这两个输入框中,选择 Collection Name 属性和您的集合名称或前缀。

最后,要创建 OpenSearch Serverless 集合,请在主页中选择 Create collection(创建集合),或者在左侧导航窗格中选择 Collections(集合),然后选择 Create collection(创建集合)。

输入集合名称、描述和集合类型,集合类型可以是 Time series(时间序列)或按数据类型 Search(搜索)。

  • 时间序列 – 日志分析部分,重点实时分析大量半结构化、机器生成的数据,以获得运营、安全、用户行为和业务洞察。
  • 搜索 – 支持内部网络应用程序(内容管理系统、法律文档)和面向互联网的应用程序(例如电子商务网站搜索和内容搜索)的全文搜索。

选择 Create(创建)后,通常不到一分钟即可完成集合的初始化。

上传和搜索集合中的数据
在上传和搜索集合中的数据之前,请首先配置 IAM policy 以访问集合中的实际数据。在左侧导航窗格中选择 Data access policies(数据访问策略),然后选择 Create data access policy(创建数据访问策略)。

您可以对同一个资源同时应用多个策略。每个策略都包含一组规则。每条规则都有一个资源(集合或索引)、该资源权限以及一个主体列表(IAM 用户、角色 ARN 或 SAML 身份)。

以下示例策略为单个用户提供了在您的集合中创建索引、为某些数据创建索引以及进行搜索所需的最低权限。请将主体 ARN 替换为您将用于登录 OpenSearch 控制面板的账户的 ARN。

[
  {
    "Rules": [
      {
        "ResourceType": "index",
        "Resource": [
          "index/books/*"
        ],
        "Permission": [
          "aoss:CreateIndex",
          "aoss:ReadDocument",
          "aoss:UpdateIndex",
          "aoss:DeleteIndex",
          "aoss:WriteDocument"
        ]
      }
    ],
    "Principal": [
      "arn:aws:iam::123456789012:user/admin"
    ]
  }
]

现在,您可以使用 Postman 或 curl 将数据上传到 OpenSearch Serverless 集合。您也可以在 OpenSearch 控制面板控制台中使用开发工具。在集合的详细信息页面上选择 OpenSearch Dashboards(OpenSearch 控制面板)。

使用您在数据访问策略中为主体指定的 AWS 访问密钥和秘密密钥登录 OpenSearch 控制面板。在 OpenSearch 控制面板中,打开左侧导航菜单并选择 Dev Tools(开发工具)。

要创建一个名为 books-index 的单一索引,请运行 PUT books-index,然后将第一个单一文档索引到 books-index 中。

您也可以在开发工具中查询搜索数据。

GET books_index/_search
{
    "query": {
    "simple_query_string": {
    "query": "Jeff",
    "fields": ["author"]
    } 
  }
}

对于时间序列数据,您可以使用所有串流摄取选项来摄取数据,例如原生的 OpenSearch 串流 APIAmazon Kinesis Data FirehoseAWS Glue 以及各种开源串流摄取管道,例如 Logstash、FluentBit、Fluentd 和 Data Prepper。

此外,您可以从 OpenSearch Service 上的托管式集群拍摄数据快照,然后将其还原到集合中,从而轻松迁移工作负载。数据进入集合后,您可以使用自己喜欢的 OpenSearch 客户端对其进行查询,并使用 OpenSearch 控制面板以交互方式分析以及实现数据可视化。

注意事项
在选择 Amazon OpenSearch Serverless 时,在其他功能和考虑因素方面应注意以下几点:

  • SAML 身份验证 – 您可以使用现有的身份提供者为 OpenSearch Serverless 的 OpenSearch 控制面板端点提供单点登录(SSO)。SAML 身份验证允许您使用第三方身份提供者来登录 OpenSearch 控制面板,以索引和搜索数据。OpenSearch Serverless 支持使用 SAML 2.0 标准的身份提供者,例如 Okta、Keycloak、Active Directory 联合身份验证服务和 Auth0。
  • 私有 VPC 端点 – 您可以使用 AWS PrivateLink 在您的 VPC 和 OpenSearch Serverless 之间创建私有连接。您无需使用互联网网关、NAT 设备、VPN 连接或 AWS Direct Connect 连接即可访问您的集合,如同这些集合就位于您的 VPC 中。要创建接口端点,请在 OpenSearch Service 的左侧导航窗格中选择 VPC endpoints(VPC 端点)。
  • 托管式集群 – 对于需要严格控制集群配置或特定自定义的场景,更适合的方法可能是使用 Amazon OpenSearch Service 托管式集群选项。例如,您的工作负载可能需要更适合在加速型计算实例上运行的自定义插件,以及需要对数据分片策略等配置进行更多控制。您可以根据工作负载的要求选择预调配实例或无服务器实例。

参与预览版试用
Amazon OpenSearch Serverless 预览版现已在美国东部(弗吉尼亚州北部、俄亥俄州)、美国西部(俄勒冈州)、欧洲地区(爱尔兰)、亚太地区(东京)开放。OpenSearch Serverless 无前期费用要求,您只需为摄取的数据和运行的查询付费。有关定价详细信息,请参阅 OpenSearch Service 定价页面。要了解详情,请访问 Amazon OpenSearch Service 用户指南

我们希望在开放预览期间听到更多反馈。请将反馈发送至 AWS re:Post for Amazon OpenSearch Service 或通过您通常的 AWS Support 联系方式发送反馈。

Channy