ある企業は、5つのAWSアカウントにまたがる10個のマイクロサービスをそれぞれ独立したVPCに配置しています。各マイクロサービスは相互にAPIを呼び出し合う必要があります。現行のVPCピアリングや Transit Gateway を使った構成は複雑になっており、各サービス間のアクセス制御をサービス単位で管理したいと考えています。マイクロサービス間通信の管理を簡素化し、サービス単位のアクセスポリシーを実装するために最も適したAWSサービスはどれですか?
正解: AWS VPC Lattice を使用してサービスネットワーク(Service Network)を構成し、各マイクロサービスをサービスとして登録してIAMベースのサービスポリシーでアクセス制御を行う。 AWS VPC Lattice は、マルチアカウント・マルチVPC環境でのサービス間通信を簡素化するためのマネージドサービスです。サービスネットワーク(Service Network)を作成して各VPCをアタッチし、マイクロサービスをVPC Latticeサービスとして登録することで、VPCピアリングやTransit Gatewayなしにアカウントをまたいだサービス間通信が実現できます。IAMリソースポリシーによりサービス単位のきめ細かいアクセス制御も可能です。 選択肢AのPrivateLinkも有効な選択肢ですが、10サービス間の相互通信では最大45種類のエンドポイントが必要になる場合があり、スケール時に管理が複雑化します。VPC Latticeの方が管理負荷が低く設計されています。 選択肢CのAPI GatewayはアプリケーションレイヤーのAPIゲートウェイであり、低レイテンシのサービス間通信インフラとしての設計ではなく、マイクロサービス間通信の基盤として使うには管理オーバーヘッドが増加します。 選択肢DのRAMでサブネット共有はリソースを物理的に同一サブネットに集約する方法であり、既存の独立したVPC設計を大幅に変更する必要があります。セキュリティ境界や独立スケーリングといったマイクロサービスの利点が失われます。