Tech

Amazon VPCの解説【AWSの基礎学習】

投稿日:

こんにちは、yassanです。
今回は「Amazon VPCの解説【AWSの基礎学習】」を紹介します。

AWSの中でもっとも土台となるサービスがVPCです。

「会社でAWSをやることになったけど、右も左もわからない!」
「ざっと調べて見たけど、ふわっとした理解で不安…」

このような方も多いのではないしょうか。

今回は、そのような方に向けて、Amazon VPCについて基礎から解説します。
この記事を読むことで、AmazonVPCについて理解することができると思いますので、ぜひ最後まで読んでいただけると嬉しいです。

VPCとは?

VPCとは「Amazonがネットワーク環境を提供してくれるサービス」です。

AWSというサービスによって、私たちユーザーは料金を支払うことでAmazonのコンピュータリソースを利用することができます。
そのAWSのハードウェアやコンピュータリソースは、どのユーザーも物理的に共有されたものを使うことになります。

共有されたものを使うと聞くと、セキュリティ的にどうなの?と思ってしまいますよね。
そこで、「VPC(Virtual Private Cloud)」の出番です。

VPCという仮想ネットワーク環境を作ることで、論理的にコンピュータリソースを分割して利用することができるのです。
これによって、セキュリティの心配はしなくてよくなります。

コンピュータリソースはユーザー全体で共有するのでリソースを効率的に利用でき、それぞれの領域・区画を分けているのでセキュリティ的にも安心というわけです。

VPC作成時には、プライベートIPアドレスの範囲で、「ここからここまでを使いますよ」というのを宣言しておく必要があります。
後述しますが、VPCの中に様々なネットワークやコンピュータリソースを配置することになります。
それぞれを配置するのにどれぐらい領域が必要なのかを最初に決めておく。と思っていてください。

サブネットとルートテーブル

サブネットとは、VPC内部に構成するネットワークのことです。

VPCで「プライベートIPアドレスのここからここまでを使いますよ」と宣言していましたが、サブネットは「その中でもプライベートIPアドレスのここからここまでは、サブネットAとします」と決めたものになります。

サブネットはVPC内に複数作ることができます。
サブネットとしてVPC内のネットワークを分けておくことにはセキュリティ上でのメリットがあります。

それは、インターネットとの不必要な接続を避けることができることです。
サブネットをインターネットと接続するサブネットとインターネットと接続できないサブネットに分けることで実現します。

インターネットに接続するサブネットをパブリックサブネット。
インターネットに接続しないサブネットをプライベートサブネット。と呼びます。

サブネットを作成するときに、ルートテーブルというものを定義します。
このルートテーブルにデフォルトゲートウェイをインターネットゲートウェイに設定したものが、パブリックサブネットになります。
(インターネットゲートウェイは、次の章で解説します)
デフォルトゲートウェイをインターネットゲートウェイに設定していないものが、プライベートサブネットになります。

ルートテーブルというのは「サブネット内のサービス(コンピュータリソース)がどこと通信できるものかを定義したもの」と解釈するとわかりやすいです。

インターネットとの安全な接続

VPC内のリソースとインターネットを接続するためには、インターネットゲートウェイを利用します。

VPCにアタッチすることで、VPC内のリソースがインターネットにアクセスすることができます。
もちろん、通信できるのはパブリックサブネットの中にあるリソースだけです。

これで、セキュリティに関してバッチリではあるのですが、
実際のところ使い勝手が悪いです。

例えば、プライベートサブネットにあるライブラリをインターネットを介してアップデートをしたいとなったとき、このままではプライベートサブネット内にあるリソースは一生アップデートできません。
かといって、一時的にプライベートサブネットをパブリックサブネットに変更することも望ましくありません。
では、どうしたら良いのでしょうか?

そこで、NATゲートウェイの出番です。
NATとは、プライベートIPアドレスをグローバルIPアドレスに変換する機能を持っています。

NATゲートウェイを利用することで、プライベートサブネット内のリソースはパブリックサブネットを経由することでインターネットと安全に通信ができます。
NATゲートウェイを設定するには、プライベートサブネットにNATゲートウェイを配置してプライベートサブネットのデフォルトゲートウェイをNATゲートウェイに指定します。

リージョンとアベイラビリティゾーン

AWSには、リージョンとアベイラビティゾーンという概念があります。

パブリッククラウドといえど、この世界のどこかにコンピュータリソースを提供するハードウェアが存在します。
AWSも、世界中にコンピュータリソースを所有しています。

リージョンというのは、そのコンピュータリソースを配置している地域のことです。
例えば、日本の場合は、東京リージョンと大阪リージョンがあります。
(大阪リージョンは最近新しくできました。)

日本の例を見てもわかる通り、リージョン=国ではなく、リージョン=地域であることに注意してください。

一方、アベイラビリティゾーン(AZ)は何かというと、コンピュータリソースを提供しているデータセンター群になります。

AZは、リージョンの中に複数存在します。
例えば、東京リージョンには、AZが3つあります。

AWSの各サービスは、
グローバル > リージョン > AZ のようにサービスレベルが異なります。
例えば、VPCはリージョン単位のサービスです。
VPCのサブネットはAZを跨いだ設定をすることが可能ですが、リージョンを跨いだ設定をすることはできません。

利用したいサービスが、どのレベルのサービスなのか、知っておきましょう。

まとめ

いかがでしたでしょうか。

VPCは、AWSの仮想ネットワーク空間のことを指します。
さらに細かく分けたものを、サブネットと呼びます。
インターネットゲートウェイを通じて、パブリックサブネットは外部との通信を行います。
NATゲートウェイを通じて、プライベートサブネットは外部と安全な通信をおこないます。

VPCは、AWSのコンピュータリソースを管理する大きな枠、のように捉えていただけると良いかと思います。

ここまで読んでいただき、ありがとうございました。

参考

リージョンとAZについて説明されています。
AWS リージョンとAZ

全体像が把握するのに良いです。
【ネットワーク】 脱・知ってるつもり!AWSのネットワーク関連用語を基礎からおさらい
AWS サービスがどこにあるのかまとめ

NATの詳しい説明は、こちらがわかりやすいです。
NAT ( Network Address Translation )

-Tech
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

オンプレとAWSの違いって?【AWS入門】

こんにちは、yassanです。今回は「オンプレとAWSの違いって?【AWS入門】」についてお話しします。 最近、AWSやクラウドってどこかしこで聞きますよね。クラウドに馴染みのない方からしたら「なんか …

VPCとは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録①】

(2021/3/25 こちらにリライトしました!) こんにちは、yassanです。今回は「VPCとは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録】」について紹介します。 「AWSを初めた …

【SE】テスト工程の道しるべ

こんにちは、yassanです。今回は「【SE】テスト工程の道しるべ」を紹介します。 新人エンジニアの方がシステム開発のキャリアを歩む上で、最初に担当する工程として最も多いのがテスト工程かと思います。テ …

RDSとは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録④】

こんにちは、yassanです。今回は「RDSとは?学んだことをまとめてみた【初心者エンジニアのAWS備忘録④】」について紹介します。 これまで、VPC、EC2、Route53についてご紹介してきました …

AWS東京リージョン障害で学ぶ可用性

こんにちは、yassanです。今回は「AWS東京リージョン障害で学ぶ可用性」を紹介します。 昨日の深夜に東京リージョンにあるAZの一つで、障害が発生しました。このニュースに対して、ベストプラクティスに …