Amazon VPC Lattice とは - Amazon VPC Lattice

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

Amazon VPC Lattice とは

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

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

VPC Lattice では、マイクロサービスをサービスと呼び、リソースをリソース設定としてのみ表します。これらは、VPC Lattice ユーザーガイドに記載されている用語です。

主要コンポーネント

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

サービス

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

リスナーを 1 つとターゲットグループを 2 つを含むサービス。
ターゲットグループ

アプリケーションまたはサービスを実行するリソース (ターゲットとも呼ばれる) のコレクションです。これらは Elastic Load Balancing が提供するターゲットグループと似ていますが、互換性はありません。サポートされているターゲットタイプには、EC2 インスタンス、IP アドレス、Lambda 関数、Application Load Balancer、Amazon ECS タスク、Kubernetes ポッドなどがあります。

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 とサービスは同じサービスネットワークに関連付けられているため、クライアントは両方のサービスと通信できます。

サーバーとクライアントを含むサービスネットワーク。
サービスディレクトリ

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

認証ポリシー

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

認証ポリシーは、リソース設定ではサポートされていません。サービスネットワークの認証ポリシーは、サービスネットワークのリソース設定には適用されません。

役割と責任

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

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

サービスネットワーク所有者の役割と責任

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

サービス所有者の役割と責任

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

リソース所有者の役割と責任

機能

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

サービス検出

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

接続

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

オンプレミスアクセス

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 へのアクセス

次のインターフェイスのいずれかを使用して、VPC Lattice の作成、アクセス、管理を行うことができます。

  • AWS Management Console - VPC Lattice へのアクセスに使用するウェブインターフェイスを提供します。

  • AWS Command Line Interface (AWS CLI) – VPC Lattice を含むさまざまな AWS のサービス用のコマンドを提供します。 AWS CLI は Windows、MacOS、Linux でサポートされています。CLI の詳細については、AWS Command Line Interface を参照してください。API の詳細については、「Amazon VPC Lattice API リファレンス」を参照してください。

  • Kubernetes 用 VPC Lattice コントローラー — Kubernetes クラスターの VPC Lattice リソースを管理します。Kubernetes での VPC Lattice の使用の詳細については、「AWS ゲートウェイ API コントローラのユーザーガイド」を参照してください。

  • AWS CloudFormation - AWS のリソースをモデル化して設定するのに役立ちます。詳細については、「Amazon VPC Lattice リソースタイプリファレンス」を参照してください。

料金

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