PCS でのジョブ管理に Slurm REST API AWS を使用する - AWS PCS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

PCS でのジョブ管理に Slurm REST API AWS を使用する

Slurm REST API の概要

Slurm REST API は、HTTP リクエストを通じてクラスター管理関数へのプログラムによるアクセスを提供します。これらの主要な特性を理解することで、PCS で API AWS を効果的に使用できます。

  • アクセスプロトコル: API は、クラスターのプライベートネットワーク内の通信に HTTP (HTTPS ではなく) を使用します。

  • 接続の詳細: クラスターのプライベート IP アドレスとslurmrestdポート (通常は 6820) を使用して API にアクセスします。完全なベース URL 形式は ですhttp://<privateIpAddress>:6820

  • API バージョニング: API バージョンは Slurm のインストールに対応します。Slurm 25.05 の場合は、バージョン v0.0.43 を使用します。バージョン番号は Slurm リリースごとに変わります。現在サポートされている API バージョンは、Slurm リリースノートに記載されています。

  • URL 構造: Slurm REST API の URL 構造は ですhttp://<privateIpAddress>:<port>/<api-version>/<endpoint>。REST API エンドポイントの使用方法の詳細については、Slurm ドキュメントを参照してください。

前提条件

Slurm REST API を使用する前に、以下を確認してください。

  • クラスター設定: Slurm 25.05 以降と REST API が有効になっている AWS PCS クラスター。

  • 認証: 適切なユーザー ID クレームを持つ有効な JWT トークン。

  • ネットワークアクセス: ポート 6820 を許可するセキュリティグループとのクラスターの VPC 内の接続。

手順

REST API を使用してジョブを送信するには
  1. 必要なパラメータを使用してジョブ送信リクエストを作成します。

    { "job": { "name": "my-job", "partition": "compute", "nodes": 1, "tasks": 1, "script": "#!/bin/bash\necho 'Hello from Slurm REST API'" } }
  2. HTTP POST リクエストを使用してジョブを送信します。

    curl -X POST \ -H "Authorization: Bearer <jwt>" \ -H "Content-Type: application/json" \ -d '<job-json>' \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/submit
  3. モニタリングの目的でレスポンスで返されるジョブ ID を書き留めます。

ジョブのステータスをモニタリングするには
  1. 特定のジョブに関する情報を取得します。

    curl -X GET -H "Authorization: Bearer <jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/<job-id>
  2. 認証されたユーザーのすべてのジョブを一覧表示します。

    curl -X GET -H "Authorization: Bearer <jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/jobs
ジョブをキャンセルする方法
  • DELETE リクエストを送信して、特定のジョブをキャンセルします。

    curl -X DELETE -H "Authorization: Bearer <jwt>" \ https://<privateIpAddress>:6820/slurm/v0.0.43/job/<job-id>