Azure でのコンピューター支援エンジニアリング サービス
Azure で、コンピューター支援エンジニアリング (CAE) に、サービスとしてのソフトウェア (SaaS) プラットフォームを提供します。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
ビッグ コンピューティングとも呼ばれるハイ パフォーマンス コンピューティング (HPC) は、多数の CPU または GPU ベースのコンピューターを使用して、複雑な数学的タスクを解決します。
多くの業界では HPC を使用して、最も困難な問題の一部を解決しています。 これらには、以下のようなワークロードがあります。
オンプレミスの HPC システムとクラウドのそれとの主な違いの 1 つは、必要に応じてリソースを動的に追加および削除できることです。 動的スケーリングによって、コンピューター能力がボトルネットになることがなく、お客様はジョブの要件に応じてインフラストラクチャを適切にサイズ調整できます。
次の記事では、この動的スケーリング機能について詳しく説明します。
独自の HPC ソリューションを Azure に実装しようとしている場合は、以下のトピックをご確認ください。
HPC システムの構築に必要なインフラストラクチャ コンポーネントは数多くあります。 どのような方法で HPC ワークロードを管理するとしても、基礎になるコンポーネントを提供するのは、コンピューティング、ストレージ、およびネットワークです。
HPC アーキテクチャを設計して Azure に実装する方法は数多くあります。 HPC アプリケーションは、数千のコンピューティング コアにスケーリングしたり、オンプレミスのクラスターに拡張したり、100% クラウド ネイティブのソリューションとして実行したりできます。
次のシナリオでは、HPC ソリューションを構築する一般的な方法をいくつか説明します。
Azure で、コンピューター支援エンジニアリング (CAE) に、サービスとしてのソフトウェア (SaaS) プラットフォームを提供します。
Azure Batch サービスを使用して、Azure でネイティブ HPC ワークロードを実行します。
Azure では、CPU の負荷が高いワークロードと GPU の負荷が高いワークロードの両方に対して最適化された幅広いサイズが提供されています。
N シリーズ VM は、人工知能 (AI) の学習や視覚化などによりコンピューティングやグラフィック使用量が多いアプリケーションのために設計された NVIDIA GPU を採用しています。
バッチ ワークロードや HPC ワークロードが大規模の場合には、従来のクラウド ファイル システムの容量を上回るデータ ストレージが必要になったり、データ アクセスが発生したりします。 Azure 上の HPC アプリケーションの速度と容量の両方のニーズを管理するソリューションは数多くあります。
Azure での Lustre、GlusterFS、BeeGFS の比較の詳細については、Azure での並列ファイル システムに関する電子ブックおよび Azure での Lustre に関するブログを確認してください。
H16r、H16mr、A8、A9 の VM は、高スループットのバックエンド RDMA ネットワークに接続できます。 このネットワークでは、Microsoft Message Passing Interface (MPI または Intel MPIとして知られています) の下で実行される緊密に結合した並列アプリケーションのパフォーマンスを高めることができます。
Azure で一から HPC システムを構築すると高度な柔軟性が得られますが、多くの場合、メンテナンスに大変な手間がかかります。
Azure に接続する既存のオンプレミス HPC システムがある場合は、作業の開始に役立つさまざまなリソースがあります。
最初に、ドキュメントのオンプレミス ネットワークを Azure に接続するオプションに関する記事を確認してください。 そこから、次の接続オプションに関する追加情報を確認できます:
この参照アーキテクチャでは、サイト間の仮想プライベート ネットワーク (VPN) を使用して、オンプレミス ネットワークを Azure に拡張する方法を示します。
Azure 仮想ネットワークと、 VPN ゲートウェイ フェールオーバー付きの ExpressRoute で接続されたオンプレミス ネットワークをカバーする、可用性が高くセキュアなサイト間ネットワーク アーキテクチャを実装します。
ネットワーク接続が安全に確立されたら、既存のワークロード マネージャーのバースティング機能と共に、オンデマンドでクラウド コンピューティング リソースの使用を開始できます。
Azure Marketplace には、多数のワークロード マネージャーが用意されています。
Azure Batch は、大規模な並列コンピューティングや HPC アプリケーションをクラウドで効率的に実行するためのプラットフォーム サービスです。 大量のコンピューティングを要する作業を仮想マシンの管理されたプールで実行するようにスケジュールを設定し、ジョブのニーズに合わせてコンピューティング リソースを自動的にスケールできます。
SaaS のプロバイダーやデベロッパーは、Batch の SDK とツールを使って、HPC アプリケーションやコンテナー ワークロードを Azure に統合し、Azure にデータをステージングして、ジョブ実行パイプラインを作成できます。
Azure Batch ではクラウド上ですべてのサービスが実行されています。次の図は、Azure Batch でのアーキテクチャの外観を示しています。スケーラビリティとジョブ スケジュールの構成をクラウドで実行し、結果とレポートをオンプレミス環境に送信できます。
Azure CycleCloud は、Azure で任意のスケジューラ (Slurm、Grid Engine、HPC Pack、HTCondor、LSF、PBS Pro、Symphony など) を使用して HPC ワークロードを管理する最も簡単な方法を提供します
CycleCloud では以下を行えます。
このハイブリッドサンプル図では、これらのサービスがクラウドとオンプレミス環境の間でどのように分散されているかを明確に確認できます。 両方のワークロードでジョブを実行する機会があります。
次のクラウド ネイティブ モデルの例の図は、オンプレミス環境への接続を確保しながら、クラウド内のワークロードですべてを処理する方法を示しています。
機能 | Azure Batch | Azure CycleCloud |
---|---|---|
Scheduler | Azure portal (Cloud Native) のバッチ API とツールとコマンド ライン スクリプト。 | Slurm、PBS Pro、LSF、Grid Engine、HTCondor などの標準の HPC スケジューラを使用するか、CycleCloud 自動スケーリング プラグインを拡張して独自のスケジューラを使用します。 |
コンピューティング リソース | サービス としてのソフトウェア ノード – サービスとしてのプラットフォーム | ソフトウェア サービスとしてのプラットフォーム – サービスとしてのプラットフォーム |
監視ツール | Azure Monitor | Azure Monitor、Grafana |
カスタマイズ | カスタム イメージ プール、サード パーティ イメージ、Batch API アクセス。 | 包括的な RESTful API を使用して、機能のカスタマイズと拡張、独自のスケジューラのデプロイ、既存のワークロード マネージャーのサポートを行います。 |
統合 | Synapse Pipelines、Azure Data Factory、Azure CLI | Windows および Linux 用の組み込み CLI |
ユーザー タイプ | 開発者 | 従来の HPC 管理者とユーザー |
作業の種類 | バッチ、ワークフロー | 密結合 (メッセージ パッシング インターフェイス/MPI)。 |
Windows 対応 | はい | スケジューラの選択によって異なります |
Azure のインフラストラクチャで実行できるクラスターおよびワークロード マネージャーの例を次に示します。 Azure VM にスタンドアロンのクラスターを作成するか、オンプレミス クラスターから Azure VM にバーストします。
コンテナーは、一部の HPC ワークロードを管理するためにも使用できます。 Azure Kubernetes Service (AKS) などのサービスを使用すると、マネージド Kubernetes クラスターを Azure 内に簡単にデプロイできます。
Azure での HPC コストの管理は、いくつかの異なる方法を通じて行えます。 Azure の購入オプションを確認して、ご自分の組織にとって最適な方法を見つけてください。
Azure におけるセキュリティのベスト プラクティスの概要については、Azure のセキュリティに関するドキュメントを参照してください。
クラウド バーストに関するセクションで利用できるネットワーク構成のほかに、ハブ/スポーク構成を実装して、コンピューティング リソースを分離することができます:
ハブは、オンプレミス ネットワークへの主要な接続ポイントとして機能する Azure の仮想ネットワーク (VNet) です。 スポークは、ハブに対して配置される VNet であり、ワークロードを分離するために使用されます。
この参照アーキテクチャは、ハブスポーク参照アーキテクチャに基づいて作成されており、すべてのスポークで利用できる共有サービスがハブに含まれます。
Azure ではカスタム HPC アプリケーションや商用 HPC アプリケーションを実行できます。 このセクションのさまざまな例で、VM やコンピューティング コアを追加して効率的にスケールできることが確認されています。 すぐにデプロイ可能なソリューションについては、Azure Marketplace を参照してください。
注意
クラウドで実行するためのライセンスまたはその他の制限事項については、商用アプリケーションのベンダーに確認してください。 すべてのベンダーが従量課金制ライセンスを提供しているとは限りません。 ソリューション用にクラウド内にライセンス サーバーを用意したり、オンプレミスのライセンス サーバーに接続することが必要になる場合があります。
待ち時間とアクセスを最小限に抑え、Azure Virtual Desktop を介してリモートで視覚化するために、HPC 出力と同じリージョンの Azure で GPU を利用して仮想マシンを実行します。
数多くのお客様が、HPC ワークロードに Azure を使用して大きな成功を収めています。 以下では、それらのお客様のケース スタディをいくつかご紹介します。
最新のお知らせについては、次のリソースを参照してください。
以下のチュートリアルでは、Microsoft Batch でのアプリケーションの実行について詳しく説明します。