0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon VPC(仮想プライベートクラウド)

Last updated at Posted at 2024-01-03

1. Amazon VPCとは

Amazon Virtual Private Cloud (Amazon VPC) は、仮想ネットワーク環境を構成し、リソースの配置、接続性、セキュリティをフルに制御することができるサービスです。

  • リージョンをまたいでVPCを作成することはできません。
  • 機械学習用途では、SageMaker StudioやTrainingジョブの接続先としてVPCが必要となるケースが多くあります。

1.1 VPC Ingress Routing

  • すべてのリージョンで利用可能
  • セキュリティアプライアンス(例:ファイアウォールアプライアンス)を介したルーティング制御が可能

2.サブネット

サブネットはVPC内のアドレス空間の分割単位で、各サブネットは特定のAZ(アベイラビリティゾーン)に属します。

ルートテーブルはサブネットの単位で定義することが出来ます。

パブリックとプライベートがあります。
パブリックサブネットは、インターネットゲートウェイを向く経路があるサブネットのことです。
各サブネットは単一のAZ内で設定されます。同一のVPCにおいて、パブリックかプライベートにかかわらず、デフォルト設定で全てのサブネットが相互接続可能です。

2.1.サブネット作成に対するCIDR(サイダー)の設定

一般論として、ロックする範囲を指定するので、小さいほど使用可能なIPアドレスの範囲が大きくなります。

/24の設定により、256個のIPアドレスを利用できます。/23なら512、/25なら128です。

Amazon VPCの仕様として、プレフィックス長として16以上を指定する必要があります。

CIDR範囲では国の特定ができません。

3.Gateway

Gatewayは、VPCの内部と外部との通信のやり取りをする出口です。

3.1.NAT(ナット)ゲートウェイ(インターネットを使いたい)

NAT Gatewayは高可用性設計が可能だが、時間・データ転送に応じて課金されるため、MLジョブにおけるコストに注意

3.2.インターネットゲートウェイ(IGW)(インターネットを使いたい)

VPC内に配置されたインスタンスからインターネットの双方向の通信を可能にする VPC コンポーネント。

NATゲートウェイはプライベートネットワーク内のデバイスが外部と通信できるようにIPアドレスを変換するのに対し、インターネットゲートウェイはプライベートネットワークを外部のネットワークと接続し、セキュリティ機能を提供します。

例えば、インターネットからVPC内のEC2インスタンスへアクセスする際に用います。

Publicサブネットに設置された推論APIサーバ(例:SageMaker Endpoint)への外部からのアクセスに使用。

3.3.AWS Transit Gateway

中央ハブを介して 複数のVPC とオンプレミスネットワークを接続することができるVPC間の接続機能。

3.4.Site-to-Site VPN (サイト間VPN)接続を構築するために必要なコンポーネント

  • カスタマーゲートウェイ
  • 仮想プライベートゲートウェイ(VGW)

VGWはVPCごとに1つだけ紐づけることが出来ます。
10TBほどのデータ転送はVPN接続による転送によって72時間で完了させることができます。

3.5.Egress-Onlyインターネットゲートウェイ

NATゲートウェイとインターネットゲートウェイの特徴を併せ持つIPv6専用の機能です。VPCからインターネットへ(Egress)の接続開始要求は通しますが、インターネットからVPCへ(Ingress)の接続開始要求は通しません。

4. (VPC)エンドポイント

S3やDynamoDBに用いるゲートウェイ型(SDGと覚える?)と、それ以外の大多数に用いるインターフェース型があります。

ゲートウェイ型はエンドポイント経由の通信料は無料ですが、インターフェイス型は時間あたりのエンドポイントの利用料とGBあたりの通信料がかかります。

4.1.VPCゲートウェイエンドポイント

本によってはゲートウェイVPCエンドポイントと書いてあることもあります。

