3D ビデオのレンダリング

Azure Batch
Azure Storage
Azure Virtual Network
Azure 仮想マシン スケール セット

3D ビデオのレンダリングは時間がかかるプロセスで、完了までにかなりの CPU 時間が必要です。 1 台のコンピューターで静的なアセットからビデオ ファイルを生成している場合、作成しているビデオの長さと複雑さよっては、そのプロセスに数時間から、数日かかる場合もあります。 多くの企業は、これらのタスクを実行するために高価なハイエンド デスクトップ コンピューターを購入するか、ジョブを送信できる大規模なレンダリング ファームに投資しています。 しかし、Azure Batch を使用すれば、その能力を必要なときだけ使用して、不要なときはシャットダウンできます。資本投資は必要ありません。

Architecture

Azure Batch を使用したクラウド ネイティブ HPC ソリューションに関与するコンポーネントのアーキテクチャの概要。

このアーキテクチャの Visio ファイルをダウンロードします。

データフロー

このシナリオでは、Azure Batch を使用するワークフローを示します。 データ フローは次のとおりです。

  1. 入力ファイルとそのファイルを処理するアプリケーションを Azure Storage アカウントにアップロードする。
  2. Batch アカウント内のコンピューティング ノードの Batch プール、プールでワークロードを実行するジョブ、およびジョブ内のタスクを作成する。
  3. 入力ファイルとアプリケーションを Batch にダウンロードする。
  4. タスクの実行を監視する。
  5. タスク出力をアップロードする。
  6. 出力ファイルをダウンロードする。

このプロセスを簡略化するために、Maya および 3ds Max 用の Batch プラグインを使用することもできます

Components

Azure Batch は、次の Azure テクノロジに基づいています。

代替

Azure のレンダリング環境をより細かく制御する必要がある場合、またはハイブリッド実装が必要な場合は、CycleCloud コンピューティングがクラウドでの IaaS グリッドの調整に役立ちます。 基盤となる Azure テクノロジとして Azure Batch と同じものを使用すると、IaaS グリッドの作成および維持プロセスを効率化できます。 詳細については、「Azure CycleCloud とは」を参照してください。

Azure で使用できるすべての HPC ソリューションの完全な概要については、「Azure VM を使用した HPC、Batch、および Big Compute ソリューション」を参照してください。

シナリオの詳細

Windows Server と Linux コンピューティングのどちらのノードを選択しても、Batch によって一貫したジョブの管理やスケジュール設定を実行できます。 Batch を使用すると、AutoDesk Maya、Blender など、既存の Windows または Linux アプリケーションを使用して、Azure で大規模なレンダリング ジョブを実行することができます。

考えられるユース ケース

このソリューションは、メディアやエンターテインメント業界に最適です。 その他の関連するユース ケース:

  • 3D モデリング
  • Visual FX (VFX) レンダリング
  • ビデオ コード変換
  • 画像処理、色補正、およびサイズ変更

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

Azure Batch で使用できるマシンのサイズ

レンダリング カスタマーのほとんどが高 CPU パワーのリソースを選択しますが、仮想マシンスケール セットを使用するワークロードでは VM を異なる方法で選択でき、そのワークロードはさまざまな要因に依存します。

  • バインドされたメモリでアプリケーションが実行されているか。
  • アプリケーションが GPU を使用する必要があるか。
  • ジョブの種類が驚異的並列か、または密に結合されたジョブに対する InfiniBand 接続が必要か。
  • コンピューティング ノードでストレージにアクセスするには、高速の I/O が必要です。

Azure では、上記のアプリケーション要件のそれぞれに対処できる広範な VM サイズが必要で、その一部は HPC に固有ですが、最小のサイズを使用して、効果的なグリッド実装を提供することもできます。

  • HPC VM サイズ: CPU バインド型レンダリングの性質があるため、Microsoft では、通常、Azure H シリーズの VM を提案しています。 この種類の VM は、特にハイエンド コンピューティング ニーズ用に構築され、8 および 16 コア vCPU サイズが使用可能で、DDR4 メモリ、SSD 一時ストレージ、および Haswell E5 Intel テクノロジを備えています。
  • GPU VM サイズ: GPU 最適化済み VM サイズは、1 つまたは複数の NVIDIA GPU を備えた、特殊な用途に特化した仮想マシンです。 これらのサイズは、コンピューティング処理やグラフィック処理の負荷が高い視覚化ワークロードを意図して設計されています。
  • NC、NCv2、NCv3、ND の各サイズは、CUDA および OpenCL ベースのアプリケーションやシミュレーション、AI、ディープ ラーニングなどの、コンピューティング集中型およびネットワーク集中型のアプリケーション、アルゴリズム用に最適化されています。 NV サイズは、リモートの視覚化、ストリーミング、ゲーム、エンコード、および OpenGL や DirectX などのフレームワークを使用する VDI シナリオ用に最適化され、設計されています。
  • メモリ最適化 VM サイズ: さらに多くのメモリが必要な場合は、より高いメモリ対 CPU 比率を提供するメモリ最適化 VM サイズを使用します。
  • 汎用 VM サイズ: バランスのとれた CPU 対メモリ比率を提供する汎用 VM サイズを使用することもできます。

