助け合いフォーラム

AWS

AWS ソリューションアーキテクト - アソシエイト(SAA-C03)
問題ID : 30677
問題を開く
ある企業は、オンプレミスに持つPostgreSQLデータベースをAmazon RDSへ移行する方法を検討している。データベースは8TBのデータを持つ。企業には、データ転送に利用できる300MbpsのAWS Direct Connect回線があり、データ移行は1週間以内に完了したい。
もっとも適切な方法はどれか。

正解

AWS Direct ConnectでS3バケットへデータを移行する。S3からRDS PostgreSQLへインポートする

解説

AWS Direct Connectを利用する際は、ユーザーが専有の機器を配置して接続する「専用接続」と、AWS Direct Connectパートナーが用意した機器と回線を共用する「ホスト接続」があります。


専用接続の場合は1Gbps、10Gbps、100Gbps、ホスト接続の場合は50Mbps、100Mbps、200Mbps…500Mbps(特定のユーザーのみ1Gbps~10Gbps)の間で利用可能です。契約の途中で帯域の変更はできないので、帯域を変更したい場合は新しい接続を契約する必要があります。Direct Connectで接続を開設するには数日~数週間かかります。

300Mbpsで8TBを転送した場合は、伝送効率80%で約81時間、すなわち3~4日で完了する見込みです。
また、S3バケットへ転送したデータは、Amazon RDSやAmazon Auroraデータベースへインポートすることができます。

したがって正解は
・AWS Direct ConnectでS3バケットへデータを移行する。S3からRDS PostgreSQLへインポートする
です。

データ転送を短い時間で終えるために、回線速度と転送するデータ量は重要な要素です。
Direct Connectの回線速度がもっと遅かったり、転送するデータ量が多い場合は、Direct ConnectよりもSnowballによる転送の方が早く完了することがあります。
例えば、Direct Connectの回線が 100Mbps、転送するデータ量が 50TBの場合、転送にかかる時間は以下の通りです。
- Direct Connectによる転送 ... 63日(伝送効率80%)
- Snowballによる転送 ... 約10日(端末1台)
 ※AWSでは、Snowballを利用して50TBを転送する場合、運搬も含めたS3への移行完了まで10日を目安としています。

その他の選択肢については、以下のとおりです。

・AWS Snowballデバイスをオーダーし、S3バケットへ保存する。S3からRDS PostgreSQLへインポートする
AWS Snowballは大容量ストレージを備えた機器がAWSから貸し出され、オンプレミスの多量のデータをAWSストレージへ転送するサービスです。本設問では8TBとさほど大容量のデータではないこと、既に300Mbpsの接続が確立されていることから、Snowballによる移行はかえって余分なコストと手間がかかります。したがって、誤りです。

・AWS Direct Connectの帯域を500Mbpsへ増やし、データベースのバックアップをS3へ移行する。バックアップからRDS PostgreSQLを復元する
転送速度300Mbpsで8TBのデータを転送する場合でも、1週間以内で完了する見込みです。帯域を増やす必要はないので、誤りです。

・AWS Site-to-Site VPNでRDSとのVPN接続をプロビジョニングする。RDS PostgreSQLへ直接データを移行する
AWS Sire-to-Sire VPN(サイト間VPN)は、オンプレミスとAWSをインターネットVPNで接続するサービスです。専用回線を敷設するDirect Connectよりも安価に、かつ短い期間で接続を開始できます。
本設問のケースでは既にDirect Connectの回線が存在するので、あえてAWS VPNで新しい接続を作成する必要はありません。よって、誤りです。

参考

【AWSへのセキュアな接続】
オンプレミスなどのユーザー環境からAWSへ接続する場合、通常はインターネット回線を経由します。しかしインターネット回線は不特定多数の利用者と回線を共用するため、通信内容の傍受やデータの改ざんなどのリスクがあります。このようなリスクを軽減し、AWSへセキュアに通信できるサービスが「AWS Direct Connect」と「AWS VPN」です。

