はじめに
少し前の事なのですが、AWSのトレーニングを受講する機会をいただきまして、その際、VPCの理解が浅いまま受講したのが災いし、せっかく受講したのにうまく再現できず(トレーニングでは専用のVPCがすでに構築されている状態だったため)
VPCから改めて知る必要があるなと思い、調べてみました
目次
AWS VPC概要
Virtual Private Cloudの略語で、仮想プライベートクラウド、開かれているクラウド上に仮想でプライベートなクラウドを構築するためのネットワークを構築できる機能
ネットワークの知識が必要だということがわかります
ちなみに、GoogleCloudPlatformの方は、プロジェクト単位で自動でVPCが構築されるとのことで、私みたいなクラウド初心者はGCPの方が良いかもしれないなと思いました
AWSはデフォルトのVPCがアカウント一つに一個自動で作成されますが、一つのアカウントで多数のプロジェクトを管理するのであれば、プロジェクト単位でVPCを作るべきでしょう
そのためAWSで構成を作る際は、まずVPCを構築するところから始める必要があると考えます
サブネット
ネットワークの中のネットワークのことをサブネットと言います
VPCがあって、その中にサブネットを作成して構成を作っていくという手法になります
サブネット内に仮想マシンやデータベースを構築していきます
サブネットのIPアドレスの範囲をSIDR表記で指定する必要があります
ルーティング
サブネットへの通信や、インターネットやプライベートネットワークから接続したりするのに、ルートテーブルというものを構成する必要があります
VPCを作って、サブネットを作って、ルートテーブルを構成する、基本的には最低限この一連の作業が必要になると思います
ネットワークのアドレスについて
上記3つを設定すれば、最低限VPCの構築が出来るのですが、私が引っかかったのが、IPアドレスを何に指定すれば良いのか
という点でしたので、そちらについて追記します
VPCを作成する際、出てくる「IPv4 CIDER ブロック」
コレに何を入れたら良いのかという話です
まず、このアドレスがいったい何かという事なのですが、VPC内で扱うプライベートIPアドレスの範囲を設定するところになります
表記はCIDRという表記になります
推奨されているのは以下の3つの範囲のいづれかということです
・10.0.0.0/8
(10.0.0.0 ~ 10.255.255.255)
・172.16.0.0/12
(172.16.0.0 ~ 172.31.255.255)
・192.168.0.0/16
(192.168.0.0 ~ 192.168.255.255)
割り当てる範囲についてなのですが、VPCの中で使うサービスの規模によって変更するべきではあるものの、足りなくなった場合はセカンダリーCIDRブロックを追加出来るので、ぶっちゃけ何でも良いらしいというのを調べている上で知りました
ただ、何も決めないのも気持ち悪いので、さらに調べたところ、VPCのCIDRブロックは/16で切り出したアドレス範囲、サブネットは/24で切り出した範囲で設定するのが良さそうです
設定例を元にするのであれば
VPC:10.0.0.0/16
サブネット:10.0.0.0/24〜10.0.255.0/24
が良さそうです(サブネット一つにつき255個のプライベートIPアドレスの指定が可能)