可用性

さまざまなサービス、ツール、および API を利用して、Azure Batch のコンポーネントを監視できます。 監視の詳細については、「Batch ソリューションの監視」を参照してください。

スケーラビリティ

Azure Batch アカウント内のプールをスケーリングするには、手動で介入するか、Azure Batch メトリックに基づく数式を使用して自動的に行います。 スケーラビリティの詳細については、Batch プール内のノードをスケーリングするための自動スケーリングの数式の作成に関するページを参照してください。

セキュリティ

セキュリティは、重要なデータやシステムの意図的な攻撃や悪用に対する保証を提供します。 詳細については、「セキュリティの重要な要素の概要」を参照してください。

セキュリティで保護されたソリューションの設計に関する一般的なガイダンスについては、「Azure のセキュリティのドキュメント」を参照してください。

回復性

現在 Azure Batch にはフェールオーバー機能がありません。計画外の停止が発生した場合は、次の手順を使用して、可用性を確保することをお勧めします。

  • 代替ストレージ アカウントを使用して代替の Azure の場所で Azure Batch アカウントを作成します
  • 同じノード プールを、同じ名前で、ノードの割り当てなしで作成します
  • アプリケーションが作成され、代替ストレージ アカウントに更新されていることを確認します
  • 入力ファイルをアップロードし、ジョブを代替 Azure Batch アカウントに送信します

コスト最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

Azure Batch の使用コストは、プールに使用されている VM のサイズと VM が割り当てられ実行されている期間によって異なります。Azure Batch アカウントの作成に関連するコストはありません。 ストレージとデータの送信を追加コストとして考慮する必要があります。

あるジョブを 8 時間実行した場合に発生するコストの例を、サーバー数ごとに次に示します。

  • 100 台の高パフォーマンス CPU VM:コストの見積もり

    100 x H16m (16 コア、225 GB RAM、Premium Storage 512 GB)、2 TB Blob Storage、1 TB 送信

  • 50 台の高パフォーマンス CPU VM:コストの見積もり

    50 x H16m (16 コア、225 GB RAM、Premium Storage 512 GB)、2 TB Blob Storage、1 TB 送信

  • 10 台の高パフォーマンス CPU VM:コストの見積もり

    10 x H16m (16 コア、225 GB RAM、Premium Storage 512 GB)、2 TB Blob Storage、1 TB 送信

優先順位の低い VM の価格

Azure Batch では、ノード プールでの低優先度 VM の使用もサポートされます。これにより、大幅にコストを削減できる可能性があります。 Standard VM と低優先度 VM の価格の比較など詳しくは、「Azure Batch の価格」をごらんく。

注意

低優先度 VM は、特定のアプリケーションとワークロードにのみ適します。

このシナリオのデプロイ

Azure Batch アカウントとプールを手動で作成する

このシナリオでは、ご自身の顧客向けに開発できる Azure Batch ラボを SaaS ソリューションの例として紹介しながら、Azure Batch のしくみを示します。

Azure Batch Labs

コンポーネントをデプロイする

テンプレートによってデプロイされるもの:

  • 新しい Azure Batch アカウント
  • ストレージ アカウント
  • バッチ アカウントに関連付けられているノード プール
  • ノード プールは、A2 v2 VM Canonical Ubuntu イメージを使用するように構成されます
  • ノード プールには最初は VM がなく、VM を追加して手動でスケーリングする必要があります

ソリューションをデプロイするには、下のリンクをクリックします。

Azure にデプロイする

詳しくは、Resource Manager テンプレートに関するページをご覧ください

次のステップ

製品ドキュメント:

Learn モジュール: