翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
での OpenSearch 取り込みパイプラインの使用 OpenSearch
自己管理型 OpenSearch または Elasticsearch OpenSearch で Ingestion パイプラインを使用して、データを Amazon OpenSearch Service ドメインと OpenSearch Serverless コレクションに移行できます。Ingestion OpenSearch は、自己管理型と Elasticsearch からのデータの移行のためのパブリックネットワーク設定 OpenSearch とプライベートネットワーク設定の両方をサポートします。
パブリック OpenSearchクラスターへの接続
Ingestion OpenSearch パイプラインを使用して、パブリック設定のセルフマネージドクラスター OpenSearch または Elasticsearch クラスターからデータを移行できます。つまり、DNSドメイン名をパブリックに解決できます。そのためには、セルフマネージド OpenSearch 型または Elasticsearch OpenSearch をソースとして、 OpenSearch Service または OpenSearch Serverless を送信先として Ingestion パイプラインを設定します。これにより、セルフマネージド型のソースクラスターから AWSマネージド型の送信先ドメインまたはコレクションにデータが効果的に移行されます。
前提条件
OpenSearch 取り込みパイプラインを作成する前に、次のステップを実行します。
-
移行するデータを含むセルフマネージドクラスター OpenSearch または Elastisearch クラスターを作成し、パブリックDNS名を設定します。
-
データを移行する OpenSearch サービスドメインまたは OpenSearch サーバーレスコレクションを作成します。詳細については、 OpenSearch 「サービスドメインの作成」および「コレクションの作成」を参照してください。
-
を使用して、セルフマネージドクラスターで認証を設定します AWS Secrets Manager。「シークレットのローテーション」の手順に従って、AWS Secrets Manager シークレットのローテーションを有効にします。
-
リソースベースのポリシーをドメインにアタッチするか、データアクセスポリシーをコレクションにアタッチします。これらのアクセスポリシーにより、Ingestion OpenSearch は自己管理型クラスターからドメインまたはコレクションにデータを書き込むことができます。
次のサンプルドメインアクセスポリシーでは、次のステップで作成するパイプラインロールがドメインにデータを書き込むことを許可します。必ず独自の
resource
で を更新してくださいARN。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
{pipeline-account-id}
:role/pipeline-role
" }, "Action": [ "es:DescribeDomain", "es:ESHttp*" ], "Resource": [ "arn:aws:es:{region}
:{account-id}
:domain/domain-name
" ] } ] }コレクションまたはドメインへの書き込みデータにアクセスするための正しいアクセス許可を持つ IAMロールを作成するには、「ドメインに必要なアクセス許可」および「コレクションに必要なアクセス許可」を参照してください。
ステップ 1: パイプラインロールを設定する
OpenSearch パイプラインの前提条件を設定したら、パイプライン設定で使用するパイプラインロールを設定し、 OpenSearch サービスドメインまたは OpenSearch サーバーレスコレクションに書き込むアクセス許可と、Secrets Manager からシークレットを読み取るアクセス許可を追加します。
ステップ 2: パイプラインを作成する
その後、ソース OpenSearch として を指定する Ingestion OpenSearch パイプラインを次のように設定できます。
複数の OpenSearch サービスドメインをデータの送信先として指定できます。この機能により、受信データを複数の OpenSearch サービスドメインに条件付きでルーティングまたはレプリケーションできます。
ソース OpenSearch または Elasticsearch クラスターから OpenSearch Serverless VPCコレクションにデータを移行することもできます。パイプライン設定内でネットワークアクセスポリシーを指定していることを確認します。
version: "2" opensearch-migration-pipeline: source: opensearch: acknowledgments: true host: [ "https://
my-self-managed-cluster-name
:9200
" ] indices: include: - index_name_regex: "include-.*" exclude: - index_name_regex: '\..*' authentication: username: ${aws_secrets:secret:username
} password: ${aws_secrets:secret:password
} scheduling: interval: "PT2H" index_read_count: 3 start_time: "2023-06-02T22:01:30.00Z" sink: - opensearch: hosts: ["https://search-mydomain.us-east-1.es.amazonaws.com
"] aws: sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" region: "us-east-1
" #Uncomment the following lines if your destination is an OpenSearch Serverless collection #serverless: true # serverless_options: # network_policy_name: "network-policy-name
" index: "${getMetadata(\"opensearch-index
\")}" document_id: "${getMetadata(\"opensearch-document_id
\")}" enable_request_compression: true dlq: s3: bucket: "bucket-name
" key_path_prefix: "apache-log-pipeline/logs/dlq" region: "us-east-1
" sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" extension: aws: secrets: secret: secret_id: "my-opensearch-secret
" region: "us-east-1
" sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" refresh_interval: PT1H
事前設定された設計図を使用して、このパイプラインを作成できます。詳細については、「ブループリントを使用したパイプラインの作成」を参照してください。
内の OpenSearch クラスターへの接続 VPC
取り込みパイプラインを使用して、 OpenSearch で実行されているセルフマネージドクラスター OpenSearch または Elasticsearch クラスターからデータを移行することもできますVPC。これを行うには、セルフマネージド型 OpenSearch または OpenSearch Elasticsearch をソースとして、 OpenSearch Service または OpenSearch Serverless を送信先として Ingestion パイプラインを設定します。これにより、セルフマネージド型のソースクラスターから AWSマネージド型の送信先ドメインまたはコレクションにデータが効果的に移行されます。
前提条件
OpenSearch 取り込みパイプラインを作成する前に、次のステップを実行します。
-
移行するデータを含むVPCネットワーク設定で、セルフマネージド型クラスター OpenSearch または Elastisearch クラスターを作成します。
-
データを移行する OpenSearch サービスドメインまたは OpenSearch サーバーレスコレクションを作成します。詳細については、 OpenSearch 「サービスドメインの作成」および「コレクションの作成」を参照してください。
-
を使用して、セルフマネージドクラスターで認証を設定します AWS Secrets Manager。「シークレットのローテーション」の手順に従って、AWS Secrets Manager シークレットのローテーションを有効にします。
-
セルフマネージド型 OpenSearch または Elasticsearch VPCにアクセスできる の ID を取得します。取り込みVPCCIDRで使用する OpenSearch を選択します。
注記
を使用してパイプライン AWS Management Console を作成する場合は、セルフマネージド型 OpenSearch または Elasticsearch OpenSearch を使用するには、取り込みパイプラインも VPCにアタッチする必要があります。これを行うには、ネットワーク設定セクションを検索し、「アタッチ先VPC」チェックボックスを選択し、提供されているデフォルトオプションのいずれかCIDRから を選択するか、独自のものを選択します。RFC 1918 年ベストプラクティス
で定義されているように、プライベートアドレス空間CIDRから任意の を使用できます。 カスタム を指定するにはCIDR、ドロップダウンメニューからその他を選択します。取り込み とセルフマネージド OpenSearch の間の IP アドレスの衝突を回避するには OpenSearch、セルフマネージド OpenSearch VPC CIDRが取り込み CIDR の OpenSearch と異なることを確認してください。
-
リソースベースのポリシーをドメインにアタッチするか、コレクションにデータアクセスポリシーをアタッチします。これらのアクセスポリシーにより、Ingestion OpenSearch は自己管理型クラスターからドメインまたはコレクションにデータを書き込むことができます。
次のサンプルドメインアクセスポリシーでは、次のステップで作成するパイプラインロールがドメインにデータを書き込むことを許可します。必ず独自の
resource
で を更新してくださいARN。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
{pipeline-account-id}
:role/pipeline-role
" }, "Action": [ "es:DescribeDomain", "es:ESHttp*" ], "Resource": [ "arn:aws:es:{region}
:{account-id}
:domain/domain-name
" ] } ] }コレクションまたはドメインへの書き込みデータにアクセスするための正しいアクセス許可を持つ IAMロールを作成するには、「ドメインに必要なアクセス許可」および「コレクションに必要なアクセス許可」を参照してください。
ステップ 1: パイプラインロールを設定する
パイプラインの前提条件を設定したら、パイプライン設定で使用するパイプラインロールを設定し、ロールに次のアクセス許可を追加します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerReadAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": ["arn:aws:secretsmanager:
{region}
:{account-id}
:secret:secret-name
"] }, { "Effect": "Allow", "Action": [ "ec2:AttachNetworkInterface", "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DetachNetworkInterface", "ec2:DescribeNetworkInterfaces" ], "Resource": [ "arn:aws:ec2:*:{account-id}
:network-interface/*", "arn:aws:ec2:*:{account-id}
:subnet/*", "arn:aws:ec2:*:{account-id}
:security-group/*" ] }, { "Effect": "Allow", "Action": [ "ec2:DescribeDhcpOptions", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:Describe*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "aws:RequestTag/OSISManaged": "true" } } } ] }
パイプラインはこれらのEC2アクセス許可を使用して OpenSearch でネットワークインターフェイスを作成および削除するため、取り込みパイプラインの作成に使用するIAMロールに対して上記の Amazon アクセス許可を指定する必要がありますVPC。パイプラインは、このネットワークインターフェイスを介してのみ OpenSearch クラスターにアクセスできます。
ステップ 2: パイプラインを作成する
その後、ソース OpenSearch として を指定する Ingestion OpenSearch パイプラインを次のように設定できます。
複数の OpenSearch サービスドメインをデータの送信先として指定できます。この機能により、受信データを複数の OpenSearch サービスドメインに条件付きでルーティングまたはレプリケーションできます。
ソース OpenSearch または Elasticsearch クラスターから OpenSearch Serverless VPCコレクションにデータを移行することもできます。パイプライン設定内でネットワークアクセスポリシーを指定していることを確認します。
version: "2" opensearch-migration-pipeline: source: opensearch: acknowledgments: true host: [ "https://
my-self-managed-cluster-name
:9200
" ] indices: include: - index_name_regex: "include-.*" exclude: - index_name_regex: '\..*' authentication: username: ${aws_secrets:secret:username
} password: ${aws_secrets:secret:password
} scheduling: interval: "PT2H" index_read_count: 3 start_time: "2023-06-02T22:01:30.00Z" sink: - opensearch: hosts: ["https://search-mydomain.us-east-1.es.amazonaws.com
"] aws: sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" region: "us-east-1
" #Uncomment the following lines if your destination is an OpenSearch Serverless collection #serverless: true # serverless_options: # network_policy_name: "network-policy-name
" index: "${getMetadata(\"opensearch-index
\")}" document_id: "${getMetadata(\"opensearch-document_id
\")}" enable_request_compression: true dlq: s3: bucket: "bucket-name
" key_path_prefix: "apache-log-pipeline/logs/dlq" region: "us-east-1
" sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" extension: aws: secrets: secret: secret_id: "my-opensearch-secret
" region: "us-east-1
" sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role" refresh_interval: PT1H
事前設定された設計図を使用して、このパイプラインを作成できます。詳細については、「ブループリントを使用したパイプラインの作成」を参照してください。