ポイント: Amazon Virtual Private Cloud (VPC)は、ユーザーがクラウドリソースのために孤立したネットワーキング環境を作成し、IPアドレス、サブネット、およびセキュリティを管理して安全なアプリケーションの展開を可能にする主要なAWSサービスです。
- VPCはリージョン特有であり、アカウントごとに複数の構成が可能です。
- 管理オプションには、AWS Management Console、CLI、およびSDKが含まれます。
AmazonのVirtual Private Cloud (VPC)は、ComputeとNetworkのAWSカテゴリの両方での基盤となるAWSサービスです。基盤的であることは、Elastic Compute Cloud (EC2)などの他のAWSサービスが基盤となるVPCネットワークなしではアクセスできないことを意味します。
VPCを作成することは、AWSクラウドでの運用にとって重要です。以下を見てみましょう:
VPCの仕組み: 仮想ネットワーク環境
各VPCは、AWSクラウド内にあなたのAWSアカウント専用の孤立した仮想ネットワーク環境を作成します。他のAWSリソースやサービスは、クラウドサービスを提供するためにVPCネットワーク内で動作します。
AWS VPCは、物理データセンター(DC)を運用している人には馴染みがあるでしょう。VPCは、必要に応じて拡張およびスケーリングできる従来のTCP/IPネットワークのように機能します。ただし、あなたが扱っている物理データセンターのコンポーネント(ルーター、スイッチ、VLANSなど)は、VPC内に明示的には存在しません。それらは抽象化され、クラウドソフトウェアに再エンジニアリングされています。
VPCを使用すると、AWSインスタンスを起動できる仮想ネットワークインフラストラクチャを迅速に立ち上げることができます。各VPCは、あなたのAWSリソースが必要とするものを定義します。具体的には:
- IPアドレス
- サブネット
- ルーティング
- セキュリティ
- ネットワーキング機能
VPCの存在する場所
すべてのVPCは、1つのAWSリージョン内で作成され、存在します。 AWSリージョンは、Amazonがクラウドデータセンターを集約する世界中の地理的な場所です。
地域化の利点は、地域VPCがその地理的エリアから発生するネットワークサービスを提供することです。別の地域の顧客に近いアクセスを提供する必要がある場合、その地域に別のVPCを設定することができます。
これは、ITアプリケーションとリソースがインターネットを介してオンデマンドで提供され、従量課金制であるというAWSクラウドコンピューティングの理論と見事に一致します。特定の地域にVPC設定を制限することで、必要な場所に必要なネットワークサービスを選択的に提供できます。
各Amazonアカウントは複数のVPCをホストできます。VPCは互いに孤立しているため、2つの異なる物理データセンターで同じサブネットを使用するのと同じように、VPC間でプライベートサブネットを複製できます。また、インターネットからのVPC起動インスタンスにアクセスするために使用できるパブリックIPアドレスを追加することもできます。
Amazonは、各アカウントにデフォルトのVPCを1つ作成します。それには次のものが含まれます:
- デフォルトのサブネット
- ルーティングテーブル
- セキュリティグループ
- ネットワークアクセス制御リスト
そのVPCをクラウド設定に使用するか、新しいVPCとサポートサービスをゼロから構築できます。
VPCの管理
VPC管理は、これらのAWS管理インターフェースを通じて行われます:
- AWS Management Consoleは、すべてのAWS機能を管理するためのWebインターフェースです(下の画像)。
- AWS Command Line Interface (CLI)は、多くのAWSサービスに対するWindows、Linux、およびMacのコマンドを提供します。AWSは、頻繁にCLIコマンドとして設定手順を提供します。
- AWS Software Development Kit (SDK)は、VPCを含むAWSサービス用の言語固有のAPIを提供します。
- クエリAPI。低レベルのAPIアクションは、HTTPまたはHTTPSリクエストを介して送信できます。詳細についてはAWSのEC2 APIリファレンスを確認してください。
(AWS管理ツールについてさらに学ぶ)
VPCの要素
上記のWebベースのAWS管理コンソールは、作成および管理できるほとんどのVPCリソースを示しています。VPCネットワークサービスには次のものが含まれます:
- IPv4およびIPv6アドレスブロック
- サブネット作成
- ルートテーブル
- インターネット接続
- Elastic IPアドレス (EIPs)
- ネットワーク/サブネットのセキュリティ
- 追加のネットワーキングサービス
それぞれを簡単に見てみましょう。
IPv4およびIPv6アドレスブロック
VPCのIPアドレス範囲は、Classless interdomain routing (CIDR) IPv4およびIPv6ブロックを使用して定義されます。プライマリCIDRブロックと同じアドレス範囲からのセカンダリCIDRブロックをVPCに追加できます。
AWSは、RFC 1918に指定されたプライベートアドレス範囲からCIDRブロックを指定することを推奨しています。制限については、AWS VPCおよびサブネットのページを参照してください。
サブネットの作成
起動したEC2インスタンスは、指定されたVPCサブネット内で実行されます(サブネットにインスタンスを起動することを指すこともあります)。
IPアドレス指定のために、各サブネットのCIDRはVPC CIDRブロックのサブセットを含みます。各サブネットは、他のすべてのVPCサブネットトラフィックからその個別のトラフィックを分離します。サブネットは1つのCIDRブロックのみを含むことができます。異なるトラフィックタイプを処理するために異なるサブネットを指定できます。
たとえば、ファイルサーバーインスタンスは1つのサブネットに起動でき、Webおよびモバイルアプリケーションは別のサブネットに起動し、印刷サービスは別のサブネットに起動することができます。
ルートテーブル
ルートテーブルには、ネットワークトラフィックがVPCとサブネット内でどのように指示されるかを決定するルール(ルート)が含まれています。VPCは、メインルートテーブルと呼ばれるデフォルトのルートテーブルを作成します。メインルートテーブルはすべてのVPCサブネットに自動的に関連付けられます。ここでは、2つのオプションがあります:
- メインルートテーブルを更新してネットワークトラフィックを指示する。
- 個別のサブネットトラフィックに使用するために独自のルートテーブルを作成する。
インターネット接続
インターネットアクセスのために、各VPC設定は1つのインターネットゲートウェイをホストでき、インターネットゲートウェイ、NATインスタンス、またはNATゲートウェイを使用してネットワークアドレス変換(NAT)サービスを提供します。
Elastic IPアドレス (EIPs)
EIPsは、AWSアカウントに永久に割り当てられた静的なパブリックIPv4アドレスです(EIPはIPv6には提供されていません)。EIPsは、次のために公共のインターネットアクセスに使用されます:
- インスタンス
- AWS Elastic Network Interface (ENI)
- パブリックIPアドレスを必要とする他のサービス
長期的な永久ネットワーク使用のためにEIPsを割り当てます。
ネットワーク/サブネットのセキュリティ
VPCは、インスタンスに対して状態管理の保護を提供するためにセキュリティグループを使用します。AWSは、セキュリティグループを仮想ファイアウォールと説明しています。
VPCはまた、状態管理のないVPCサブネットに対してネットワークアクセス制御リスト(NACL)を提供します。つまり、接続の状態は維持されません。
追加のネットワーキングサービス
もちろん、これらはVPCが提供する唯一のAWSサービスではありません。他の一般的なネットワーキングサービスを構成するためにVPCを使用できます:
- 仮想プライベートネットワーク(VPN)
- VPC間の直接接続(VPCピアリング)
- ゲートウェイ
- ミラーセッション
VPCと共有責任
VPCの設定を開始する前に、Amazonの共有責任モデルを確認してください。Amazonによれば、セキュリティとコンプライアンスはAWSとその顧客との共有責任です。
あなたのAWSアカウントと設定に対して、AWSは「クラウドのセキュリティ」を担当し、顧客は「クラウド内のセキュリティ」を担当します。一般的に:
- AWSは、AWSサービスを実行するためのAWSクラウドインフラストラクチャ(ハードウェア、クラウドソフトウェア、ネットワーキング、施設)を担当します。
- 顧客は、クラウド内で実行するもの(サーバー、データ、暗号化、アプリケーション、セキュリティ、アクセス、オペレーティングシステムなど)を担当します。
共有責任モデルは、AWSダウンタイム、セキュリティ侵害、ビジネス損失が発生した場合に特定の問題に対する責任が誰にあるかを明確に示します。VPC設定を行う際に、これらの限界を理解することが重要です。詳細については共有責任モデルを参照してください。
関連情報
AWSガイド
- AWSサーバーレスアプリケーションモデルをマスターするための初心者ガイド
- AWS Well-Architected Framework: 6つの柱とベストプラクティス
- AWSグローバルクラウドインフラストラクチャ: リージョン、ゾーン、その他
- Amazon VPCとは?Amazon Virtual Private Cloudの説明
- EFSとは?Amazon Elastic File Systemの説明
- AWS管理ツール: 利用可能なものと選択方法
- AWS Organizationsとは?主な機能、利点、およびベストプラクティス
- AWSスポットインスタンスの紹介
- AWSリザーブドインスタンスの紹介
- AWS Route 53の紹介
- AWS Elastic Load Balancingとは?
- AWS ECSとAWS Lambda: 違いと選択方法
- AWS ECSとEKS: 違いと選択方法
- AWS EBS (Elastic Block Store)とは?
- AWS Snowball Edge: エッジコンピューティングによるデータ転送
- AWSクラウドデザインパターン
- AWSクラウドデータベースの説明: マルチクラウドにおけるイノベーション
- AWS Braket量子コンピューティング: 始め方
- AWSとAzureとGCP: 大手3クラウドプラットフォームの比較
これらの投稿は私自身のものであり、必ずしもBMCの立場、戦略、または意見を代表するものではありません。