Slurm は、AI、HPC、およびクラウド コンピューティングで最も一般的で広く使用されているオープン ソース ワークロード マネージャーの 1 つです。 Slurm を使用すると、一連のコンピューティング ノード間で大規模な並列アプリケーションと分散アプリケーションを実行できます。 ジョブのスケジュール設定、リソース管理、フォールト トレランス、電源管理などの機能が提供されます。 世界トップのスーパーコンピュータ、研究機関、大学、企業の多くがSlurmを使用しています。
ただし、クラウド上の Slurm クラスターの設定と管理は、特にクラウド環境や Slurm 構成に慣れていない場合は、困難で時間がかかる場合があります。 コンピューティング ノードのプロビジョニングとスケーリング、Slurm ソフトウェアのインストールと更新、ネットワークとストレージの構成、クラスターの正常性とパフォーマンスの監視、問題のトラブルシューティングなどのタスクを処理する必要があります。 これらのタスクは、主要な研究やビジネス目標から気を散らし、AI と HPC ワークロードの生産性と効率を低下させることができます。
Slurm 用 Azure CycleCloud ワークスペースは、Azure 上の CycleCloud を使用して定義済みの Slurm クラスターを作成、構成、デプロイするために使用できる Azure Marketplace ソリューション テンプレートです。 テンプレートをデプロイするのに事前のAzureやSlurmの知識は必要ありませんが、環境の運用やカスタマイズにはそれらのスキルが必要です。 このソリューションは、コンテナー化された AI/HPC Slurm ジョブをサポートするために、PMix v4、Pyxis、enroot を使用して Slurm クラスターを事前構成します。 SSHやVisual Studio Codeを使って、Slurmジョブの提出や管理などの一般的な作業を行うために、プロビジョニングされたサインインノードにアクセスできます。
Azure CycleCloud では、これらのタスクの一部を既に実行できますが、AI/HPC インフラストラクチャはデプロイされません。 CycleCloud のインストールと構成、ネットワークとストレージの構成、Slurm クラスターの作成と構成などのタスクに対処する必要があります。 Slurm 用の Azure CycleCloud ワークスペースは、Azure portal から直接、または Azure CLI を使用してデプロイできる Marketplace ソリューション テンプレートでこれらのタスクを実行します。 数日または数週間ではなく、数分で準備が整います。
Azure オーケストレーション オプションを選択
スケジューラーの経験とチームのインフラ管理レベルに基づいて選択肢を選択してください:
| オプション | 最適 | 運用モデル |
|---|---|---|
| Slurm 用 Azure CycleCloud ワークスペース | HPCやAIワークロード向けにすぐに展開できるSlurm環境を求めるチーム | マーケットプレイスのソリューションは、Azureサブスクリプション内にCycleCloud、Slurm、ネットワーク、ストレージ、アクセスコンポーネントを展開します。 |
| Azure CycleCloud | Slurm以外のスケジューラ、カスタムクラスタトポロジー、既存のオンプレミスワークフローとの密接な整合が必要なHPC環境 | CycleCloudをインストールし、スケジューラ、クラスタ、ネットワーク、ストレージを設定します。 CycleCloudはAzureインフラストラクチャのプロビジョニングと自動スケーリングを行います。 |
| Azure Batch | スケジューラソフトウェアの運用を必要としない並列および高スループットのワークロード | Azureはスケジューリングをサービスとして提供しています。 BatchのAPIやツールで構築し、Batchはプール、ノード、ジョブ、タスクを管理します。 |
現在の環境を決める要素として活用してください:
| 開始ポイント | 好む | なぜでしょうか |
|---|---|---|
| Slurmを使いたいなら、あらかじめ定義されたネットワーク、ストレージ、アクセス、クラスタアーキテクチャがあなたの要件を満たしています。 | Slurm の Azure CycleCloud ワークスペース | マーケットプレイスのソリューションは、サブスクリプション内のリソースを維持しつつ、動作するSlurm環境への道を短縮します。 |
| Slurm以外のスケジューラが必要で、トポロジーやスケジューラポリシー、インフラをソリューション設計以外にカスタマイズする必要があります。 | Azure CycleCloud | CycleCloudはスケジューラとクラスタ構成の制御を提供します。 |
| アプリケーションはプール、ジョブ、タスクを使え、スケジューラ互換性は必要ありません。 | Azure Batch | バッチはサービスとしてのスケジューリングを提供し、Slurmの運用を不要にします。 |
管理型プラットフォームサービスを期待しているなら、SlurmでWorkspaceを選ぶ必要はありません。 あなたのチームは、デプロイされたAzureリソース、Slurmの設定、セキュリティ、監視、アップグレード、ワークロード運用を依然として所有しています。 あらかじめ定義されたアーキテクチャが必要なトポロジーや統合を満たさない場合は、カスタムCycleCloudを選択してください。
本番環境導入前に、なぜWorkspace for Slurmが適しているのか、どの代替案を拒否したのか、展開がグリーンフィールドか既存リソースの再利用か、ネットワークとアイデンティティ設計、ストレージベンチマーク、地域のVMクォータと容量、復旧アプローチ、オペレーションオーナー、代表者ごとの時間とコストを記録してください。 まずは展開計画から始めましょう。 カスタムCycleCloudクラスターについては、「 HPCクラスターの計画とサイズ」をご覧ください。
Slurm 用 Azure CycleCloud ワークスペースの利点
Azure CycleCloud は、オンプレミスの AI/HPC ワークロードの一部をリフト アンド シフトしたり、新しいワークロードを構築したりするために、Azure で AI/HPC 環境を構築する場合に最適なソリューションです。 ただし、完全なエンド ツー エンドの AI/HPC 環境を構築するのは簡単な作業ではありません。 ネットワークを設計する方法、共有ファイル システムとして使用するストレージ コンポーネント、ワークロードの実行に使用する VM の種類、およびプロジェクトの提供が複雑になる可能性のある多くの小さな要素を決定する必要があります。
Slurm 用の Azure CycleCloud ワークスペースには、Azure で Slurm ワークロードを実行するユーザーに、次のようないくつかの利点があります。
簡単で高速なクラスター作成: GUI でいくつかの簡単な手順に従うことで、数分で Azure に Slurm クラスターを作成できます。 このプロセスは、Slurm 用の Azure CycleCloud ワークスペースがない過去の数日または数週間の作業よりも高速です。 さまざまな Azure 仮想マシン (VM) のサイズと種類から選択できます。 ノードの数、ネットワーク構成、Azure NetApp Files から Azure Managed Lustre Filesystem へのストレージ オプション、Slurm パラメーターなどのクラスター設定をカスタマイズできます。
柔軟で動的なクラスター管理: Azure CycleCloud は、Slurm クラスターをスケールアップまたはスケールダウンします。 クラスターの状態、パフォーマンス、使用率を監視できます。 GUI でクラスターのログとメトリックを表示できます。 また、不要になった Slurm クラスターを削除し、使用したリソースに対してのみ支払うこともできます。
Slurm 用の Azure CycleCloud ワークスペースを作成するにはどうすればよいですか?
Slurm 用の Azure CycleCloud ワークスペースは、Azure Marketplace から、または Azure CLI を使用してデプロイできます。 Marketplace からデプロイするには、Slurm を検索し、[ 作成] を選択します。 Azure CLI を使用してデプロイするには、最初に入力パラメーター ファイルを作成してから、 az deployment sub create コマンドを使用してデプロイする必要があります。 詳細な手順については、 CLI を使用して CycleCloud Slurm ワークスペース環境をデプロイする方法を参照してください。
Slurm 用の Azure CycleCloud ワークスペースが提供しない機能とは何でしょうか?
Slurm 用の Azure CycleCloud ワークスペースは PaaS サービスではありません。 インフラストラクチャ全体がテナントにデプロイされます。これにより、すべてをデプロイ (グリーンフィールドデプロイ) したり、再利用する既存のリソース (ターゲット リソース グループ、仮想ネットワーク、Azure NetApp Files など) を指定したりできます。
Slurm デプロイ環境用の Azure CycleCloud ワークスペースの外観
Slurm 用の Azure CycleCloud ワークスペースがデプロイする一般的なアーキテクチャを次に示します。 このアーキテクチャには、CycleCloud を実行するための仮想マシン、ユーザー ホーム ディレクトリ用の共有ファイル システム、CycleCloud プロジェクト ストレージ用のストレージ アカウントなどの必須リソースが含まれています。
Slurm 用の Azure CycleCloud ワークスペースは、仮想ネットワークをデプロイすることも、リソースの作成に既存の仮想ネットワークを使用することもできます。 必要に応じて、独自のサブネットに Azure Managed Lustre ファイルシステムを作成できます。
会社のセキュリティ規則でパブリック IP アドレスが許可されていない場合 (多くは許可しない)、ハブ アンド スポーク パターンで既存の仮想ネットワークへの仮想ネットワーク ピアリングを作成できます。 ハブには、仮想ネットワーク ゲートウェイや Azure Bastion など、すべての接続サービスが含まれています。
最後に、パブリック IP と VPN がない環境では、Bastion が必要です。 Bastion を使用すると、CycleCloud Web ポータルに安全にアクセスでき、SSH を使用して認証ノードに接続できます。