TL;DR

Amazon Virtual Private Cloud の略。AWS のリソースを、自分で定義した論理的に分離された仮想ネットワークの中で起動できるサービスである。

なぜ必要か

自社のデータセンターで運用する従来のネットワークによく似たネットワークを、AWS のスケーラブルなインフラの上に作れる。どのリソースをインターネットに出し、どれを閉じたネットワークに置くかを、自分で設計できる。

仕組み

VPC を作ったら、サブネットを追加する。サブネットは VPC 内の IP アドレスの範囲で、1 つのアベイラビリティゾーンに属する。サブネットを作ると、EC2 インスタンスなどのリソースを VPC にデプロイできる。

通信の行き先はルートテーブルで決める。インターネットゲートウェイを付けるとインターネットにつながり、VPC エンドポイントを使うとインターネットを通らずに AWS のサービスへ接続できる。VPC ピアリング接続で 2 つの VPC の間をルーティングしたり、Site-to-Site VPN でオンプレミスのネットワークとつないだりもできる。

各リージョンには、すぐに EC2 インスタンスを起動できるデフォルト VPC が用意されている。VPC そのものに追加の料金はかからないが、NAT ゲートウェイやパブリック IPv4 アドレスなどには料金がかかる。

例

Terraformの教科書 第3章では、Terraform で VPC を作成し、その ID と CIDR ブロックを出力している。既存の VPC を data ブロックで読み込み、そこにサブネットを作る例もある(Terraform のデータを理解する)。

関連

出典