前回の投稿に対する反応
AWS S3 からデータを送還するには、次の一般的なガイドラインに従います。
データ要件の確認: AWS S3 から戻す必要がある特定のバケットとオブジェクトを決定します。バケットごとにビジネスニーズとコンプライアンス要件を理解していることを確認します。
復帰先の特定: MinIO への復帰はすでに決定しているので、オンプレミスのデータ センターで実行するか、別のクラウド プロバイダーまたはコロケーション施設で実行するかを選択できます。#1 の要件を使用して、予測されるストレージ、転送、および可用性のニーズに合わせてハードウェアまたはインスタンスを選択します。
データ転送: AWS S3からMinIOへのデータ転送を計画して実行します。MinIOに組み込まれているバッチレプリケーションを使用するか、MinIOクライアントを使用してミラーリングします(
データ アクセスと権限:バケットごとに、返還されたデータに対して適切なアクセス制御と権限が設定されていることを確認します。これには、データのセキュリティを確保するためにユーザー アクセス、認証、承認を管理するための IAM およびバケット ポリシーが含まれます。
オブジェクトロック:移行後もオブジェクトロックの保持と法的保留ポリシーを維持することが重要です。ターゲットオブジェクトストアはAmazon S3と同じようにルールを解釈する必要があります。不明な場合は、
データ ライフサイクル管理:返還されたデータのデータ ライフサイクル管理戦略を定義して実装します。これには、保持ポリシー、バックアップおよび回復手順、バケットごとのデータ アーカイブ方法の定義が含まれます。
データ検証:転送されたデータを検証して、その整合性と完全性を確認します。データが破損や損失なく正常に転送されたことを確認するために必要なチェックとテストを実行します。転送後、オブジェクト名、ETag とメタデータ、チェックサム、およびオブジェクトの数はすべて、ソースと宛先間で一致します。
アプリケーションとワークフローの更新:幸いなことに、クラウドネイティブの原則に従ってアプリケーションを構築する場合、新しい MinIO エンドポイント用に再構成するだけで済みます。ただし、アプリケーションとワークフローが AWS エコシステムで動作するように設計されている場合は、戻されたデータに対応するために必要な更新を行ってください。これには、構成の更新、統合の再構成、場合によってはコードの変更が含まれる場合があります。
監視と最適化:最適なパフォーマンス、コスト効率、およびデータ管理のベスト プラクティスの遵守を確保するために、帰還されたデータ環境を継続的に監視および最適化します。
クラウドの帰還の予算と計画には、考慮すべき要素が数多くあります。幸いなことに、当社のエンジニアは多くのお客様とこの作業を行っており、詳細な計画を策定しています。少数のワークロードから数百ペタバイトまで、あらゆるものを帰還させたお客様もいます。
計画における最大の課題は、ネットワーク、リース帯域幅、サーバー ハードウェア、本国への送還対象とならなかったデータのアーカイブ コスト、独自のクラウド インフラストラクチャの管理と維持にかかる人件費など、さまざまな選択肢について熟考することです。これらのコストを見積もり、計画を立ててください。クラウド送還コストには、クラウドからデータ センターにデータを戻すためのデータ エグレス料金が含まれます。これらの料金は、クラウド ロックインを強いるほど意図的に高く設定されています。この高額なエグレス料金に注意してください。管理するデータ量が増えるとエグレス料金も高くなるため、パブリック クラウドを離れる経済的根拠が裏付けられます。したがって、本国への送還を行う場合は、早めに行動を起こす方が得策です。
ここでは、移行する必要のあるデータとメタデータに焦点を当てます。これは、復帰に必要な作業の 80% を占めます。メタデータには、バケットのプロパティとポリシー (アクセス/シークレット キーに基づくアクセス管理、ライフサイクル管理、暗号化、匿名パブリック アクセス、オブジェクトのロックとバージョン管理) が含まれます。
今はデータ(オブジェクト)に焦点を当てましょう。移行したい名前空間ごとに、移動したいバケットとオブジェクトのインベントリを作成します。DevOpsチームは、どのバケットに現在の重要なデータが含まれているかをすでに把握している可能性があります。
名前空間 | 合計バケット | 総オブジェクト数 | 合計オブジェクトサイズ (GB) | 1日の合計アップロード量 (TB) | 1日の合計ダウンロード数 (TB) |
---|---|---|---|---|---|
ns-001 | 166 | 47,751,258 | 980,014.48 | 50.04 | 14.80 |
ns-002 | 44 | 24,320,810 | 615,033.35 | 23.84 | 675.81 |
ns-002 | 648 | 88,207,041 | 601,298.91 | 328.25 | 620.93 |
ns-001 | 240 | 68,394,231 | 128,042.16 | 62.48 | 12.45 |
次のステップでは、移行するすべてのバケットについて、名前空間ごとに各バケットとそのプロパティをリストします。そのバケットにデータを保存および読み取るアプリケーションを書き留めます。使用状況に基づいて、各バケットをホット層、ウォーム層、またはコールド層データに分類します。
要約すると、次のようになります
バケット名 | プロパティ | アプリ | ホット/ウォーム/コールド層 |
---|---|---|---|
あ | JSONをコピーしてここに貼り付けます | スパーク、アイスバーグ、ドレミオ | 熱い |
B | JSONをコピーしてここに貼り付けます | 弾性 | 暖かい |
C | JSONをコピーしてここに貼り付けます | エラスティック(スナップショット) | 寒い |
この時点で、データライフサイクル管理についていくつかの決定を下す必要がありますが、AWS 料金を節約する優れた方法があるので、細心の注意を払ってください。各バケット内のオブジェクトを、アクセス頻度に基づいてホット、ウォーム、コールドに分類します。コストを節約する優れた方法は、コールド層のバケットを直接 S3 Glacier に移行することです。ダウンロードして再度アップロードするだけで、エグレス料金が発生する理由はありません。
移行するデータの量に応じて、移行方法を選択するオプションがいくつかあります。ホット データとウォーム データを新しいクラスターに徐々にコピーしながら、新しい MinIO クラスターに新しいデータを読み込んで操作することをお勧めします。オブジェクトのコピーに必要な時間と帯域幅は、もちろん、コピーするオブジェクトの数とサイズによって異なります。
ここで、AWS S3 から送還するデータの合計を計算すると非常に役立ちます。インベントリを確認し、ホットとウォームに分類されるすべてのバケットのサイズを合計します。
ホット層とウォーム層の合計データ = 1,534,096.7 GB |
---|
利用可能な帯域幅 = 10 Gbps |
必要な最小転送時間(オブジェクトの合計サイズ / 利用可能な帯域幅) = 14.2 日 |
上記の合計に基づいてデータ送信料金を計算します。
S3 Glacier に階層化されたデータの合計 = 767,048.337 GB |
---|
S3 から S3 Glacier への転送料金 ($0.05/1000 オブジェクト) = $3,773.11 |
S3 Glacier Deep Archive の月額ストレージ料金 = 760 ドル |
今後の S3 Glacier Deep Archive の使用に備えて予算を確保することを忘れないでください。
転送されるデータの合計 = 1,534,096.7 GB |
---|
最初の 10 TB は 0.09 ドル/GB = 900 ドル |
次の 40 TB は 0.085 ドル/GB = 3,400 ドル |
次の 100 TB は 0.07 ドル/GB = 70,000 ドル |
150 TB を超える場合は 0.05 ドル/GB = 69,205 ドル |
合計退去料金 = $143,504 |
簡単にするために、上記の計算にはオブジェクトごとの操作料金 ($0.40/100 万) も LIST のコスト ($5/100 万) も含まれていません。非常に大規模な送還プロジェクトの場合、ネットワーク経由で送信する前にオブジェクトを圧縮して、送信料金の一部を節約することもできます。
もう 1 つのオプションは、AWS Snowball を使用してオブジェクトを転送することです。Snowball デバイスはそれぞれ 80 TB なので、返還作業には 20 台必要であることが事前にわかっています。デバイスあたりの料金には、10 日間の使用料と 2 日間の配送料が含まれます。追加の日数は、デバイス 1 台あたり 30 ドルで利用できます。
20 台の Snowball デバイス サービス料金 (1 台あたり 300 ドル) = 6,000 ドル |
---|
R/T 配送 (3~5 日、デバイス 1 台あたり 400 ドル) = 8,000 ドル |
S3 データ出力 ($0.02/GB) = $30,682 |
合計スノーボール手数料 = $38,981.93 |
AWSは、AWSサービスからの読み取りと書き込みに対して、標準のリクエスト、ストレージ、データ転送料金を請求します。
これで、この膨大な量のデータを移行するのにかかる時間とコストがわかりました。タイミングと料金の組み合わせに基づいて、どの方法がニーズを満たすかビジネス上の決定を下してください。
この時点で、オンプレミスまたはコロケーション施設でMinIOを実行するために必要なハードウェアの要件もわかっています。上記の1.5PBのストレージ要件を考慮して、データの増加を予測し、
最初のステップは、S3バケットをMinIOで再作成することです。これは、オブジェクトの移行方法に関係なく行う必要があります。S3とMinIOはどちらもサーバー側の暗号化を使用してオブジェクトを保存しますが、暗号化キーの移行について心配する必要はありません。選択したKMSに接続するには、
オブジェクトをコピーするには、バッチレプリケーションとmc mirror
という複数のオプションがあります。前回のブログ投稿では、
通常、お客様は、当社が作成したツールを AWS Snowball または TD SYNNEX のデータ移行ハードウェアおよびサービスと組み合わせて使用し、大量のデータ (1 PB 以上) を移動します。
MinIO は最近、Western Digital および TD SYNNEX と提携して Snowball の代替品をリリースしました。顧客は、Western Digital ハードウェアの配送スケジュールを設定し、レンタル期間中に必要なものに対して料金を支払うことができます。さらに重要なのは、このサービスは特定のクラウドに縛られていないことです。つまり、企業はこのサービスを使用して、ユビキタスな S3 プロトコルを使用して、クラウド間でデータを移動できます。このサービスの詳細については、
ポリシーやバケットのプロパティを含むバケットのメタデータは、 get-bucket
を使用して読み取ることができます。
特に注意すべき点
オブジェクトの保持、オブジェクトのロック、アーカイブ/階層化などのデータライフサイクル管理に特に注意してください。各バケットでget-bucket-lifecycle-configuration
を実行して、人間が判読できるライフサイクルルールの JSON リストを取得します。MinIO コンソールまたは MinIO クライアント (mc) を使用して、AWS S3 設定を簡単に再作成できます。get get-object-legal-hold
やget-object-lock-configuration
などのコマンドを使用して、特別なセキュリティとガバナンスの処理が必要なオブジェクトを特定します。
ライフサイクルについて話している間に、バックアップと災害復旧について少しお話ししましょう。バックアップと災害復旧のために、レプリケート先となる追加の MinIO クラスターが必要ですか?
オブジェクトがAWS S3からMinIOにコピーされた後、データの整合性を検証することが重要です。これを行う最も簡単な方法は、MinIOクライアントを使用して、S3の古いバケットとMinIOの新しいバケットに対してmc diff
を実行することです。これにより、バケット間の差異が計算され、不足しているオブジェクトまたは異なるオブジェクトのみのリストが返されます。このコマンドは、ソースバケットとターゲットバケットの引数を取ります。便宜上、以下を作成することをお勧めします。
mc diff s3/bucket1 minio/bucket1
素晴らしいことに、既存のアプリを新しい MinIO エンドポイントに向けるだけで済みます。設定は、一定期間にわたってアプリごとに書き換えることができます。オブジェクト ストレージへのデータの移行は、ファイル システムよりも混乱が少なく、新しいクラスターから読み取り/書き込みを行うために URL を変更するだけです。アプリケーションのサポートにこれまで AWS サービスに依存していた場合、それらのサービスはデータ センターに存在しないため、それらをオープン ソースの同等サービスに置き換え、コードを書き直す必要があることに注意してください。たとえば、Athena は Spark SQL、Apache Hive および Presto、Kinesis は Apache Kafka、AWS Glue は Apache Airflow に置き換えることができます。
S3移行が、アプリケーション全体をオンプレミスに移行する大規模な取り組みの一部である場合、おそらく
復帰が完了したら、ストレージ操作、監視、最適化に目を向けましょう。幸いなことに、MinIO では最適化は必要ありません。最適化はソフトウェアに組み込まれているため、ハードウェアの最高のパフォーマンスが得られることがわかります。新しい MinIO クラスターを監視して、リソースの使用率とパフォーマンスを継続的に評価する必要があります。MinIO は、
と
クラウド プロバイダーに白紙の小切手を切る時代は終わったことは周知の事実です。現在、多くの企業がクラウド支出を評価して、潜在的な節約を見つけようとしています。これで、具体的な技術的手順や財務フレームワークなど、AWS S3 から MinIO への移行を開始するために必要なものがすべて揃いました。
帰国費用の節約の可能性にご興味がおありでしたら、ぜひご連絡ください。
ここにも登場します。