Azure CycleCloud Workspace for Slurm は無料の Marketplace アプリケーションであり、HPC ワークロードと AI ワークロードのコンピューティングリソースとストレージ リソースを管理するためのシンプルで安全でスケーラブルな方法を提供します。 このクイック スタートでは、Azure Marketplace アプリケーションを使用して Slurm 用 CycleCloud ワークスペースをインストールします。
Open OnDemand を含む Slurm 用の CycleCloud ワークスペースをデプロイして構成する主な手順は次のとおりです。
- 開始する前に、次の手順 を確認します。Slurm デプロイ用に CycleCloud ワークスペースを計画します。
- Azure Marketplace を使用して Slurm 環境用の CycleCloud ワークスペースをデプロイします (このクイック スタート)。
- Open OnDemand 認証用に Microsoft Entra ID アプリケーションを登録する: Open OnDemand 用の Microsoft Entra ID アプリケーションを登録します。
- Microsoft Entra ID アプリケーションを使用するように Open OnDemand を構成する: CycleCloud で Open OnDemand を構成する
- CycleCloud でユーザーを追加する: Open OnDemand のユーザーを追加する
[前提条件]
このクイックスタートでは、以下が必要です。
- アクティブなサブスクリプションが含まれる Azure アカウント
- サブスクリプション レベルの 共同作成者 および ユーザー アクセス管理者 ロール
- Open OnDemand をデプロイする必要がある場合は、クラスターで使用される仮想ネットワークへの直接接続 (つまり、Azure Bastion を使用しない)
- Open OnDemand を展開する必要がある場合に Microsoft Entra ID アプリケーションを登録するアクセス許可
デプロイ方法
- Azure portal にサインインします。
- [+ リソースの作成] を選択します。
- [ 検索サービスとマーケットプレース ] ボックスに「 Slurm 」と入力し、 Slurm 用の Azure CycleCloud ワークスペースを選択します。
- [ Slurm 用 Azure CycleCloud ワークスペース] ページで、[ 作成] を選択します。
基本情報
- [Slurm アカウント用の新しい Azure CycleCloud ワークスペース] ページで、次の詳細を入力または選択します。
- サブスクリプション: まだ選択されていない場合は、使用するサブスクリプションを選択します。
- リージョン: Slurm 環境用に CycleCloud ワークスペースをデプロイする Azure リージョンを選択します。
- リソース グループ: Slurm アカウント用の Azure CycleCloud ワークスペースのリソース グループを選択するか、新しく作成します。
- CycleCloud VM サイズ: 新しい VM サイズを選択するか、既定値のままにします。
- 管理者ユーザー: CycleCloud 管理者アカウントの名前とパスワードを入力します。
- 管理者 SSH 公開キー: 管理者アカウントの公開 SSH キーを直接選択するか、Azure の SSH キー リソースに格納されている場合に選択します。
ファイル システム
ユーザーのホーム ディレクトリ - 新規作成
ユーザーのホーム ディレクトリを配置する場所を指定します。
組み込み NFS - スケジューラ VM を、接続されたデータディスクを持つ NFS サーバーとして使用します。
Azure NetApp Files - 指定された容量とサービス レベルで ANF アカウント、プール、ボリュームを作成します。
ユーザーのホーム ディレクトリ - 既存のディレクトリを使用する
既存の NFS マウント ポイントがある場合は、[既存のものを 使用 ] オプションを選択し、マウントする設定を指定します。
補助ファイルシステムのマウント:新規作成
プロジェクト データ用に別のファイル システムをマウントする必要がある場合は、新しいファイル システムを作成するか、既存のファイル システムを指定できます。 新しい Azure NetApp Files ボリュームまたは Azure Managed Lustre ファイルシステムを作成できます。
追加のファイルシステムのマウント - 既存のものを利用する
既存の外部 NFS マウント ポイントまたは Azure Managed Lustre ファイルシステムがある場合は、マウント オプションを指定できます。
ネットワーク
新しい仮想ネットワークとサブネットを作成するか、既存の仮想ネットワークとサブネットを使用するかを指定します。
新しい仮想ネットワークを作成します
- 対象とするコンピューティング ノードの数に対応する CIDR を選択し、ベース IP アドレスを指定します。
- 企業の IT 部門が直接接続を提供していない場合は、Bastion を作成します。
- インターネットへの送信接続を提供する NAT ゲートウェイを作成します。
- Bastion や VPN ゲートウェイなどのサービスを提供できるハブが既にある場合は、既存の仮想ネットワークにピアリングします。 ピアリングされた仮想ネットワークと互換性のあるベース IP アドレスを選択してください。 ピアリングされた仮想ネットワークにゲートウェイがある場合は、[ゲートウェイ転送を 許可する] オプションをオンにします。
既存の仮想ネットワークを使用する
既存の仮想ネットワークを使用する前に、「 Slurm デプロイ用の CycleCloud ワークスペースの計画」の前提条件を確認してください。
ストレージ アカウントで CycleCloud プロジェクトをプライベート DNS ゾーンに格納するために使用されるプライベート エンドポイントの登録を管理する方法を指定します。 新しいプライベート DNS ゾーンを作成するか、既存の DNS ゾーンを使用するか、登録しないことを選択できます。
Slurm の設定
スケジューラと認証ノードの仮想マシンのサイズとイメージを指定します。 イメージは、次の URI を持つ Azure Marketplace の HPC イメージです。
| イメージ名 | URI |
|---|---|
| Alma Linux 8.10 | almalinux:almalinux-hpc:8_10-hpc-gen2:latest |
| Ubuntu 20.04 | microsoft-dsvm:ubuntu-hpc:2004:latest |
| Ubuntu 22.04 | microsoft-dsvm:ubuntu-hpc:2204:latest |
| カスタム イメージ | イメージ URN またはイメージ ID を指定する必要があります |
Custom Imageを選択する場合は、既存のマーケットプレース イメージのイメージ URN または Azure コンピューティング ギャラリー内のイメージのイメージ ID を指定します。
スケジューラ、認証ノード、コンピューティング ノードに同じイメージを使用するには、[ すべてのノードでイメージを使用] を選択します。
最初にプロビジョニングする認証ノードの数と、許可される最大数を指定します。 正常性チェックを有効にすると、ソリューションは HPC パーティションと GPU パーティションのノード正常性チェックを自動的に実行し、異常なノードを削除します。 CycleCloud ポータルでさらに設定を構成する必要がある場合は、クラスターの起動を遅らせることができます。
Slurm ジョブ アカウンティングを有効にするには、チェックボックスをオンにして接続オプションを表示します。 前にデプロイした Azure Database for MySQL フレキシブル サーバー リソースがあることを確認します。
独自の仮想ネットワークを指定する場合は、FQDN またはプライベート IP を使用して接続できます。 デプロイの一部として新しい仮想ネットワークを作成するときに、仮想ネットワーク ピアリングを使用することもできます。 新しい仮想ネットワークを作成する場合は、プライベート エンドポイント経由で接続することもできます。
パーティション設定
Slurm 用の Azure CycleCloud ワークスペースには、次の 3 つの定義された Slurm パーティションが含まれています。
- HTC: 驚異的並列の非 MPI ジョブ用。
- HPC: InfiniBand のサポートの有無にかかわらず、VM の種類をほとんど使用する密結合 MPI ジョブの場合。
- GPU: INFiniBand サポートの有無にかかわらず VM の種類を使用する MPI および非 MPI GPU ジョブの場合。
CycleCloud によって動的に作成される各パーティションのイメージとノードの最大数を設定できます。 スポット インスタンスは HPC ジョブや GPU ジョブには適していないため、スポット インスタンスを使用できるのは、HTC パーティションだけです。
OnDemand を開く
Open OnDemand を使用するには、チェック ボックスをオンにして、次の情報を入力します。
- 画像の名前、
- システムがユーザー名 (
user@contoso.com) を取得し、CycleCloud が認証のために管理するローカル Linux アカウント (user) と照合するために使用するドメイン名 (contoso.com) - Open OnDemand Web サーバーの完全修飾ドメイン名 (FQDN) (プライベート IP を使用する場合は空白のままにします)
- 既存の Microsoft Entra ID アプリケーションを使用するか、後で手動で登録するかを指定します。
Automatically register Entra ID applicationは、CLI デプロイを使用する場合にのみ表示される追加のオプションです。
注
ユーザー認証には、Microsoft Entra ID アプリケーションが必要です。 スクリプトでアプリケーションが作成されない場合は、手動で作成します。 詳細については、「 Open OnDemand の Microsoft Entra ID アプリケーションを登録する方法」を参照してください。
詳細
クラスター コンピューティング ノードと新しいファイル システム リソースの可用性ゾーンを有効にすることができます。 コンピューティング ノードとストレージを同じ可用性ゾーンに配置することで、それらの間の待機時間を最小限に抑えることができます。
Tags
必要なリソースに適切なタグを割り当てます。 CycleCloud は仮想マシンを動的にプロビジョニングし、ノード 配列タグをそれらに適用します。
確認と作成
オプションを確認します。 この手順には、いくつかの検証も含まれています。
検証が完了したら、[ 作成 ] を選択してデプロイを初期化します。
デプロイの状態と手順に従います。
デプロイを確認する
デプロイ時に指定したユーザー名と SSH キーを使用して Bastion を使用して ccw-cyclecloud-vm に接続します。
接続後、cloud-init ログを確認して、すべてが正しいことを確認します。
$tail -f -n 25 /var/log/cloud-init-output.log
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Waiting for Azure.MachineType to be populated...
Starting cluster ccws....
----------------------------
ccws : allocation -> started
----------------------------
Resource group:
Cluster nodes:
scheduler: Off -- --
Total nodes: 1
CC start_cluster successful
/
exiting after install
Cloud-init v. 23.4-7.el8_10.alma.1 running 'modules:final' at Wed, 12 Jun 2024 10:15:53 +0000. Up 11.84 seconds.
Cloud-init v. 23.4-7.el8_10.alma.1 finished at Wed, 12 Jun 2024 10:28:15 +0000. Datasource DataSourceAzure [seed=/dev/sr0]. Up 754.29 seconds
次に、クライアント マシンと CycleCloud VM の間の接続を設定します。 お使いの企業の IT 部門は、VPN、Bastion トンネリング、または会社の許可があればパブリック IP を使って接続を設定するのを支援する必要があるかもしれません。 https://<cyclecloud_ip>を参照して Web インターフェイスにアクセスします。 デプロイ時に指定したユーザー名とパスワードでサインインします。 スケジューラとサインイン ノードの両方が実行されていることを確認します。