COLUMN誰でもわかる!お役立ちコラム

AWS活用支援コラム

AWS VPCを基礎から学ぶ

Amazon VPCとは?

Amazon VPCとは、「Virtual Private Cloud」の略で、AWS(Amazon Web Services)上に仮想的なネットワークを構築するためのサービスです。VPCを構築・設定することで、各種AWSリソース、例えばEC2インスタンスやLambdaなどを配置して運用することが可能です。つまり、AWSのサービスの基礎インフラを提供するサービスといえるでしょう。本記事では、Amazon VPCを利用するうえでのメリットや、構成要素について説明をしていきます。

Amazon VPCをなぜ利用するのか

簡単な操作

VPCはSDN(Software Design Network)のような操作感で各種の設定を行うことが可能です。通常のNW機器ですと、コンフィグを書いてコマンドで設定を投入する、といった複雑な設定を行う必要があり、NWに非常に詳しい人でないと操作ができない場合があります。Amazon VPCはコンフィグを書く必要は一切なく、GUIベースで操作ができるようになっており、基本的なNWの知識があれば操作ができるようになっています。これにより、アプリケーションエンジニアなど、ITインフラの専門家でない人でも簡単にNWの設定ができます。

セキュリティとプライバシーの確保

Amazon VPCを使用することで、AWSクラウド内に専用の仮想プライベートネットワークを構築できます。オンプレミスのNW構成だと、DMZ(インターネットアクセスが可能な領域)とプライベートネットワーク(インターネットから遮断する領域)をファイアウォールなどに分けて構築する構成が大半になります。AWSでも同様に、インターネットから接続できる領域を簡単に分割してNWを構築することができます。したがって、アプリケーションやデータをよりセキュアに保護し、外部からの不正アクセスや攻撃から守ることができます。

運用・保守のアウトソース

オンプレミスのネットワークだと、それぞれの機器が壊れていないか監視を行う必要があります。また、機器が故障した場合は交換等を検討する必要があります。Amazon VPCでは、そのような運用・保守作業はすべてAmazon側が実施しており、ユーザー側で実施をする必要がありません。これにより、運用保守にかかるコストを大幅に削減することができます。

AWSネットワークを安心、安全に設計するスタイルズのAWSセキュリティサービスはこちら→

Amazon VPCのネットワーク設計上のメリット

ハイブリッドクラウド対応

Amazon VPCは、既存のオンプレミスデータセンターや、GoogleCloudPlatform、Azureなどの他クラウドプロバイダーとの接続を可能にします。これにより、マルチクラウドやハイブリッドクラウド環境を構築でき、既存のITインフラストラクチャとの統合や移行がスムーズに行えます。

可用性と耐障害性

Amazon VPCは複数のリージョン、アベイラビリティーゾーン(AZ)にまたがるネットワーク設計をサポートしています。たとえば大阪リージョンと東京リージョンを接続するための機能や、AZごとにサブネットを設定する機能です。これにより、簡単に複数のリージョン、AZにアプリケーションを展開できるようになり、アプリケーションの可用性と耐障害性を向上させることができます。

拡張性

Amazon VPCは需要に応じてネットワークリソースを拡張できます。具体的には、設定したIPアドレスの範囲でサブネットを追加することにより、サーバーやコンテナの新規追加ができます。これにより、構築したアプリケーションの利用者が増加した場合の増加にも対応でき、ビジネス成長に伴うネットワークの拡張に役立ちます。

Amazon VPCを構成する要素

VPCを構成する要素は様々なものがありますが、本記事ではその基本的な内容を説明します。

基本的なIPアドレス帯

Amazon VPCでは、基本的なIPアドレス帯を設定したあと、VPCを構成します。ネットワークアドレスは下記の範囲から設定できます。

  • 10.0.0.0~10.255.255.255
  • 172.16.0.0~172.31.255.255
  • 192.168.0.0~192.168.255.255

