はじめに
どーも、のぶこふです。
この記事はGFAMアドベントカレンダー2021の3日目の記事です。
前回、アカウントを作成したので、お次はVPC(仮想ネットワーク)ですね。
このVPC内で、ほとんどの様々なリソースを起動していきます。
今回のサービス一覧
Service名とか | 概要 |
---|---|
VPC | ネットワーク空間 |
Subnet | VPCを論理的に分割 |
リージョン | データセンタの場所(国とかの単位) |
AZ | リージョンを物理的に分割 |
Internet Gateway | インターネットからアクセスできるようにするよ |
NAT Gateway | PrivateSubnetからインターネットアクセスしたい |
Route Table | ネットワーク経路が記載されたテーブル |
Security Group | インスタンス単位でのファイアウォール |
関係性
名前とか文章だけだと分かりづらいので、図にしてまとめると、こんな感じです。
VPC1
- VPC:Virtual Private Cloud
- AWS上にプライベートネットワーク空間を構築
- 任意のIPアドレスレンジが利用可能
- 論理的にネットワーク分離が可能
- 必要に応じて、ネットワーク同士の接続が可能
- ネットワーク環境のコントロールが可能
- ルートテーブル、各種ゲートウェイ、各種コンポーネント
- 複数のコネクション方法が選択可能
- インターネット経由
- VPN・専用線(Direct Connect)
- 作成時に、デフォルトでルートテーブルが作成される
VPC Endpoint?
- グローバルIPを持つAWSサービスに対して、VPC内部から直接アクセスするための出口
- その仕組みから、Gateway型とPrivateLink、Gateway LoadBalancerに分類されます
Gateway型 | PrivateLink (Interface型) | |
---|---|---|
対応サービス | S3、DynamoDB | 50種以上 |
アクセス制御 | エンドポイントポリシー | セキュリティグループ |
利用料金 | 無料 | 有料(1プライベートIP毎) |
冗長性 | ユーザ側で意識不要 | マルチAZ設計する |
VPC Flow Logs?
- ネットワークトラフィックをキャプチャして、CloudWatch LogsやS3へPushする機能
- ネットワークインタフェースを送信元・先とするトラフィックが対象
- RDS、Redshift、ElasciCache、WorkSpaceのネットワークインタフェーストラフィックも取得可能
CIDR
- VPCやSubnetで出てくるのが、CIDRです。
- CIDRについては、Wikipedia大先生2におまかせしますが、自身でVPCやSubnetを作成する際は、ざっくりと概念は理解しておいた方が良いと思います。
Subnet
- VPC内に構成するネットワークセグメント
- 1つのVPCに対して、1つ以上のサブネットで構成される
Public Subnet、Private Subnet?
- デフォルトゲートウェイへのルーティングによって変わる
Public | Private | |
---|---|---|
インターネットゲートウェイをアタッチして・・・ | いる | いない |
インターネットからのアクセス | 可能 | 不可能 |
通信先(デフォゲ) | インターネットゲートウェイ | だいたいNAT Gateway |
よくある構成 | APサーバ | DBサーバ |
リージョン3
- データセンターが集積されている世界中の物理的ロケーション
- 論理データセンターの各グループを、AZという(後述)
AZ
- AZ:Availability Zone
- 1リージョン内にAZが複数存在
- AZはお互いに地理的・電源的・ネットワーク的に分離
- 2つのAZを利用した冗長構成を容易に構築
- リージョン内のAZ間は、高速専用線で接続
- リージョン間も可能な限り高速専用線で接続
Internet Gateway4
- VPCとインターネットとの間の通信を可能にするVPCコンポーネント
- インターネットでルーティング可能なトラフィックの送信先をVPCのルートテーブルに追加する
- Public IPv4アドレスが割り振られているインスタンスに対して、NAT(ネットワークアドレス変換)を行う
- IPv4トラフィックとIPv6トラフィックをサポート
- 利用料金無し
NAT Gateway
- マネージドNATサービス
- プライベートサブネットのリソースが、インターネット・AWSクラウドへの通信をするために必要
- EIPを割り当て、高パフォーマンス、高可用性
- AZ毎に設置するのがベストプラクティス
Route Table5
- VPCに暗黙的に存在するルータの経路設定
- EC2インスタンスから見るとデフォゲ
Security Group6
- インスタンス単位の仮想ファイアウォール
- インバウンド・アウトバウンドトラフィックをコントロール
- 許可ルールが指定可能
- インバウンドとアウトバウンドのルールを個別に設定可能
- デフォルトのインバウンドは「設定無し=全て拒否」
- デフォルトのアウトバウンドは「全て許可」
- ステートフル
- ネットワークインタフェースに関連付けられる
- セキュリティグループの作成時に指定したVPCでのみ使用可能
AWSのサービス
サービス | 概要 | 例 |
---|---|---|
グローバルサービス | リージョンをまたがって世界で共通なサービス | Route 53、Chime、WorkSpaces・・・ |
リージョンサービス | リージョンごとに作成、管理するサービス | VPC関連、DynamoDB、Code兄弟・・・9 |
AZサービス | AZごとに作成、管理するサービス | EC2、RDS・・・ |
おわりに
今回は、VPC周りを少し整理してみました。
今回上げたサービスのほとんどが「初めて触る人用」として、AWS側でデフォルトが用意されています。
なので、EC2を開始する時などにも「使ったことが無い」という方は多いかと思います。
これらのデフォルトで用意されているものは、あくまでも初めて触る人にむけてのもの。
VPCなどは自分で設計や構築していくのが、AWSの基本だと思います。
操作や概念に慣れてきたら、デフォルトのものは使わずに、自分で設定してみましょう。
今回はここまでです。
ありがとうございました。