【AWS Direct Connect】
AWS Direct Connect(DX)はオンプレミスなどのユーザー環境からAWSへ、専用回線を使ってセキュアに接続するサービスです。インターネット回線ではなく専用回線を敷設して使用するので、安定した高速なネットワークで接続できます。
Direct Connectは、Direct ConnectロケーションのDirect ConnectエンドポイントからAWSネットワークへの接続を保証しています。AWSユーザーはDirect Connectロケーション内にルーターを設置し、オンプレミスから専用線を引き込む必要があります。工事費用と時間をかけてでも、安定した通信と強固なセキュリティ環境を求めるケースに適しています。


○AWS Direct Connectロケーション
Direct Connectロケーションとは、オンプレミスとAWSのデータセンターとを相互に接続するポイントのことです。各リージョンに複数用意されており、ユーザーは接続するロケーションを選択できます。東京リージョン(ap-northeast-1)では、東京や大阪など5つのロケーションが用意されています(2022年1月時点)。

○AWS Direct Connectエンドポイント
Direct Connectエンドポイントとは、Direct Connectサービス提供範囲にあるオンプレミス側の終端のルーターのことです。Direct Connectロケーション内に物理的に設置されており、AWSユーザーが設置したルーターと接続します。

【Direct Connectを使用した接続の種類】
Direct Connectにはパブリック接続とプライベート接続があります。パブリック接続はS3やDynamoDBなどのVPC外にあるAWSリソースへの接続に利用します。プライベート接続はVPCに仮想プライベートゲートウェイ(VGW:Virtual Private Gateway)を配置し、VPC内のAWSリソースへ接続します。


【Direct Connectゲートウェイ】
Direct Connectのプライベート接続はDirect Connectエンドポイントと仮想プライベートゲートウェイを1対1で接続するので、通常は1つのVPCにしか接続できません。Direct Connectエンドポイントから複数のVPCに接続したい場合は「Direct Connectゲートウェイ」を利用します。
Direct ConnectゲートウェイはDirect Connectエンドポイントと仮想プライベートゲートウェイの間に配置されて、世界中の各リージョンにある複数のVPCへ接続できるようになります。なお、VPCは他のAWSアカウントのものであっても接続できます。


Direct Connectゲートウェイで接続した複数のVPCは、Direct Connectエンドポイントとの通信は可能ですが、Direct Connectゲートウェイ経由でVPC同士の通信はできません。VPC同士の通信を行う場合は、VPCピアリングもしくはAWS Transit Gatewayを利用します。なおVPCピアリングとTransit Gatewayの詳細は、分野「VPC」を参照してください。

【Direct Connectの高可用性の実現】
Direct Connectでは、オンプレミスから複数のDirect Connectロケーションへの接続をサポートしています。利用しているロケーションの障害に備えて複数のロケーションへ接続することで、可用性を高められるようになっています。
例えば、オンプレミス環境から東京に存在するロケーションと大阪に存在するロケーションへDirect Connectを接続することで、自然災害時の影響を少なくすることが期待できます。


【Direct Connectのサービス提供タイプ】
Direct Connectには、「専用接続」と「ホスト接続」の2つのサービス提供タイプがあります。

・専用接続
物理的に一つの回線を一つのAWSアカウントが専用で使用します。このタイプの接続は1Gbps、10Gbps、100Gbpsの速度で利用できます。このため、大規模なデータ転送、高帯域幅を要求するアプリケーション、高度なセキュリティ要件を満たす必要がある場合に適しています。
・ホスト接続
AWS Direct Connectパートナーによって管理される物理的なDirect Connect接続を複数のAWSユーザーで共有する形態です。このタイプの接続は通常1Gbps以下の速度で提供されます。(例:50Mbps、100Mbps、300Mbps、500Mbps)低から中程度の帯域幅要件の場合に適しており、コスト効率の良い方法でDirect Connectを利用することができます。

