参考は「Amazon Elastic Compute Cloud - Amazon EC2 と Amazon Virtual Private Cloud」
あとこちら。「Amazon Virtual Private Cloud」
EC2インスタンスを起動するとき、 EC2 Classic と VPC とではどう違うのか?といった部分がまとめられています。EC2 Classicをご利用のお客様の運用やVPC移行をする場合にはこの辺が役立つのではないかと。
はじめに
従来のDC(データセンター)で運用していたネットワークの環境によく似ている、らしい。AWSのスケーラブルなインフラを使ってネットワークの構築ができるところがメリット。設定をコントロールできる範囲も(たぶん)広い。例えば以下のようなもの。
- IPの範囲
- サブネットの作成
- ルーティングテーブル
- ネットワークG/W
- セキュリティ
既に自前で持っているDCに対してVPCを接続することもできる。よって、VPCを既存環境(DC)の拡張として使うことができる。
VPCサブネットのセキュリティにはSecurity Group, Network ACLなど、複数のセキュリティレイヤを使用できる。SG(Security Group)とNACL(Network ACL)の違いはVPCドキュメントのVPC のセキュリティにて記載があります。ざっくり言うと以下のようなことかなと思っています。
- SG
- 保護する対象はインスタンス(もしくはインスタンスのグループ)
- デフォルトDenyで「許可する」の設定のみ可能
- ステートフル(トランスポート層のイメージ。 往復の概念がある)
- NACL
- 保護対象は個々のサブネット。
- 「許可」「拒否」の設定を両方記述する
- ステートレス(ネットワーク層のイメージ。 往復の概念はない)
NACLでは In/Out の両方を意識する必要がある、っていうところが注意点のように思います。
ちなみに、NACLの設定を見てみても以下のような注意書きがありますね。落とし穴なんでしょう。
(インバウンドの設定ペインにて)インバウンドトラフィックを許可します。ネットワーク ACL はステートレスであるため、インバウンドおよびアウトバウンドルールを作成する必要があります。
EC2インスタンスを起動するネットワーク(Default VPC/それ以外)による違い
ドキュメントで対応しているのはEC2-Classic と EC2-VPC の違いです。EC2-Classicは置いといて、 Default VPCかどうか? の違いに着目して見てみます。
特徴 | Default VPC | Default VPC以外 |
---|---|---|
public IPの割り当て(デフォルト設定) | Yes (注1) | No |
DNSホスト名の有効/無効(デフォルト設定) | 有効 | 無効 |
インスタンスのインターネットアクセス | 可能 | 不可 |
注1 ... ただし、デフォルトのサブネットで起動し、かつデフォルトのサブネットのPublic IP属性を変更していない場合
あと、設定項目の上限値。こちらはVPC共通。
項目 | 値 |
---|---|
VPCあたりの最大SG数 | 100 |
リージョンあたりの最大SG数 | 500 |
SGに追加可能なルール数 | 50 (注2) |
単一インスタンスあたりに同時割り当て可能なSG数 | 5 (注3) |
注2 ... おそらくInbound/Outboundでの合計数。要検証
注3 ... インスタンスの起動時/実行中に割り当てが可能
以降、工事中
時間作って追記しますー。