プライベートサブネット内のEC2インスタンスからインターネットを経由せずにS3を利用するには、S3バケット用のVPCエンドポイント(ゲートウェイエンドポイント)を作成し、ルートテーブルにS3のターゲットを設定します。

  • VPCエンドポイントポリシーで、特定のS3バケットへの通信のみを許可します
  • S3のバケットポリシーで、特定のVPCエンドポイントからの通信のみを許可します

VPCゲートウェイエンドポイントはEC2インスタンスが配置されているアベイラビリティゾーンに構成するのではなく、VPCに構成します。

4.2.インターフェイス VPC エンドポイント

以前はAmazon S3はインターフェースエンドポイントに対応していませんでしたが、2021年からAWS PrivateLink for Amazon S3という新機能が追加され、AWS PrivateLink for Amazon S3 ではインターフェイスエンドポイントを利用して、VPCからAmazon S3バケットにアクセスができるようになりました。
S3に対しインターフェイス VPC エンドポイント (インターフェイスエンドポイント) を利用する場合は、 Amazon S3 へのアクセスをコントロールするエンドポイントポリシーをアタッチすることが必要。

  • ENI(Elastic Network Interface)を介してプライベート接続
  • SageMaker、CloudWatch Logsなど多数のサービスに対応
  • PrivateLinkの実体として使われる

4.3.AWS PrivateLinkとインターフェースVPCエンドポイントの関係

AWS PrivateLinkは、VPC内から他のVPCやオンプレミス環境、AWSのサービスにプライベートにアクセスするための技術です。PrivateLinkを使用することで、トラフィックがインターネットを経由せずにプライベートネットワーク内で完結します。

例えば、プライベートサブネット内のEC2インスタンスからAmazon CloudWatch Logsへプライベートネットワーク経由でログを送信するときに用います。

インターフェースVPCエンドポイントは、AWS PrivateLinkを利用するために作成するVPC内のエラスティックネットワークインターフェース(ENI)です。このエンドポイントは、指定したAWSサービスやカスタムサービスへのプライベートアクセスを提供します。

NRIのSAAの本では、インターフェイスエンドポイントのことをAWS PrivateLinkと言っています。

5.ピアリング(ピア接続)

2つのVPC間でプライベート接続する機能。リージョン間のピア接続はAWSの専用線であるため、高速でセキュアに接続できます。
異なるアカウントにあるVPC間でもピアリングすることができます。

6. DNS Hostnames

  • VPCのDNS Hostnames設定が無効だと、インスタンスがDNS名を取得できず不便
  • SageMakerなどのサービスは内部で名前解決を行うため、有効化が推奨

7.本番環境と開発環境への分割

VPCを本番環境と開発環境とに分割することで特定のVPC下でのアクセスを限定するIAMポリシーによってアクセス可能なVPC範囲を絞ることができます。

8.VPCメッシュ

AWS VPCメッシュは、VPC(Virtual Private Cloud)間の通信を可能にするネットワーキングのパターンで、特にサービス間の通信を効率的に行うために利用されます。これにより、複数のVPC間でリソースを安全に接続し、データのフローを最適化することができます。

9.ENI(Elastic Network Interface)

ENIはAWSリソースのネットワークインターフェイスです。オンプレミス環境におけるNIC(Network Interface Card)と同じ役割を持ち、VPC内のEC2インスタンスやNATゲートウェイなどに割り当てて利用します。

9.1.VPCフローログ

ネットワークトラフィックを取得し、CloudWatchでモニタリングできるようにする機能。

10. VPCとMLサービスの接続パターン例

サービス 接続方式 注意点
SageMaker Studio VPC + Private Subnet + S3 Gateway VPCE EBS/S3間の通信セキュア化
SageMaker Inference Endpoint Public/Private Subnet + PrivateLink 外部API化と制御の両立
Glue Job VPC + Interface VPCE + NAT データ転送コストに注意
CloudWatch Logs Interface Endpoint + Flow Logs 学習ジョブの監視
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?