2021/03/25

AWS VPCエンドポイントについて解説!メリット・料金体系・利用シーンもご紹介

 
  

AWSのVPCエンドポイントとは


AWSのVPCエンドポイントとは、異なるVPCまたは異なるリージョンに配置されたAWSサービス同士の通信を、インターネットを経由することなくAmazonのネットワーク内で繋ぐサービスのことです。

前提となるAWSサービスエンドポイントの概念について触れた後、VPCエンドポイントの機能やメリット、料金体系・利用シーンについても紹介します。

AWSサービスエンドポイント

AWSサービスエンドポイントは、AWSにおけるウェブサービスのエントリポイントとなるURLのことです。

URLのフォーマットは”<protocol>://<service-code>.<region-code>.amazonaws.com”となっており、東京リージョンに配置したEC2にHTTPSでアクセスする時は”https://ec2.ap-northeast-1.amazonaws.com”となります。

EC2・RDS・ECSなどのリージョンがサポートされているサービスでは、上述のようにリージョン・サービスごとにエントリポイントとなるURLが異なります。

リージョンを省略してアクセスすることもでき、その場合はデフォルトでバージニア北部(us-east-1)にルーティングされます。

これらは、AWS SDKまたはAWS CLIからプログラム経由でAWSのサービスに接続する際に利用できます。

AWSのVPCエンドポイントの機能


VPCエンドポイントではゲートウェイエンドポイントとインターフェイスエンドポイントの2つの機能が提供されています。

それぞれ、どのような違いがあるでしょうか。機能の特徴について紹介していきます。

ゲートウェイエンドポイント

ゲートウェイエンドポイントとは、VPCにゲートウェイ(門)を設置することで、インターネットを介さずに、VPC内のサービスとVPC外(AWS通信網内)のサービスの通信を実現する機能のことです。

NATゲートウェイを設置しなくても、プライベートサブネットのサービスからVPC外のサービスに対してセキュアにアクセスできるのが特徴の1つです。

ただし、エンドポイントで接続するサービスはあくまでグローバルIPとなるため、ネットワークACLで通信をローカルのアドレス範囲に制限すると通信が出来なくなる特徴もあります。

なお、ゲートウェイエンドポイントで指定できるサービスはS3とDynamoDBの2つのみで、他のサービスは後述するインターフェイスエンドポイントで設置が可能です。

インターフェイスエンドポイント

インターフェイスエンドポイント(=AWS PrivateLink)とは、VPC内にインターフェイスを設置して、インターネットゲートウェイを介さずに、VPC外(AWS通信網内)のサービスにアクセスするための機能のことです。

インターフェイスエンドポイントのプライベートDNS名として、”<vpce-code>.<service-code>.<region-code>.amazonaws.com”が割り当てられます。

これは、固有のVPCエンドポイント識別子にデフォルトのAWSサービスエンドポイントを繋げた形式となります。

プライベートDNS設定の有効・無効に関わらず、プライベートサブネットのサービスからはプライベートDNS・デフォルトのAWSサービスエンドポイントの両方でインターネットゲートウェイを介さずVPC外のサービスへ通信が可能となります。

AWSのVPCエンドポイントを利用するメリット


VPCエンドポイントを利用するメリットについて、2つの観点で紹介します。

VPCエンドポイントにはどのような利用上のメリットがあるでしょうか。メリットを理解した上でVPCエンドポイントを活用しながら、要件に応じたAWSネットワークにおけるアーキテクチャのベストプラクティスを実現していきましょう。

1. インターネットを経由しないセキュアな経路が実現できる

1つ目のメリットは、インターネットを経由しないセキュアな経路が実現できることです。

VPCエンドポイントがリリースされる以前は、ゲートウェイエンドポイント経由でS3やDynamoDBへアクセスすることができなかったため、通信経路にインターネットを挟む必要がありました。

Direct Connectで社内システムのWANと接続している企業においても、データの送信・取得の過程でインターネット経由を禁止する要件があった場合、格納先としてS3を選択することができませんでした。

VPCエンドポイントのリリースにより、S3を始めとしたAWSサービスがAWSのネットワーク網で完結できるようになったため、インターネット経由が禁止のセキュアな要件も満たせるようになりました。

2. NATの通信負荷を軽減できる

2つ目のメリットは、NATゲートウェイまたはNATインスタンスに掛かる通信負荷を軽減できることです。

S3のエンドポイントはグローバルIPに解決されるため、VPCエンドポイントを利用しなかった場合、プライベートサブネットに配置したサービスからはNATゲートウェイもしくはNATインスタンス経由でS3とデータ通信をすることになります。

VPCエンドポイントを設置することで、他のNATを利用した通信を逼迫させることなく、通信負荷も軽減できます。

また、NATの通信利用料がS3・DynamoDBが大半を占める場合は、ゲートウェイエンドポイントに経路を切り替えることでコスト削減も見込めます。

AWSのVPCエンドポイントの料金


VPCエンドポイントの料金について紹介します。

はじめに、ゲートウェイエンドポイントは追加料金なしで使用することができます。ゲートウェイエンドポイントを経由したS3・DynamoDBとの通信は無料となります。

東京リージョンにおけるインターフェイスエンドポイントの料金は、エンドポイントが作成されてから各アベイラビリティゾーンで1時間ごとに0.014USD課金されます。

そのため、同じAWSサービスエンドポイントを2つのアベイラビリティゾーンで設定した場合、単価の2倍課金されるため注意が必要です。

また、VPCで処理されたデータに対しても0.01USD/GB課金されます。

AWSのVPCエンドポイントの利用シーン


VPCエンドポイントの利用シーンについて紹介します。

利用シーンの一例として、EC2 APIを利用した仮想IP制御によるHAクラスター構成に、VPCエンドポイントを活用できます。

この一例では、本番系と待機系の2ノードによる仮想IPクラスターで、本番系に異常が発生すると待機系にフェイルオーバーする構成を想定しています。

仮想IP制御はEC2インスタンス内のAWS CLIからVPC外のEC2 APIを呼び出す構成としており、VPCエンドポイントを設置しない場合インターネットゲートウェイ経由で制御する必要があります。

そこでEC2のインターフェイスエンドポイントを設置することで、インターネットゲートウェイを介すことなく本番・待機系のEC2インスタンスの仮想IP制御ができ、NATの通信負荷低減も実現できます。

まとめ


インターネットを介さず、AWSネットワーク網内でサービス間の通信を実現するVPCエンドポイントについて紹介しました。

VPCエンドポイントの機能のうち、ゲートウェイエンドポイントはS3とDynamoDBで利用でき、インターフェイスエンドポイントはその他のAWSサービスで利用できることを解説しました。

ゲートウェイエンドポイント・インターフェイスエンドポイントを利用することでNATに通信負荷をかけないセキュアなネットワークアーキテクチャを実現していきましょう。

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】