添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

源 OpenSearch 服务域或 OpenSearch 无服务器 VPC 集合。此域或集合包含您要迁移的数据。如果您使用的是域名,则该域名必须运行 OpenSearch 版本 1.0 或更高版本,或者运行 Elasticsearch 版本 7.4 或更高版本。该域还必须具有向您的管道角色授予相应权限的访问策略。

您要将数据迁移到的单独域或 VPC 集合。此域或集合将充当管道 接收器

一个管道角色, OpenSearch Ingestion 将使用它来读取和写入你的收藏或域名。您可以在工作流配置中包含此角色的 Amazon 资源名称 (ARN)。有关更多信息,请参阅以下资源:

授予 Amazon OpenSearch Ingestion 管道访问集合的权限

将 OpenSearch 服务域或 OpenSearch 无服务器集合指定为接收器时,以下限制适用:

在单个管道配置 AWS 区域 中,最多可以指定三个不同的接收器。

如果具有多个接收器的管道中断时间过长,或者没有配置足够的容量来接收传入的数据,则随着时间的推移,具有多个接收器的管道的处理速度可能会降低。

OpenSearch 服务即来源

您指定为源的域或集合是数据迁移 来源。

在 IAM 中创建管道角色

要创建 In OpenSearch gestion 管道,必须先创建一个管道角色来授予域名或集合之间的读写权限。为此,请执行以下步骤:

在 IAM 中创建新的权限策略以附加到管道角色。确保您允许从源代码读取和写入接收器的权限。有关为 OpenSearch 服务域设置 IAM 管道权限的更多信息,请参阅 授予 Amazon OpenSearch Ingestion 管道访问域名的权限 授予 Amazon OpenSearch Ingestion 管道访问集合的权限

在管道角色中指定以下权限以从源代码读取:

"Version":"2012-10-17", "Statement":[ "Effect":"Allow", "Action":"es:ESHttpGet", "Resource":[ "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /_cat/indices", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /_search", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /_search/scroll", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /*/_search" "Effect":"Allow", "Action":"es:ESHttpPost", "Resource":[ "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /*/_search/point_in_time", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /*/_search/scroll" "Effect":"Allow", "Action":"es:ESHttpDelete", "Resource":[ "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /_search/point_in_time", "arn:aws:es:us-east-1: { account-id} :domain/ { domain-name} /_search/scroll"

将策略附加到管道角色后,使用 AWSOpenSearchDataMigrationPipeline 迁移蓝图创建管道。该蓝图包括用于在 OpenSearch 服务域或集合之间迁移数据的默认配置。有关更多信息,请参阅 使用蓝图创建管道

注意

OpenSearch Ingestion 使用您的源域版本和发行版来确定使用哪种机制进行迁移。某些版本支持该 point_in_time 选项。 OpenSearch Serverless 之所以使用该 search_after 选项,是因为它不支持 point_in_time scroll

迁移过程中可能正在创建新索引,也可能在迁移过程中更新文档。因此,您可能需要对域索引数据执行一次或多次扫描,以获取新的或更新的数据。

通过在管道配置中配置 index_read_count interval ,指定要运行的扫描次数。以下示例说明如何执行多次扫描:

scheduling: interval: "PT2H" index_read_count: 3 start_time: "2023-06-02T22:01:30.00Z"

OpenSearch Ingestion 使用以下配置来确保您的数据写入同一个索引并保持相同的文档 ID:

index: "${getMetadata(\"opensearch-index\")}" document_id: "${getMetadata(\"opensearch-document_id\")}"

指定多个 OpenSearch 服务域接收器

您可以指定多个公共 OpenSearch 服务域作为数据的目的地。您可以使用此功能执行条件路由或将传入的数据复制到多个 OpenSearch 服务域。您最多可以指定 10 个不同的公共 OpenSearch 服务域作为接收器。

在以下示例中,传入的数据有条件地路由到不同的 OpenSearch 服务域:

route: - 2xx_status: "/response >= 200 and /response < 300" - 5xx_status: "/response >= 500 and /response < 600" sink: - opensearch: hosts: [ "https://search- response-2xx . us-east-1 .es.amazonaws.com" ] sts_role_arn: "arn:aws:iam:: 123456789012 :role/ Example-Role " region: "us-east-1" index: "response-2xx" routes: - 2xx_status - opensearch: hosts: [ "https://search- response-5xx . us-east-1 .es.amazonaws.com" ] sts_role_arn: "arn:aws:iam::123456789012:role/ Example-Role " region: "us-east-1" index: "response-5xx" routes: - 5xx_status

将数据迁移到 OpenSearch 无服务器 VPC 集合

您可以使用 OpenSearch Ingestion 将数据从源 OpenSearch 服务域或 OpenSearch 无服务器集合迁移到 VPC 集合接收器。您必须在管道配置中提供网络访问策略。有关将数据提取到 OpenSearch 无服务器 VPC 集合的更多信息,请参阅。 教程:使用 Amazon Ingestion 将数据提取到集合中 OpenSearch

将数据迁移到 VPC 集合
  1. 创建 OpenSearch 无服务器集合。有关说明,请参阅 教程:使用 Amazon Ingestion 将数据提取到集合中 OpenSearch

    为集合创建网络策略,指定对集合端点和控制面板端点的 VPC 访问权限。有关说明,请参阅 Amazon OpenSearch Serverless 的网络访问

    如果您还没有管道角色,请创建一个。有关说明,请参阅 管道角色