オンプレミスとの接続を行いたい場合は、オンプレミス上のNWと重複しないIPアドレスを選択する必要があります。また、基本的なIPアドレス帯は構築後、設定変更ができないため、注意が必要です。

サブネット

各AZに、VPC内にIPアドレスの範囲で分割したネットワークを設定可能です。これによりどのAZを利用するかが指定可能です。また、インターネットアクセスが可能なサブネット(パブリックサブネット)とインターネットアクセスをさせないサブネット(プライベートサブネット)をそれぞれ選択することが可能です。

ルートテーブル

ルートテーブルは、ネットワークの経路を示すルールです。例えばインターネットを介してVPCに入ってくるデータが、どのような経路で仮想サーバーに到達するかの経路を示します。こちらをサブネットごとに指定し、サブネット内のインスタンスやリソースがどのような経路で通信をするのかを設定します。

インターネットゲートウェイ(IGW)

パブリックサブネットがインターネットと通信できるようにする機能です。VPCを設定すると、デフォルトで含まれていて、VPCにアタッチして利用します。

NATゲートウェイ

プライベートサブネットに配置したリソースであってもパッチ適用などでインターネットに接続したいケースがあります。そのような要件を満たすためにNATゲートウェイが利用されます。NATゲートウェイは、プライベートIPアドレスをパブリックIPアドレスに変換できる機能があります。プライベートサブネットのリソースでもセキュアにインターネット接続が可能です。なお、以前はNATインスタンスというEC2のサービスを使っていました。

Amazon VPCの料金

VPC自体の作成や基本的な維持には料金はかかりません。VPCを作成するためには、AWSアカウントが必要ですがそれ自体は無料です。ただし、下記の条件で課金が発生します。

  • NATゲートウェイなど、オプションのVPC機能を利用した場合
    NATゲートウェイやELB(Elastic Load Balancer)などの、VPC内のリソースに対して課金が発生します。基本的に、起動(利用)している時間に応じて課金が発生します。
  • VPCから外部への通信が行われる場合
    VPCからインターネット、他のクラウドなど、VPCの外部へ発生する通信量に応じて課金が発生します。

基本的にはこちらの2点を抑えておけば問題ありません。なお、料金はAWSのリージョンごとに異なることがあり、注意が必要です。

VPCのセキュリティについて

ネットワークの設計において、何よりも気になる点がセキュリティの設計です。基本的なセキュリティ関連のサービスを解説します。なお、当サイトの別コラムAmazon VPCのセキュリティ基本」に詳細を記載しているので、参考にして下さい。

セキュリティグループ

セキュリティグループはEC2インスタンスなどのAWSリソースに関連付けられ、それぞれのリソースに対するインバウンド(入力)およびアウトバウンド(出力)トラフィックの制御を提供しています。インバウンド通信を許可すれば、それに対応するアウトバウンド通信も自動的に許可されるという『ステートフル』な特徴を持っています。

Network ACL

Network ACLはVPC(Virtual Private Cloud)レベルで適用され、複数のサブネットに影響を与えます。セキュリティグループと違い、こちらはインバウンド通信とアウトバウンド通信を別々に制御する『ステートレス』な特徴を持っています。セキュリティグループよりもVPC全体に設定を行うことができるため、広範なネットワークセキュリティポリシーを定義したい場合はこちらを利用しましょう。

AWSネットワークを安心、安全に設計するスタイルズのAWSセキュリティサービスはこちら→

VPCフローログ

VPC内のトラフィックログを取得する機能です。Amazon CloudWatch Logsまたは Amazon S3に出力でき、あとから検索・解析する用途で活用できます。送信元IPと送信先IPアドレスの情報や、接続が拒否されたか成功したかについて、ログが出力されます。

 

まとめ

本コラムではAWS VPCの基礎的な部分について解説しました。VPCはインターネットとの接続を管理する事が出来るとても大事なAWSサービスですが、言葉だけで覚えようとしてもなかなか理解するのは難しいので、簡単な構成で良いので実際にVPCを構築してみるのがよいでしょう。