【AWS VPN】
AWS VPN(Virtual Private Network)はオンプレミスなどのユーザー環境からAWSへ、インターネットVPN(※)でセキュアに接続するサービスです。AWS VPNではインターネット回線を利用するので、専用回線を敷設するDirect Connectよりも安価に、かつ短い期間で接続を開始できます。
※インターネットVPN … インターネット回線を使って拠点同士を仮想の専用線で接続し、暗号化通信を行う技術のこと。

【AWS VPNの種類】
AWS VPNには「AWS Client VPN」と「AWS Site-to-Site VPN」の2種類の接続方法があります。

■AWS Client VPN
AWS Client VPNは、パソコンなどの端末とVPCのClient VPNエンドポイントを、インターネットVPNで接続するサービスです。OpenVPNというVPNソフトウェアを利用しており、Windows、macOSだけでなくiOSやAndroidにも対応しています。Client VPNは機器の導入等が不要なので、手軽にセキュアな通信でAWSへアクセスできます。


■AWS Site-to-Site VPN
AWS Site-to-Site VPN(サイト間VPN)は、カスタマーゲートウェイ(オンプレミスのルーター)とVPCの仮想プライベートゲートウェイを、インターネットVPNで接続するサービスです。Site-to-Site VPNはインターネット上に仮想の専用線であるVPNトンネルを張り、IPsecという暗号技術を使って通信を保護します。


○AWS Site-to-Site VPNの高可用性の実現
AWS Site-to-Site VPNで使用する仮想プライベートゲートウェイとVPNトンネルは、機器障害に対する高可用性を保つためにAWS側で冗長化されています。一方、カスタマーゲートウェイはオンプレミス内の機器なので、高可用性を保つにはAWSユーザー側で冗長化する必要があります。


○AWS Site-to-Site VPNのネットワーク監視
VPNトンネルを経由したネットワークトラフィック情報は、Amazon CloudWatchで収集できます。CloudWatchには指定した仮想プライベートゲートウェイのVPNトンネルの状態、送受信したバイト数が記録されます。VPNトンネルの状態をCloudWatchで監視すれば、VPNトンネルに異常が発生した場合にアラームを出すことができます。

上に戻る

転送時間の計算について

公開日 2023/08/14

以下の転送時間ですが、どう計算したら約81時間という答えになるのでしょうか?

300Mbpsで8TBを転送した場合は、伝送効率80%で約81時間

2023/08/15 16:13

転送時間の計算方法自体が分からないのか、計算しても約81時間にならないのか、どちらか分からないのですが後者だと仮定しまして、
データサイズを1k = 1024byteで計算すると約81時間になりました。
ちなみに1k = 1000byteで計算すると約74時間なので、どちらにしても3,4日で転送完了します。


コメント

t takuto0622

2023/08/27 09:23

ありがとうございます。ビットとバイトがごっちゃになってました。

この返信に対して
コメントを記入できます

2023/09/22 09:53

転送時間の計算方法自体が分からないので教えてください。


コメント

a arashi1977

2023/09/22 14:25

速さ、距離、時間の関係と同じですよ。距離をデータ量に置き換えて考えれば良いです。 「時間=距離➗速さ」なのであとは単位を揃えましょう。 (転送)時間= =データ量8TB➗転送速度:300Mbps =8000GB➗300Mbps =8000000MB➗300Mbps =64000000Mbit➗300Mbps ※Byte→Bitは8倍する =213333.33...秒 ※bpsは「bit per second(秒) これが回線帯域全てを使い切れた場合のかかる時間ですね。1日24時間が86400秒なのでそれでわると 213333➗86400≒2.47 なので2.5日ぐらいです。 そうはいっても、遅延だとか使ってるプロトコルによって効率が変わったりするので、ここでは伝送効率80%だったとして計算してるのでさらに0.8で割ると 2.5➗0.8=3.125 となるので、まぁ3日はかかりそうだ、という話ですかね。

s suekichi

2023/09/29 08:58

ありがとうございます。 Byte→Bitは8倍するを忘れていました。

この返信に対して
コメントを記入できます

この投稿に対して返信しませんか?