VPCエンドポイント
VPCエンドポイントとは、VPC内からVPC外へ接続するための、接続点を作るためのサービス。
VPC内のサブネット同士は、直接通信することができる。そして、VPC同士も1つのネットワークのように繋げることができる。しかし、VPCの外にあるサービスとVPCとは、インターネットゲートウェイを通り、インターネットを介して接続する必要がある。
AWSのすべてのサービスがVPC内におけるわけではない。たとえは、S3やDynamoDBが挙げられる。ただ、AWSで作成しているのに、インターネット回線を介していては面倒でセキュリティ的にも不安である。
そこで、インターネットゲートウェイではなく、非VPCサービスとVPCを直結することができるのが、エンドポイントサービス。VPCの出口としてエンドポイントを設定することで、S3に直接接続できる。
インターフェースエンドポイントとゲートウェイエンドポイントの2種類がある。
インターフェースエンドポイントとゲートウェイエンドポイント
VPCエンドポイントは、仮想的なサービス。
冗長性と高可用性を備えていて、自動的にスケールされるため、ネットワークトラフィックなどを考えなくて良いメリットがある。
エンドポイントには2種類あり、インターフェイスエンドポイントは、ネットワークインターフェイス(ENI)として構成するタイプ、ゲートウェイエンドポイントは、ルートテーブルに記載してルーティングするタイプ。
インターフェースエンドポイント
プライベートIPアドレスを持つENIであり、そこから各種サービスに接続する出入り口になる。
AWS PrivateLinkという仕組みを使っているため、AWS以外の他社サービスでも、PrivateLinkに対応していれば使用できる。
ゲートウェイエンドポイント
サービスのリージョン単位で、ルートテーブルに記載する方法。
一度設定したら、そのサービスの全体で使用できる。S3やDynamoDBはこの形式をとっている。
VPCエンドポイントの料金
エンドポイントの料金は無料。
インターフェイスエンドポイントの場合、AWS PrivateLinkを使用するので、その分の料金がかかる。インターフェイスエンドポイントが設定されている限り料金がかかるが、削除すれば停止される。
インターフェイスエンドポイントの料金
料金 = VPCエンドポイント1つあたりの使用量 + データ処理量
- VPCエンドポイント1つあたりの使用量
VPCエンドポイント1つあたり、時間でPrivateLinkの料金がかかる - データ処理量
データ処理量は処理データ1GBあたりの料金は0.01USドル程度。