Amazon OpenSearch Ingestion パイプラインの更新 - Amazon OpenSearch Service

Amazon OpenSearch Ingestion パイプラインの更新

Amazon OpenSearch Ingestion パイプラインを更新するときは、AWS Management Console、AWS CLI、OpenSearch Ingestion API のいずれかを使用します。パイプラインの YAML 設定を更新すると、OpenSearch Ingestion がブルー/グリーンデプロイを開始します。詳細については、「パイプライン更新用のブルー/グリーンデプロイ」を参照してください。

考慮事項

パイプラインを更新するときは、次の点を考慮します。

  • パイプラインの容量制限、ログ公開のオプション、YAML 設定は、編集が可能です。名前やネットワーク設定は、編集できません。

  • パイプラインが VPC ドメインシンクに書き込みを行う場合、パイプラインを作成した後に、前に戻ってシンクを別の VPC ドメインに変更することはできません。そのパイプラインを削除し、新しいシンクを使って改めて作成する必要があります。シンクを VPC ドメインからパブリックドメイン、パブリックドメインから VPC ドメイン、パブリックドメインから別のパブリックドメインに、それぞれ切り替えることはできます。

  • パイプラインシンクは、パブリック OpenSearch Service ドメインと OpenSearch Serverless コレクションの間で、随時切り替えることができます。

  • パイプラインの YAML 設定を更新すると、OpenSearch Ingestion がブルー/グリーンデプロイを開始します。詳細については、「パイプライン更新用のブルー/グリーンデプロイ」を参照してください。

  • パイプラインの YAML 設定を更新すると、OpenSearch Ingestion は、パイプライン設定で指定された Data Prepper のメジャーバージョンの、サポートされている最新のマイナーバージョンに、パイプラインを自動でアップグレードします。このプロセスにより、パイプラインは、最新のバグ修正とパフォーマンスの改善が施されて最新状態に保たれます。

  • パイプラインは、停止した場合でも更新することができます。

必要なアクセス許可

OpenSearch Ingestion は、パイプラインの更新に次の IAM アクセス許可を使用します。

  • osis:UpdatePipeline - パイプラインを更新します。

  • osis:ValidatePipeline — パイプライン設定が有効かどうかを確認します。

  • iam:PassRole — パイプラインロールを OpenSearch Ingestion に渡し、ドメインにデータを書き込めるようにします。このアクセス許可は、パイプラインの YAML 設定を更新するときのみ必要で、ログの公開や容量制限など、他の設定を変更する場合は必要ありません。

例えば、次のポリシーではパイプラインを更新するためのアクセス許可を付与しています。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Resource":"*", "Action":[ "osis:UpdatePipeline", "osis:ValidatePipeline" ] }, { "Resource":[ "arn:aws:iam::{your-account-id}:role/{pipeline-role}" ], "Effect":"Allow", "Action":[ "iam:PassRole" ] } ] }

パイプラインの更新

Amazon OpenSearch Ingestion パイプラインを更新するときは、AWS Management Console、AWS CLI、OpenSearch Ingestion API のいずれかを使用します。

パイプラインを更新するには
  1. Amazon OpenSearch Service コンソール (https://console.aws.amazon.com/aos/home) にサインインします。

  2. 左側のナビゲーションペインで [パイプライン] をクリックします。

  3. パイプラインを選択し、設定を開きます。パイプラインの容量制限、ログ公開のオプション、YAML 設定は、編集が可能です。名前やネットワーク設定は、編集できません。

  4. 変更が完了したら、[保存] を選択します。

AWS CLI を使用してパイプラインを更新するときは、update-pipeline リクエストを送信します。次のリクエスト例では、新しい設定ファイルをアップロードし、最小容量と最大容量値を更新しています。

aws osis update-pipeline \ --pipeline-name "my-pipeline" \ --pipline-configuration-body "file://new-pipeline-config.yaml" \ --min-units 11 \ --max-units 18

OpenSearch Ingestion API を使用して OpenSearch Ingestion パイプラインを更新するには、UpdatePipeline オペレーションを呼び出します。

パイプライン更新用のブルー/グリーンデプロイ

パイプラインの YAML 設定を更新すると、OpenSearch Ingestion がブルー/グリーンデプロイを開始します。

ブルー/グリーンとは、パイプライン更新用の新しい環境を作成し、これらの更新が完了した後に新しい環境にトラフィックをルーティングする方法のことを指します。この方法では、新しい環境へのデプロイに失敗しても、ダウンタイムを最小限に抑えることができ、元の環境を維持することができます。ブルー/グリーンデプロイ自体はパフォーマンスに影響しませんが、パイプラインの設定が、パフォーマンスを変えるような形で変更されると、パフォーマンスが変わる可能性があります。

OpenSearch Ingestion は、ブルー/グリーンデプロイの間は自動スケーリングをブロックします。新しいパイプラインにリダイレクトされるまで、古いパイプラインへのトラフィックに対してのみ、引き続き料金が請求されます。トラフィックがリダイレクトされると、新しいパイプラインに対してのみ料金が請求されます。2 つのパイプラインの料金が同時に請求されることはありません。

パイプラインの YAML 設定ファイルを更新すると、OpenSearch Ingestion は、パイプライン設定で指定された Data Prepper のメジャーバージョンの、サポートされている最新のマイナーバージョンに、パイプラインを自動でアップグレードすることができます。例えば、パイプラインの設定に version: "2" があり、OpenSearch Ingestion がまず、バージョン 2.1.0 のパイプラインをプロビジョニングしたとします。バージョン 2.1.1 のサポートが追加され、パイプライン設定に変更を加えると、OpenSearch Ingestion はパイプラインをバージョン 2.1.1 にアップグレードします。

このプロセスにより、パイプラインは、最新のバグ修正とパフォーマンスの改善が施されて最新状態に保たれます。OpenSearch Ingestion は、パイプライン設定内の version オプションを手動で変更しない限り、パイプラインのメジャーバージョンを更新することはできません。