genomicsアプリケーション・フレームワークおよびNVIDIA Clara Parabricksのデプロイ

ディープ・ラーニングおよび科学コンピューティングに使用される計算フレーム作業は、特殊なコンピュート・シェイプを必要とする特殊なワークロードです。Oracle Cloud Infrastructure (OCI)には、ベア・メタルから仮想マシン(VM) GPUシェイプまで、様々なオプションが用意されています。NVIDIA GPU Cloud (NGC)は、OCIで使用可能なオプションの一例です。

アーキテクチャ

このリファレンス・アーキテクチャは、ディープ・ラーニングおよび科学コンピューティングに関連する複数のアプリケーションに使用できます。

この例では、NVIDIA Clara Parabricks用です。Clara Parabricksは、ゲノミック・アプリケーションをサポートする計算フレームワークです。GPUベースのソリューションで、ゲノム全体の解析プロセスを高速化します。たとえば、人間の染色体の3億ベースのペアすべてを1時間以内に分析できます。Clara Parabricksは、蛋白質の折りたたみ、蛋白質の位置合わせ、細胞膜輸送のパターンを確立できるため、薬物の研究や発見に役立ちます。

NVIDIA Clara Parabricksには次の機能があります。

  • NVIDIAのCUDA、HPC、AI、およびデータ分析スタックを使用します。
  • C ++およびPython API、参照アプリケーション、およびサード・パーティのアプリケーションやワークフローとの統合により、高性能コンピューティング、ディープ・ラーニングおよびデータ分析ツールをゲノミクスで実現します。
  • Clara Parabricks Toolkitを使用してAI支援ワークフローを開発し、de novo genomeアセンブリのマッピング、位置合わせおよび研磨を最適化します。

この簡単なリファレンスでは、ブロック・ストレージを持つGPUノードは、パブリック・サブネットおよびインターネット・ゲートウェイを持つVCNにデプロイされます。すべてのアプリケーションはブロック・ストレージにあります。

次の図は、この参照アーキテクチャを示しています。

hpc-cloud-guard.pngの説明が続きます
図hpc-cloud-guard.pngの説明

アーキテクチャには、次のコンポーネントがあります。

  • リージョン

    Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。地域は他の地域から独立しており、広大な距離で(国または大陸間で)分離できます。

  • 可用性ドメイン

    可用性ドメインは、リージョン内のスタンドアロンの独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。可用性ドメインは、電源や冷却などのインフラストラクチャや内部可用性ドメイン・ネットワークを共有しません。したがって、ある可用性ドメインで障害が発生しても、リージョン内の他の可用性ドメインに影響する可能性はほとんどありません。

  • フォルト・ドメイン

    フォルト・ドメインは、可用性ドメイン内のハードウェアおよびインフラストラクチャのグループです。各可用性ドメインには、独立した電源とハードウェアを持つフォルト・ドメインが3つあります。リソースを複数のフォルト・ドメインに分散する場合、アプリケーションはフォルト・ドメイン内の物理サーバー障害、システム・メンテナンスおよび電源障害を許容できます。

  • 仮想クラウド・ネットワーク(VCN)およびサブネット

    VCNは、Oracle Cloud Infrastructureリージョンで設定するカスタマイズ可能なソフトウェア定義ネットワークです。従来のデータ・センター・ネットワークと同様に、VCNではネットワーク環境を完全に制御できます。VCNには、VCNの作成後に変更できる複数の重複しないCIDRブロックを含めることができます。VCNは、リージョンまたは可用性ドメインにスコープ指定できるサブネットにセグメント化できます。各サブネットは、VCN内の他のサブネットと重複しない連続したアドレス範囲で構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックまたはプライベートにできます。

  • Cloud Guard

    Oracle Cloud Guardを使用して、Oracle Cloud Infrastructureのリソースのセキュリティを監視および維持できます。Cloud Guardは、定義可能なディテクタ・レシピを使用して、リソースにセキュリティ上の弱点がないかどうかを調べ、オペレータおよびユーザーのリスクのあるアクティビティを監視します。構成の誤りやセキュアでないアクティビティが検出されると、Cloud Guardは修正処理を推奨し、定義可能なレスポンダ・レシピに基づいてそれらの処理の実行を支援します。

  • BM GPU

    ハードウェア高速分析やその他の計算には、ベア・メタルGPUシェイプを使用します。

  • ブロック・ストレージ

    アプリケーションをブロック・ストレージに格納します。

  • インターネット・ゲートウェイ

    インターネット・ゲートウェイでは、VCNのパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。

  • セキュリティ・リスト

    サブネットごとに、サブネット内外で許可する必要があるトラフィックのソース、宛先およびタイプを指定するセキュリティ・ルールを作成できます。

  • ルート表

    仮想ルート表には、通常はゲートウェイを介して、サブネットからVCN外部の宛先にトラフィックをルーティングするルールが含まれます。

