

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

# Amazon VPC Lattice とは
<a name="what-is-vpc-lattice"></a>

Amazon VPC Lattice は、アプリケーションのサービスおよびリソースの接続、保護、モニタリングに使用する、フルマネージド型アプリケーションネットワーキングサービスです。VPC Lattice は、単一の仮想プライベートクラウド (VPC)、または 1 つ以上のアカウントの複数の VPC で使用できます。

最新のアプリケーションは、HTTP API、データベースなどのリソース、DNS と IP アドレスエンドポイントで構成されるカスタムリソースなど、*マイクロサービス*と呼ばれることが多い複数の小さなモジュールコンポーネントで構成できます。モダナイゼーションには利点がありますが、これらのマイクロサービスとリソースを接続するときにネットワークの複雑さや課題が生じる可能性もあります。たとえば、開発者が異なるチームに分散している場合、複数のアカウントまたは VPCs。

VPC Lattice では、マイクロサービスを*サービス*として参照し、リソース設定として*のみリソース*を表します。これらは、VPC Lattice ユーザーガイドで表示され、使用される用語です。

**Topics**
+ [主要コンポーネント](#vpc-service-network-components-overview)
+ [役割と責任](#roles-and-responsibilities)
+ [機能](#vpc-service-network-features)
+ [VPC Lattice へのアクセス](#accessing)
+ [VPC Lattice サービスエンドポイント](#service-endpoints)
+ [料金](#pricing)

## 主要コンポーネント
<a name="vpc-service-network-components-overview"></a>

Amazon VPC Lattice を使用するには、その主要コンポーネントに精通している必要があります。

**サービス**  
特定のタスクや機能を提供する、独立してデプロイ可能な単位のソフトウェアです。サービスは、アカウントまたは仮想プライベートクラウド (VPC) 内の EC2 インスタンスまたは ECS/EKS/Fargate コンテナで、または Lambda 関数として実行できます。VPC Lattice サービスには、ターゲットグループ、リスナー、ルールというコンポーネントがあります。  

![リスナーを 1 つとターゲットグループを 2 つを含むサービス。](http://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/images/service.png)
  
ターゲットグループ  
アプリケーションまたはサービスを実行するリソース (ターゲットとも呼ばれる) のコレクションです。これらは Elastic Load Balancing が提供するターゲットグループと似ていますが、互換性はありません。サポートされているターゲットタイプには、EC2 インスタンス、IP アドレス、Lambda 関数、Application Load Balancer、Amazon ECS タスク、Kubernetes Pod などがあります。  
Listener  
接続リクエストをチェックし、ターゲットグループのターゲットにルーティングするプロセスです。リスナーにはプロトコルとポート番号を設定します。  
ルール  
VPC Lattice ターゲットグループのターゲットにリクエストを転送するリスナーのデフォルトのコンポーネントです。各ルールは優先度、1 つ以上のアクション、および 1 つ以上の条件で構成されています。ルールは、リスナーによるクライアントリクエストのルーティング方法を決定します。

**[リソース] **  
リソースは、Amazon Relational Database Service (Amazon RDS) データベース、Amazon EC2 インスタンス、アプリケーションエンドポイント、ドメイン名ターゲット、IP アドレスなどのエンティティです。 AWS Resource Access Manager (AWS RAM) でリソース共有を作成し、リソースゲートウェイを作成し、リソース設定を定義することで、VPC 内のリソースを共有できます。

**リソースゲートウェイ**  
リソースゲートウェイは、リソースが存在する VPC への進入ポイントです。

**リソース設定**  
リソース設定は、単一のリソースまたはリソースのグループを表す論理オブジェクトです。リソースには、IP アドレス、ドメイン名ターゲット、または Amazon RDS データベースを使用できます。

**サービスネットワーク**  
サービスとリソース設定の集合の論理境界。クライアントは、サービスネットワークに関連付けられている VPC 内に存在できます。同じサービスネットワークに関連付けられているクライアントとサービスは、権限があれば、相互に通信できます。  
次の図の VPC とサービスは同じサービスネットワークに関連付けられているため、クライアントは両方のサービスと通信できます。  

![サーバーとクライアントを含むサービスネットワーク。](http://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/images/service-network.png)


**サービスディレクトリ**  
所有している、またはアカウントと共有されているすべての VPC Lattice サービスの中央レジストリ AWS RAM。

**認証ポリシー**  
サービスへのアクセスを定義するために使用できる、きめ細やかな認可ポリシーです。個別の認証ポリシーを個々のサービスまたはサービスネットワークにアタッチできます。例えば、EC2 インスタンスの Auto Scaling グループで実行されている支払いサービスと、 AWS Lambdaで実行されている請求サービスとのやり取りを定めたポリシーを作成できます。  
認証ポリシーは、リソース設定ではサポートされていません。サービスネットワークの認証ポリシーは、サービスネットワークのリソース設定には適用されません。

## 役割と責任
<a name="roles-and-responsibilities"></a>

役割は、Amazon VPC Lattice 内の情報の設定とフローの担当者を決定します。通常、サービスネットワーク所有者とサービス所有者の 2 つの役割がありますが、それぞれの責任は重複する場合があります。

**サービスネットワーク所有者** — サービスネットワーク所有者は通常、組織のネットワーク管理者またはクラウド管理者です。サービスネットワーク所有者は、サービスネットワークの作成、共有、プロビジョニングを行います。また、VPC Lattice 内のサービスネットワークまたはサービスにアクセスできるユーザーを管理します。サービスネットワーク所有者は、サービスネットワークに関連付けられたサービスの粗粒度のアクセス設定を定義できます。これらのコントロールは、認証ポリシーおよび認可ポリシーを使用してクライアントとサービス間の通信を管理するために使用されます。サービスまたはリソース設定がサービスネットワーク所有者のアカウントと共有されている場合、サービスネットワーク所有者は、サービスまたはリソース設定を単一または複数のサービスネットワークに関連付けることもできます。

![サービスネットワーク所有者の役割と責任](http://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/images/service-network-owner.png)


**サービス所有者 ** – サービス所有者は通常、組織のソフトウェア開発者です。サービス所有者は VPC Lattice でサービスを作成し、ルーティングルールを定義し、サービスをサービスネットワークに関連付けます。また、きめ細かなアクセス設定を定義して、認証および承認されたサービスとクライアントにのみアクセスを制限することもできます。

![サービス所有者の役割と責任](http://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/images/service-owner.png)


**リソース所有者 ** – リソース所有者は通常、組織のソフトウェア開発者であり、データベースなどのリソースの管理者として機能します。リソース所有者は、リソースのリソース設定を作成し、リソース設定のアクセス設定を定義し、リソース設定をサービスネットワークに関連付けます。

![リソース所有者の役割と責任](http://docs.aws.amazon.com/ja_jp/vpc-lattice/latest/ug/images/resource-owner.png)


## 機能
<a name="vpc-service-network-features"></a>

VPC Lattice が提供するコア機能は以下のとおりです。

**サービス検出**  
サービスネットワークに関連付けられた VPC のクライアントとサービスはすべて、同一サービスネットワーク内の他のサービスと通信できます。DNS は、クライアントからサービスへのトラフィックとサービスからサービスへのトラフィックを VPC Lattice エンドポイントを経由して転送します。クライアントがサービスにリクエストを送信する場合、クライアントはサービスの DNS 名を使用します。Route 53 リゾルバーはトラフィックを VPC Lattice に送信し、VPC Lattice が送信先サービスを識別します。

**接続**  
Client-to-serviceおよびclient-to-resource間の接続は、ネットワークインフラストラクチャ内で確立されます AWS 。VPC をサービスネットワークに関連付けると、VPC 内の任意のクライアントは、必要なアクセス権がある場合、サービスネットワーク内のサービスとリソースに (リソース設定を介して) 接続できます。VPC Lattice は、重複する CIDR テクノロジーをサポートしています。

**オンプレミスアクセス**  
VPC エンドポイント ( を使用) を使用して、VPC からサービスネットワークへの接続を有効にできます AWS PrivateLink。タイプの*サービスネットワークの* VPC エンドポイントを使用すると、Direct Connect と VPN 経由でオンプレミスネットワークからサービスネットワーク内のサービスとリソースへのアクセスを有効にできます。VPC ピアリングを通過するトラフィック、または VPC AWS Transit Gateway エンドポイント経由でリソースやサービスにアクセスできるトラフィック。

**オブザーバビリティ**  
VPC Lattice は、サービスネットワークを経由するリクエストとレスポンスごとにメトリクスとログを生成します。これは、アプリケーションの監視とトラブルシューティングに利用できます。デフォルトでは、メトリクスはサービス所有者アカウントに発行されます。サービス所有者とリソース所有者には、ログ記録を有効にし、サービスおよびリソースへのすべてのクライアントアクセス/リクエストのログを受け取るオプションがあります。サービスネットワーク所有者は、サービスネットワークでログ記録を有効にして、サービスネットワークに接続されている VPCs 内のクライアントからサービスおよびリソースへのすべてのアクセス/リクエストをログに記録することもできます。  
VPC Lattice は、 Amazon CloudWatch ロググループ、Firehose 配信ストリーム、Amazon S3 バケットなどのサービスのモニタリングとトラブルシューティングに役立ちます。

**セキュリティ**  
VPC Lattice は、複数のネットワークレイヤーに防御戦略を実装するために使用できるフレームワークを提供します。最初のレイヤーは、サービス、リソース設定、VPC 関連付け、およびタイプサービスネットワークの VPC エンドポイントの組み合わせです。VPC とサービス関連付け、またはサービスネットワークタイプの VPC エンドポイントがないと、クライアントはサービスにアクセスできません。同様に、VPC とリソース設定、サービス関連付け、またはサービスネットワークタイプの VPC エンドポイントがないと、クライアントはリソースにアクセスできません。  
2 番目のレイヤーでは、VPC とサービスネットワーク間の関連付けにセキュリティグループをアタッチできます。3 番目と 4 番目のレイヤーは認証ポリシーで、サービスネットワークレベルおよびサービスレベルで個別に適用できます。

**アベイラビリティーゾーンのアフィニティ**  
VPC Lattice は、トラフィックをルーティングするためのアベイラビリティーゾーン (AZ) アフィニティをサポートしています。クライアントが VPC Lattice にリクエストを送信すると、VPC Lattice はクライアントと同じ AZ からのサービスまたはリソースの IP アドレスで応答します。その AZ が使用できない場合、VPC Lattice は他の AZs。VPC Lattice からターゲットへのルーティングはターゲットであり、AZs 間で分散される可能性があります。さらに、VPC Lattice では AZ 間のデータ転送料金は発生しません。

## VPC Lattice へのアクセス
<a name="accessing"></a>

次のインターフェイスのいずれかを使用して、VPC Lattice の作成、アクセス、管理を行うことができます。
+ **AWS マネジメントコンソール** - VPC Lattice へのアクセスに使用するウェブインターフェイスを提供します。
+ **AWS Command Line Interface (AWS CLI)** – VPC Lattice を含む幅広い AWS サービスのコマンドを提供します。 AWS CLI は Windows、MacOS、Linux でサポートされています。CLI の詳細については、[AWS Command Line Interface](https://aws.amazon.com/cli/) を参照してください。API の詳細については、「[Amazon VPC Lattice API リファレンス](https://docs.aws.amazon.com//vpc-lattice/latest/APIReference/)」を参照してください。
+ **Kubernetes 用 VPC Lattice コントローラー** — Kubernetes クラスターの VPC Lattice リソースを管理します。Kubernetes での VPC Lattice の使用の詳細については、「[AWS ゲートウェイ API コントローラのユーザーガイド](https://www.gateway-api-controller.eks.aws.dev/)」を参照してください。
+ **CloudFormation** - AWS のリソースをモデル化して設定するのに役立ちます。詳細については、「[Amazon VPC Lattice リソースタイプリファレンス](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_VpcLattice.html)」を参照してください。

## VPC Lattice サービスエンドポイント
<a name="service-endpoints"></a>

エンドポイントは、 AWS ウェブサービスのエントリポイントとして機能する URL です。VPC Lattice は、次のエンドポイントタイプをサポートしています。
+ [IPv4 エンドポイント](#service-endpoints-ipv4)
+ [デュアルスタックのエンドポイント](#service-endpoints-ipv6) (IPv4 と IPv6 の両方をサポート)

リクエストを行うと、使用するエンドポイントを指定できます。エンドポイントを指定しない場合、デフォルトで IPv4 エンドポイントが使用されます。別のエンドポイントタイプを使用するには、リクエストで指定する必要があります。これを行う方法の例については、「[エンドポイントの指定](#service-endpoints-specify-endpoints)」を参照してください。使用可能なエンドポイントの表については、[「Amazon VPC Lattice エンドポイント](https://docs.aws.amazon.com/general/latest/gr/vpc-lattice-service.html)」を参照してください。

### IPv4 エンドポイント
<a name="service-endpoints-ipv4"></a>

 IPv4 エンドポイントは IPv4 トラフィックのみをサポートします。IPv4 エンドポイントは、すべてのリージョンで利用できます。

 一般的なエンドポイントである `vpc-lattice.amazonaws.com` を指定する場合は、`us-east-1` のエンドポイントを使用します。別のリージョンを使用するには、関連するエンドポイントを指定します。例えば、`vpc-lattice.us-east-2.amazonaws.com` をエンドポイントとして指定した場合、リクエストは `us-east-2` エンドポイントに転送されます。

IPv4 エンドポイント名では、次の命名規則が使用されます。
+ `vpc-lattice.{{region}}.amazonaws.com`

例えば、`eu-west-1` リージョンの IPv4 エンドポイントは、`vpc-lattice.eu-west-1.amazonaws.com` です。

### デュアルスタック (IPv4 および IPv6) エンドポイント
<a name="service-endpoints-ipv6"></a>

デュアルスタックエンドポイントは、IPv4 と IPv6 トラフィックの両方をサポートします。デュアルスタックエンドポイントは、すべてのリージョンで使用できます。デュアルスタックエンドポイントにリクエストを行うと、エンドポイント URL は、ネットワークとクライアントが使用するプロトコルに応じて IPv6 または IPv4 アドレスに解決されます。

デュアルスタックエンドポイント名には、次の命名規則が使用されます。
+ `vpc-lattice.{{region}}.api.aws`

例えば、`eu-west-1` リージョンのデュアルスタックエンドポイント名は、`vpc-lattice.eu-west-1.api.aws` です。

### エンドポイントの指定
<a name="service-endpoints-specify-endpoints"></a>

次の例は、 の を使用して `us-east-2`リージョンのエンドポイントを指定する方法を示しています AWS CLI `vpc-lattice`。
+ **IPv4**

  ```
  aws vpc-lattice get-service --service-identifier svc-0285b53b2eEXAMPLE --region us-east-2 --endpoint-url https://{{vpc-lattice.us-east-2.amazonaws.com}}
  ```
+ **デュアルスタック**

  ```
  aws vpc-lattice get-service --service-identifier svc-0285b53b2eEXAMPLE --region us-east-2 --endpoint-url https://{{vpc-lattice.us-east-2.api.aws}}
  ```

## 料金
<a name="pricing"></a>

VPC Lattice では、サービスがプロビジョニングされた時間、各サービスを通じて転送されたデータ量、リクエスト数に対してお支払いいただきます。リソース所有者は、各リソースとの間で転送されたデータに対して料金を支払います。サービスネットワーク所有者は、サービスネットワークに関連付けられたリソース設定に対して時間単位で料金を支払います。サービスネットワークに関連付けられた VPC を持つコンシューマーは、VPC からサービスネットワーク内のリソースとの間で転送されたデータに対して料金が発生します。詳細については、「[Amazon VPC Lattice の料金](https://aws.amazon.com/vpc/lattice/pricing/)」を参照してください。