

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon OpenSearch Ingestion パイプラインの VPC アクセスの設定
<a name="pipeline-security"></a>

インターフェイス VPC エンドポイントを使用して Amazon OpenSearch Ingestion パイプラインにアクセスできます。VPC は、 専用の仮想ネットワークです AWS アカウント。クラウド内の他の仮想ネットワークから論理的に分離されています AWS 。VPC エンドポイントを介してパイプラインにアクセスすることで、インターネットゲートウェイや NAT デバイス、または VPN 接続を使わなくても、OpenSearch Ingestion と VPC の他のサービスとの間に安全な通信を確立できます。すべてのトラフィックは AWS クラウド内に安全に保持されます。

OpenSearch Ingestion がこのプライベート接続を確立するには、 AWS PrivateLinkを利用した*インターフェイスエンドポイント*を作成します。パイプライン作成中に指定した各サブネットでエンドポイントネットワークインターフェイスを作成します。これらは OpenSearch Ingestion パイプラインに送信されるトラフィックのエントリポイントとして機能する、リクエスタマネージド型のネットワークインターフェイスです。また、インターフェイスエンドポイントを自分で作成および管理することもできます。

VPC を使用すれば、データを、パブリックインターネット経由ではなく VPC の境界内の OpenSearch Ingestion パイプラインを通して流すことができます。VPC 内にないパイプラインは、一般向けのエンドポイントとインターネットを経由してデータを送受信します。

VPC アクセスを持つパイプラインは、パブリックまたは VPC OpenSearch Service ドメイン、およびパブリックまたは VPC OpenSearch Serverless コレクションに書き込むことができます。

**Topics**
+ [考慮事項](#pipeline-vpc-considerations)
+ [制限事項](#pipeline-vpc-limitations)
+ [前提条件](#pipeline-vpc-prereqs)
+ [パイプラインの VPC アクセスを設定する](#pipeline-vpc-configure)
+ [セルフマネージド VPC エンドポイント](#pipeline-vpc-self-managed)
+ [VPC アクセス用のサービスにリンクされたロール](#pipeline-vpc-slr)

## 考慮事項
<a name="pipeline-vpc-considerations"></a>

パイプラインの VPC アクセスを設定する際は、以下の点に注意してください。
+ パイプラインは、そのシンクと同じ VPC 内にある必要はありません。また、2 つの VPC 間の接続を確立する必要もありません。OpenSearch Ingestion が自動的にそれらを接続します。
+ パイプラインに指定できる VPC は 1 つのみです。
+ パブリックパイプラインとは異なり、VPC パイプラインは書き込み先のドメインまたはコレクションシンクと同じ AWS リージョン になければなりません。クロスリージョンを記述するために、パイプラインの S3 ソースを設定できます。
+ パイプラインは、VPC の 1 つ、2 つ、3 つのいずれかのサブネットにデプロイできます。サブネットは、Ingestion OpenSearch Compute Units (OCU) がデプロイされているアベイラビリティーゾーンと同じアベイラビリティーゾーンに分散されます。
+ パイプラインを 1 つのサブネットにのみデプロイした場合、そのアベイラビリティーゾーンがダウンするとデータを取り込めなくなります。高可用性を確保するために、パイプラインを 2 つまたは 3 つのサブネットで構成することが推奨されます。
+ セキュリティグループの指定はオプションです。セキュリティグループを指定しないと、OpenSearch Ingestion では、VPC で指定されているデフォルトのセキュリティグループが使用されます。

## 制限事項
<a name="pipeline-vpc-limitations"></a>

VPC 内のパイプラインには、次の制限事項があります。
+ パイプラインの作成後は、パイプラインのネットワーク設定を変更できません。VPC 内でパイプラインを起動した場合、後からこれをパブリックエンドポイントに変更することはできず、その逆もまた同様です。
+ インターフェイス VPC エンドポイントまたはパブリックエンドポイント内のいずれかでパイプラインを起動することはできますが、両方を実行することはできません。パイプラインを作成するときに、いずれかを選択する必要があります。
+ VPC アクセス内でパイプラインをプロビジョニングした後は、そのパイプラインを別の VPC に移動させることはできず、そのサブネットまたはセキュリティグループの設定を変更することはできません。
+ パイプラインが VPC アクセスを使用するドメインまたはコレクションシンクに書き込みを行う場合、パイプラインの作成後に、前に戻ってシンク (VPC またはパブリック) を変更することはできません。そのパイプラインを削除し、新しいシンクを使って改めて作成する必要があります。パブリックシンクから VPC アクセスのあるシンクに切り替えることは可能です。
+ VPC パイプラインへの[アカウントを横断した取り込みアクセス](configure-client.md#configure-client-cross-account)を提供することはできません。

## 前提条件
<a name="pipeline-vpc-prereqs"></a>

VPC アクセス内のパイプラインをプロビジョニングするには、まず次の手順を行います。
+ 「**VPC を作成する**」

  VPC を作成するには、Amazon VPC AWS コンソール、 CLI、またはいずれかの AWS SDKs を使用できます。詳細については、*Amazon VPC ユーザーガイド*の「[VPC の使用](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html)」を参照してください。VPC が既にある場合、このステップは省略できます。
+ **IP アドレスのリザーブ**

  OpenSearch Ingestion が、パイプラインの作成時に指定した各サブネットに、elastic network interface を配置します。各ネットワークインターフェースは 1 つの IP アドレスに関連付けられます。ネットワークインターフェイス用にサブネットごとに 1 つの IP アドレスを予約する必要があります。

## パイプラインの VPC アクセスを設定する
<a name="pipeline-vpc-configure"></a>

パイプラインの VPC アクセスは、OpenSearch Service コンソールから、または AWS CLIを使用して許可します。

### コンソール
<a name="pipeline-vpc-configure-console"></a>

VPC アクセスの設定は、[パイプラインの作成時](creating-pipeline.md#create-pipeline)に行います。**[ソースネットワークオプション]** で **[VPC アクセス]** を選択し、次のように設定します。


| 設定 | 説明 | 
| --- | --- | 
| [エンドポイントの管理] | VPC エンドポイントを自分で作成するか、OpenSearch Ingestion で作成するかを選択します。 | 
| VPC | 使用する仮想プライベートクラウド (VPC) の ID を選択します。VPC とパイプラインは同じ AWS リージョンの中になければなりません。 | 
| サブネット | 1 つ以上のサブネットを選択します。OpenSearch Service は VPC エンドポイントと Elastic Network Interface (ENI) をサブネットに配置します。 | 
| セキュリティグループ | 必要なアプリケーションが、パイプラインによって公開されているポート (80 または 443) とプロトコル (HTTP または HTTP) で、OpenSearch Ingestion パイプラインに到達できるよう、1 つ以上の VPC セキュリティグループを選択します。 | 
| [VPC アタッチメントオプション] | ソースが Amazon DocumentDB、セルフマネージド OpenSearch、Confluent Kafka などのクロス VPC 通信を必要とする場合、OpenSearch Ingestion は、これらのソースに接続するために指定したサブネットに Elastic Network Interface (ENI) を作成します。OpenSearch Ingestion は ENI を使用して、指定されたソースに到達します。**[VPC にアタッチ]** オプションにより、OpenSearch Ingestion データプレーン VPC を指定された VPC に接続します。<br />マネージド VPC の CIDR 予約を選択して、ネットワークインターフェイスをデプロイします。 | 

### CLI
<a name="pipeline-vpc-configure-cli"></a>

を使用して VPC アクセスを設定するには AWS CLI、 `--vpc-options`パラメータを指定します。

```
aws osis create-pipeline \
  --pipeline-name {{vpc-pipeline}} \
  --min-units 4 \
  --max-units 10 \
  --vpc-options SecurityGroupIds={{{sg-12345678}},{{sg-9012345}}},SubnetIds={{subnet-1212234567834asdf}} \
  --pipeline-configuration-body "file://{{pipeline-config.yaml}}"
```

## セルフマネージド VPC エンドポイント
<a name="pipeline-vpc-self-managed"></a>

パイプラインを作成するときは、エンドポイント管理を使用して、セルフマネージドエンドポイントまたはサービスマネージドエンドポイントを使用してパイプラインを作成できます。エンドポイント管理はオプションで、デフォルトでは OpenSearch Ingestion によって管理されるエンドポイントに設定されます。

でセルフマネージド VPC エンドポイントを使用してパイプラインを作成するには AWS マネジメントコンソール、[OpenSearch Service コンソールを使用したパイプラインの作成](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/creating-pipeline.html#create-pipeline-console)」を参照してください。でセルフマネージド VPC エンドポイントを使用してパイプラインを作成するには AWS CLI、[create-pipeline](https://docs.aws.amazon.com/cli/latest/reference/osis/create-pipeline.html) コマンドで `--vpc-options`パラメータを使用できます。

```
--vpc-options SubnetIds=subnet-abcdef01234567890,VpcEndpointManagement=CUSTOMER
```

エンドポイントサービスを指定すると、パイプラインへのエンドポイントを自分で作成できます。エンドポイントサービスを検索するには、[get-pipeline](https://docs.aws.amazon.com/cli/latest/reference/osis/get-pipeline.html) コマンドを使用します。このコマンドは、次のようなレスポンスを返します。

```
"vpcEndpointService" : "com.amazonaws.osis.us-east-1.pipeline-id-1234567890abcdef1234567890",
"vpcEndpoints" : [ 
  {
    "vpcId" : "vpc-1234567890abcdef0",
    "vpcOptions" : {
      "subnetIds" : [ "subnet-abcdef01234567890", "subnet-021345abcdef6789" ],
      "vpcEndpointManagement" : "CUSTOMER"
    }
  }
```

レスポンス`vpcEndpointService`の を使用して、 AWS マネジメントコンソール または で VPC エンドポイントを作成します AWS CLI。

セルフマネージド VPC エンドポイントを使用する場合は、VPC で DNS 属性 `enableDnsSupport` と `enableDnsHostnames` を有効にする必要があります。セルフマネージドエンドポイントを持つパイプラインを[停止して再起動する](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/pipeline--stop-start.html)場合は、アカウントで VPC エンドポイントを再作成する必要があります。

## VPC アクセス用のサービスにリンクされたロール
<a name="pipeline-vpc-slr"></a>

[サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)は、サービスに権限を委任する一意のタイプの IAM ロールであり、ユーザーに代わってリソースを作成して管理できます。サービスマネージド VPC エンドポイントを選択する場合、OpenSearch Ingestion には、VPC にアクセスし、パイプラインのエンドポイントを作成し、VPC のサブネットにネットワークインターフェースを配置するために、**AWSServiceRoleForAmazonOpenSearchIngestionService** という、サービスにリンクされたロールが必要です。

セルフマネージド VPC エンドポイントを選択した場合、OpenSearch Ingestion には **AWSServiceRoleForOpensearchIngestionSelfManagedVpce** という、サービスにリンクされたロールが必要です。これらのロール、そのアクセス許可と、その削除方法の詳細については、「[サービスにリンクされたロールを使用した OpenSearch Ingestion パイプラインの作成](slr-osis.md)」を参照してください。

Ingestion パイプラインを作成すると、OpenSearch Ingestion がロールを自動的に作成します。この自動作成が成功するには、アカウントに最初のパイプラインを作成するユーザーが、`iam:CreateServiceLinkedRole` アクションに対するアクセス許可を持っている必要があります。詳細については、「*IAM User Guide*」の「[Service-linked role permissions](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。ロールは、作成後に AWS Identity and Access Management (IAM) コンソールで表示できます。