推奨事項

実際の要件は、ここで説明するアーキテクチャとは異なる場合があります。開始点として次の推奨事項を使用します。

  • VCN

    VCNを作成する場合、VCNのサブネットにアタッチする予定のリソースの数に基づいて、必要なCIDRブロックの数と各ブロックのサイズを決定します。標準のプライベートIPアドレス空間内にあるCIDRブロックを使用します。

    プライベート接続を設定する予定の他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ内)と重複しないCIDRブロックを選択します。

    VCNを作成した後、CIDRブロックを変更、追加および削除できます。

    サブネットを設計する際には、トラフィック・フローとセキュリティ要件を考慮してください。特定の層またはロール内のすべてのリソースを、セキュリティ境界として機能する同じサブネットにアタッチします。

  • セキュリティ・リスト

    セキュリティ・リストを使用して、サブネット全体に適用されるイングレス・ルールおよびエグレス・ルールを定義します。

  • Cloud Guard

    Oracleが提供するデフォルト・レシピをクローニングおよびカスタマイズして、カスタム検出およびレスポンダ・レシピを作成します。これらのレシピを使用すると、警告を生成するセキュリティ違反のタイプと、それらに対して実行できるアクションを指定できます。たとえば、可視性がパブリックに設定されているオブジェクト・ストレージ・バケットを検出できます。

    Cloud Guardをテナンシ・レベルで適用して、最も広範な範囲をカバーし、複数の構成を維持する管理上の負担を軽減します。

    管理リスト機能を使用して、特定の設定をディテクタに適用することもできます。

  • BM GPU

    最高のパフォーマンスを得るには、ベア・メタル・シェイプのBM.GPU2.2またはBM.GPU3.8を使用します

注意事項

この参照アーキテクチャをデプロイする場合は、次の点を考慮してください。

  • パフォーマンス

    最適なパフォーマンスを得るには、適切な帯域幅を持つ正しいコンピュート・シェイプを選択します。

  • 可用性

    デプロイメント要件およびリージョンに基づいて、高可用性オプションを使用することを検討してください。オプションには、リージョンおよびフォルト・ドメインでの複数の可用性ドメインの使用が含まれます。

  • コスト

    ベア・メタルGPUインスタンスは、より高いコストで必要なCPU電力を提供します。要件を評価して、適切なコンピュート・シェイプを選択します。

  • モニタリングとアラート

    必要に応じてシェイプをスケール・アップまたはスケール・ダウンできるように、ノードのCPUおよびメモリー使用率の監視およびアラートを設定します。

デプロイ

このリファレンス・アーキテクチャのTerraformコードは、GitHubで入手できます。シングルクリックでコードをOracle Cloud Infrastructure Resource Managerにプルし、スタックを作成してデプロイできます。または、Terraform CLIを使用して、GitHubからコンピュータにコードをダウンロードし、コードをカスタマイズし、アーキテクチャをデプロイすることもできます。

  • Oracle Cloud Infrastructure Resource Managerのサンプル・スタックを使用してデプロイします。
    1. Oracle Cloudへのデプロイをクリックます

      まだサインインしていない場合は、テナンシおよびユーザー資格証明を入力します。

    2. 条件をレビューして受け入れます。
    3. スタックをデプロイするリージョンを選択します。
    4. 画面に表示されるプロンプトと指示に従ってスタックを作成します。
    5. スタックの作成後、「Terraformアクション」をクリックし、「プラン」を選択します。
    6. ジョブが完了するまで待機し、計画を確認します。

      変更するには、「スタックの詳細」ページに戻り、「スタックの編集」をクリックして、必要な変更を行います。次に、プラン処理を再度実行します。

    7. これ以上変更が必要ない場合は、「Stack Details」ページに戻り、「Terraform Actions」をクリックして「Apply」を選択します。
  • GitHubでTerraformコードを使用してデプロイします。
    1. GitHubに移動します。
    2. リポジトリをローカル・コンピュータにクローニングまたはダウンロードします。
    3. READMEドキュメントの手順に従います。

詳細情報

このアーキテクチャの機能について詳しく学習します。