一つのAWSアカウント上に複数プロジェクト環境を構築する際に、VPCごとに分けると管理がしやくなります。
デフォルトはVPCは172.31.0.0/16なので、それと同じ環境を自前で構築してみました。
#制約
1.AWSではリージョンごとに最大5VPCが作成可能です(上限緩和申請すれば、それ以上も作成可能)
2.VPCを作成する際に利用するIPアドレス範囲は/16~/28のサイズまで指定可能
3.VPCで利用するIPアドレス(プライベートIPアドレス)は下表で
Private IP範囲 |
---|
10.0.0.0 ~ 10.255.255.255 |
172.16.0.0 ~ 172.31.255.255 |
192.168.0.0 ~ 192.168.255.255 |
#VPC構成イメージ
もっともシンプルな構成をまず作ってみます。
#VPC作成
AWSのサービスでVPCを選択し、VPCダッシュボートで作成できます。
「Start VPC Wizard」ボタンで、用意された各種テンプレートから簡単に作成できますが、
理解するために、Wizardを利用せず、マニュアルで作っていきます。
your VPCsで一覧を表示し、「Create VPC」ボタンをクリックします。
Name tagに適切な名前を入力し、IPv4 CIDR blockは10.100.0.0/24として、小さめに作成します。
#Subnet作成
上記通り、VPCはあくまでネットワークアドレスを確保しただけで、インスタンスを配置するにはSubnetを作成し、その中に作る必要があります。
同じVPCメニューからSubnetsを選んで、サブネット一覧画面へ行きます。
「Create Subnet」ボタンを押して、まず以下のような二つを作成します。
IPv4 CIDR block | アベイラビリティゾーン | 有効なIPv4数 |
---|---|---|
10.100.0.0/27 | ap-northeast-1a | 27 |
10.100.0.32/27 | ap-northeast-1c | 27 |
AWSにおけるIPv4 用の VPC とサブネットのサイズ設定は以下を参考 | ||
http://docs.aws.amazon.com/ja_jp/AmazonVPC/latest/UserGuide/VPC_Subnets.html#vpc-sizing-ipv4 |
#EC2インスタンス作成
VPCとSubnet構築したら、次はEC2インスタンスを作成可能です。
詳細は省略しますが、Step3:Configure Instance Detailsの設定だけ配置したいVPCとSubnetを選択し、Createします。
※Auto-assign Public IPをEnableにすることを忘れるとInternetでRDPができなくなります。
早速RDPして、サーバに入りたいですが、まだこの段階ではサーバに接続できないです。
Internetをつなげるためにはインターネットゲートウェイが必要です。
#IGW作成&アタッチ
同じVPCのメニューから「Internet Gateways」を押して、一覧画面を表示します。
「Create Internet Gateways」ボタンでインターネットゲートウェイを作成します。
Name tagに sample-igw-publicを入れて、「Yes, Create」をクリック
作成したら、Stateはまだdetachedの状態です。
右クリックして、「Attach to VPC」を選択、対象VPCにアタッチします。
Stateが変わりました。
アタッチはできたものの、インターネットと通信するために、サブネットのルートテーブルをシュウセイする必要があります。
#ルーティングの構成
VPCのRoute table IDからRoute talbeの設定画面にたどり、
Routesタブで「Edit」ボタンを押して、項目追加します。
このルートテーブルに対して、「0.0.0.0/0」を送信先としてターゲットに対する通信を、作成したインターネットゲートウェイ(igw-xxxx)をターゲットとする項目を追加します。
「Save」して確定します。
最後に、EC2 sample-public-ec2を起動して、RDP接続します。