Nodes - List Nodes
指定されたプール内の計算ノードを一覧にします。
GET {endpoint}/pools/{poolId}/nodes?api-version=2025-06-01
GET {endpoint}/pools/{poolId}/nodes?api-version=2025-06-01&timeOut={timeOut}&maxresults={maxresults}&$filter={$filter}&$select={$select}
URI パラメーター
| 名前 | / | 必須 | 型 | 説明 |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
Batch アカウント エンドポイント (例: https://batchaccount.eastus2.batch.azure.com)。 |
|
pool
|
path | True |
string |
Compute NodesをリストしたいプールのIDです。 |
|
api-version
|
query | True |
string minLength: 1 |
この操作に使用する API バージョン。 |
|
$filter
|
query |
string |
OData $filter 句。 このフィルターの構築についての詳細は https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-poolを参照してください。 |
|
|
$select
|
query |
string[] |
OData $select 句。 |
|
|
maxresults
|
query |
integer (int32) minimum: 1maximum: 1000 |
応答で返される項目の最大数。 最大1000件の申請書を返送できます。 |
|
|
time
|
query |
integer (int32) |
サーバーが要求の処理に費やすことができる最大時間 (秒単位)。 既定値は 30 秒です。 値が30より大きい場合は、デフォルトが使われます。」 |
要求ヘッダー
| 名前 | 必須 | 型 | 説明 |
|---|---|---|---|
| client-request-id |
string |
呼び出し元によって生成された要求 ID。中かっこなどの装飾のない GUID の形式 (例: 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0)。 |
|
| return-client-request-id |
boolean |
サーバーが応答で client-request-id を返す必要があるかどうか。 |
|
| ocp-date |
string (date-time-rfc7231) |
要求が発行された時刻。 通常、クライアント ライブラリはこれを現在のシステム クロック時間に設定します。REST API を直接呼び出す場合は、明示的に設定します。 |
応答
| 名前 | 型 | 説明 |
|---|---|---|
| 200 OK |
要求は成功しました。 ヘッダー
|
|
| Other Status Codes |
予期しないエラー応答。 |
セキュリティ
OAuth2Auth
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
スコープ
| 名前 | 説明 |
|---|---|
| https://batch.core.windows.net//.default |
例
Node list
要求のサンプル
GET {endpoint}/pools/poolId/nodes?api-version=2025-06-01
応答のサンプル
{
"value": [
{
"id": "tvm-1695681911_1-20161122t193202z",
"url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_1-20161122t193202z",
"state": "idle",
"schedulingState": "enabled",
"stateTransitionTime": "2025-11-22T22:22:27.2236818Z",
"lastBootTime": "2025-11-22T22:22:24.4634125Z",
"allocationTime": "2025-11-22T19:32:02.8155319Z",
"ipAddress": "1.1.1.1",
"ipv6Address": "1.1.1.1",
"affinityId": "TVM:tvm-1695681911_1-20161122t193202z",
"vmSize": "Standard_D2_v5",
"totalTasksRun": 0,
"totalTasksSucceeded": 0,
"runningTasksCount": 0,
"runningTaskSlotsCount": 0,
"isDedicated": true,
"startTask": {
"commandLine": "cmd /c echo hello",
"userIdentity": {
"autoUser": {
"scope": "task",
"elevationLevel": "nonadmin"
}
},
"maxTaskRetryCount": 0,
"waitForSuccess": false
},
"virtualMachineInfo": {
"imageReference": {
"publisher": "Canonical",
"offer": "ubuntu-24_04-lts",
"sku": "server",
"version": "latest",
"exactVersion": "latest"
}
},
"startTaskInfo": {
"state": "completed",
"startTime": "2025-11-22T22:22:27.2236818Z",
"endTime": "2025-11-22T22:22:27.567189Z",
"exitCode": 0,
"retryCount": 0
},
"nodeAgentInfo": {
"version": "1.2.0.0",
"lastUpdateTime": "2025-11-22T22:22:24.4634125Z"
}
},
{
"id": "tvm-1695681911_2-20161122t193202z",
"url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_2-20161122t193202z",
"state": "idle",
"schedulingState": "enabled",
"stateTransitionTime": "2025-11-22T19:37:31.4285526Z",
"lastBootTime": "2025-11-22T19:37:28.623369Z",
"allocationTime": "2025-11-22T19:32:02.8155319Z",
"ipAddress": "1.1.1.1",
"ipv6Address": "1.1.1.1",
"affinityId": "TVM:tvm-1695681911_2-20161122t193202z",
"vmSize": "Standard_D2_v5",
"totalTasksRun": 0,
"totalTasksSucceeded": 0,
"runningTasksCount": 0,
"runningTaskSlotsCount": 0,
"isDedicated": true,
"startTask": {
"commandLine": "cmd /c echo hello",
"userIdentity": {
"autoUser": {
"scope": "task",
"elevationLevel": "nonadmin"
}
},
"maxTaskRetryCount": 0,
"waitForSuccess": false
},
"virtualMachineInfo": {
"imageReference": {
"publisher": "Canonical",
"offer": "ubuntu-24_04-lts",
"sku": "server",
"version": "latest",
"exactVersion": "latest"
}
},
"startTaskInfo": {
"state": "completed",
"startTime": "2025-11-22T19:37:31.4285526Z",
"endTime": "2025-11-22T19:37:31.838028Z",
"exitCode": 0,
"retryCount": 0
},
"nodeAgentInfo": {
"version": "1.2.0.0",
"lastUpdateTime": "2025-11-22T22:22:24.4634125Z"
}
},
{
"id": "tvm-1695681911_3-20161122t193202z",
"url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_3-20161122t193202z",
"state": "idle",
"schedulingState": "enabled",
"stateTransitionTime": "2025-11-22T19:36:51.0013378Z",
"lastBootTime": "2025-11-22T19:36:48.21721Z",
"allocationTime": "2025-11-22T19:32:02.8155319Z",
"ipAddress": "1.1.1.1",
"ipv6Address": "1.1.1.1",
"affinityId": "TVM:tvm-1695681911_3-20161122t193202z",
"vmSize": "Standard_D2_v5",
"totalTasksRun": 0,
"totalTasksSucceeded": 0,
"runningTasksCount": 0,
"runningTaskSlotsCount": 0,
"isDedicated": true,
"startTask": {
"commandLine": "cmd /c echo hello",
"userIdentity": {
"autoUser": {
"scope": "task",
"elevationLevel": "nonadmin"
}
},
"maxTaskRetryCount": 0,
"waitForSuccess": false
},
"virtualMachineInfo": {
"imageReference": {
"publisher": "Canonical",
"offer": "ubuntu-24_04-lts",
"sku": "server",
"version": "latest",
"exactVersion": "latest"
}
},
"startTaskInfo": {
"state": "completed",
"startTime": "2025-11-22T19:36:51.0013378Z",
"endTime": "2025-11-22T19:36:51.2363447Z",
"exitCode": 0,
"retryCount": 0
},
"nodeAgentInfo": {
"version": "1.2.0.0",
"lastUpdateTime": "2025-11-22T22:22:24.4634125Z"
}
}
]
}
定義
| 名前 | 説明 |
|---|---|
|
Auto |
AutoUserScopeの列挙 |
|
Auto |
Azure Batch タスクを実行する自動ユーザーのオプションを指定します。 |
|
Batch |
Azure Batch サービスから受信したエラー応答。 |
|
Batch |
Azure Batch エラー応答に含まれる追加情報の項目。 |
|
Batch |
Azure Batch エラー応答で受信したエラー メッセージ。 |
|
Batch |
BatchErrorSourceCategory の列挙 |
|
Batch |
Batch サービスのコンピューティング ノード。 |
|
Batch |
Batch コンピューティング ノード エージェントは、プール内の各コンピューティング ノードで実行され、コンピューティング ノードで Batch 機能を提供するプログラムです。 |
|
Batch |
コンピューティング ノードのエンドポイント構成。 |
|
Batch |
コンピューティング ノードで発生したエラー。 |
|
Batch |
コンピューティング ノードが使用する Batch プールに関連付けられているユーザー割り当て ID への参照。 |
|
Batch |
プール内のコンピューティング ノードを一覧表示した結果。 |
|
Batch |
BatchNodeState 列挙 |
|
Batch |
Batch は、ノードで復旧操作がトリガーされたときにタスクを再試行します。 復旧操作の例としては、異常なノードが再起動されたときや、ホスト障害が原因でコンピューティング ノードが消えた場合などです (ただし、これらに限定されません)。 回復操作による再試行は独立しており、maxTaskRetryCount に対してカウントされません。 maxTaskRetryCount が 0 の場合でも、復旧操作による内部再試行が発生する可能性があります。 このため、すべてのタスクはべき等である必要があります。 つまり、タスクは、破損やデータの重複を引き起こさずに中断および再起動されることを許容する必要があります。 実行時間の長いタスクのベスト プラクティスは、何らかの形式のチェックポイント処理を使用することです。 場合によっては、コンピューティング ノードが再起動されなかった場合でも、StartTask が再実行されることがあります。 中断プロセスを作成したり、StartTask 作業ディレクトリからサービスをインストール/起動したりする StartTask を回避するには、特別な注意が必要です。これにより、Batch で StartTask を再実行できなくなるためです。 |
|
Batch |
コンピューティング ノードで実行されている StartTask に関する情報。 |
|
Batch |
BatchStartTaskState 列挙 |
|
Batch |
タスクが実行されているコンテナーに関する情報を格納します。 |
|
Batch |
タスクのコンテナー設定。 |
|
Batch |
タスクの実行に関する情報。 |
|
Batch |
BatchTaskExecutionResultの列挙 |
|
Batch |
タスクの失敗に関する情報。 |
|
Batch |
コンピューティング ノードで実行されているタスクに関する情報。 |
|
Batch |
バッチタスクステートの列挙式 |
|
Batch |
Azure Virtual Machines Marketplace イメージまたは Azure コンピューティング ギャラリー イメージへの参照。 Azure Batch によって検証されたすべての Azure Marketplace イメージ参照の一覧を取得するには、「サポートされているイメージの一覧表示」操作を参照してください。 |
|
Container |
タスク コンテナーにマウントするパスとマウント モードのエントリ。 |
|
Container |
コンテナー タスクのコンテナーにマウントされるパス。 |
|
Container |
プライベート コンテナー レジストリ。 |
|
Container |
ContainerWorkingDirectory 列挙 |
|
Elevation |
ElevationLevel 列挙 |
|
Environment |
タスク プロセスで設定する環境変数。 |
|
Inbound |
コンピューティング ノード上の受信エンドポイント。 |
|
Inbound |
InboundEndpointProtocol は列挙式です |
|
Name |
名前と値のペアを表します。 |
|
Resource |
コンピューティング ノードにダウンロードする 1 つのファイルまたは複数のファイル。 |
|
Scheduling |
スケジュリングStateの列挙 |
|
User |
タスクを実行するユーザー ID の定義。 userName プロパティまたは autoUser プロパティを指定しますが、両方を指定することはできません。 |
|
Virtual |
仮想マシンの現在の状態に関する情報。 |
AutoUserScope
AutoUserScopeの列挙
| 値 | 説明 |
|---|---|
| task |
サービスがタスクのために新しいユーザーを作成することを指定します。 |
| pool |
タスクがプール内の各コンピュートノードで作成される共通自動ユーザーアカウントとして実行されることを指定します。 |
AutoUserSpecification
Azure Batch タスクを実行する自動ユーザーのオプションを指定します。
| 名前 | 型 | 説明 |
|---|---|---|
| elevationLevel |
自動ユーザーの昇格レベル。 既定値は nonAdmin です。 |
|
| scope |
自動ユーザーのスコープ。 既定値は pool です。 プールが Windows を実行している場合は、タスク間のより厳密な分離が必要な場合は、Task の値を指定する必要があります。 たとえば、タスクが他のタスクに影響を与える可能性のある方法でレジストリを変更する場合などです。 |
BatchError
Azure Batch サービスから受信したエラー応答。
| 名前 | 型 | 説明 |
|---|---|---|
| code |
string |
エラーの識別子。 コードは不変であり、プログラムで使用することを目的としています。 |
| message |
ユーザー インターフェイスでの表示に適したエラーを説明するメッセージ。 |
|
| values |
エラーに関する追加の詳細を含むキーと値のペアのコレクション。 |
BatchErrorDetail
Azure Batch エラー応答に含まれる追加情報の項目。
| 名前 | 型 | 説明 |
|---|---|---|
| key |
string |
Value プロパティの意味を指定する識別子。 |
| value |
string |
エラー応答に含まれる追加情報。 |
BatchErrorMessage
Azure Batch エラー応答で受信したエラー メッセージ。
| 名前 | 型 | 説明 |
|---|---|---|
| lang |
string |
エラーメッセージの言語コード。 |
| value |
string |
メッセージのテキスト。 |
BatchErrorSourceCategory
BatchErrorSourceCategory の列挙
| 値 | 説明 |
|---|---|
| usererror |
このエラーはユーザーの問題、例えば設定ミスが原因です。 |
| servererror |
このエラーは内部サーバーの問題によるものです。 |
BatchNode
Batch サービスのコンピューティング ノード。
| 名前 | 型 | 説明 |
|---|---|---|
| affinityId |
string |
タスクを追加して、このコンピューティング ノードでタスクをスケジュールするように要求するときに渡すことができる識別子。 これは単なるソフト アフィニティであることに注意してください。 タスクがスケジュールされている時点でターゲットのコンピューティング ノードがビジー状態または使用できない場合、タスクは別の場所でスケジュールされます。 |
| allocationTime |
string (date-time) |
このコンピューティング ノードがプールに割り当てられた時刻。 これは、コンピューティング ノードが最初に割り当てられ、設定後に変更されない時刻です。 コンピューティング ノードがサービスの回復または割り込み時に更新されません。 |
| endpointConfiguration |
コンピューティング ノードのエンドポイント構成。 |
|
| errors |
コンピューティング ノードで現在発生しているエラーの一覧。 |
|
| id |
string |
コンピューティング ノードの ID。 プールに追加されるすべてのコンピューティング ノードには、一意の ID が割り当てられます。 コンピューティング ノードがプールから削除されるたびに、そのローカル ファイルがすべて削除され、ID が再利用され、新しいコンピューティング ノードに再利用できます。 |
| ipAddress |
string |
他のノードがこのコンピューティング ノードとの通信に使用できる IP アドレス。 プールに追加されるすべてのコンピューティング ノードには、一意の IP アドレスが割り当てられます。 コンピューティング ノードがプールから削除されるたびに、そのすべてのローカル ファイルが削除され、IP アドレスが再利用され、新しいコンピューティング ノードに再利用できます。 |
| ipv6Address |
string |
他のノードがこのコンピュートノードとの通信に使用できるIPv6アドレス。 プールに追加されるすべてのコンピューティング ノードには、一意の IP アドレスが割り当てられます。 コンピューティング ノードがプールから削除されるたびに、そのすべてのローカル ファイルが削除され、IP アドレスが再利用され、新しいコンピューティング ノードに再利用できます。 プールが IPv6 用に構成されていない場合、このプロパティは存在しません。 |
| isDedicated |
boolean |
このコンピューティング ノードが専用のコンピューティング ノードであるかどうか。 false の場合、コンピューティング ノードはスポット/優先順位の低いコンピューティング ノードです。 |
| lastBootTime |
string (date-time) |
コンピューティング ノードが最後に開始された時刻。 コンピューティング ノードの状態が使用できない場合は、このプロパティが存在しない可能性があります。 |
| nodeAgentInfo |
コンピューティング ノード エージェントのバージョンと、コンピューティング ノードが新しいバージョンにアップグレードされた時刻に関する情報。 |
|
| recentTasks |
状態が最近変更されたタスクの一覧。 このプロパティは、プールに割り当てられた後、このコンピューティング ノードで少なくとも 1 つのタスクが実行されている場合にのみ存在します。 |
|
| runningTaskSlotsCount |
integer (int32) |
コンピューティング ノードで現在実行中のジョブ タスクによって使用されるスケジュール スロットの合計数。 これには、ジョブ マネージャー タスクと通常のタスクが含まれますが、ジョブの準備、ジョブの解放、または開始タスクは含まれません。 |
| runningTasksCount |
integer (int32) |
コンピューティング ノードで現在実行中のジョブ タスクの合計数。 これには、ジョブ マネージャー タスクと通常のタスクが含まれますが、ジョブの準備、ジョブの解放、または開始タスクは含まれません。 |
| schedulingState |
コンピューティング ノードがタスクのスケジュール設定に使用できるかどうかを示します。 |
|
| startTask |
プールに参加するコンピューティング ノードで実行するように指定されたタスク。 |
|
| startTaskInfo |
コンピューティング ノードでの StartTask の実行に関するランタイム情報。 |
|
| state |
コンピューティング ノードの現在の状態。 |
|
| stateTransitionTime |
string (date-time) |
コンピューティング ノードが現在の状態になった時刻。 |
| totalTasksRun |
integer (int32) |
コンピューティング ノードで完了したジョブ タスクの合計数。 これには、ジョブ マネージャー タスクと通常のタスクが含まれますが、ジョブの準備、ジョブの解放、または開始タスクは含まれません。 |
| totalTasksSucceeded |
integer (int32) |
コンピューティング ノードで (exitCode 0 を使用して) 正常に完了したジョブ タスクの合計数。 これには、ジョブ マネージャー タスクと通常のタスクが含まれますが、ジョブの準備、ジョブの解放、または開始タスクは含まれません。 |
| url |
string (uri) |
コンピューティング ノードの URL。 |
| virtualMachineInfo |
仮想マシンの現在の状態に関する情報。 |
|
| vmSize |
string |
コンピューティング ノードをホストしている仮想マシンのサイズ。 プールで使用可能な仮想マシンのサイズについては、「Azure Batch プールのコンピューティング ノードの VM サイズの選択 (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)」を参照してください。 |
BatchNodeAgentInfo
Batch コンピューティング ノード エージェントは、プール内の各コンピューティング ノードで実行され、コンピューティング ノードで Batch 機能を提供するプログラムです。
| 名前 | 型 | 説明 |
|---|---|---|
| lastUpdateTime |
string (date-time) |
コンピュートノードエージェントがコンピュートノード上で更新された時間。 これはCompute Nodeエージェントが新しいバージョンに更新された最新の回です。 |
| version |
string |
Compute Node上で動作するバッチ計算ノードエージェントのバージョン。 このバージョン番号は、 https://github.com/Azure/Batch/blob/master/changelogs/nodeagent/CHANGELOG.mdにあるCompute Nodeエージェントのリリースノートと照合できます。 |
BatchNodeEndpointConfiguration
コンピューティング ノードのエンドポイント構成。
| 名前 | 型 | 説明 |
|---|---|---|
| inboundEndpoints |
Compute Node上でアクセス可能なインバウンドエンドポイントのリスト。 |
BatchNodeError
コンピューティング ノードで発生したエラー。
| 名前 | 型 | 説明 |
|---|---|---|
| code |
string |
Compute Nodeエラーの識別子です。 コードは不変であり、プログラムで使用することを目的としています。 |
| errorDetails |
Compute Nodeエラーに関連する追加のエラー詳細のリスト。 |
|
| message |
string |
Compute Nodeエラーを説明するメッセージで、ユーザーインターフェースでの表示に適したものを意図しています。 |
BatchNodeIdentityReference
コンピューティング ノードが使用する Batch プールに関連付けられているユーザー割り当て ID への参照。
| 名前 | 型 | 説明 |
|---|---|---|
| resourceId |
string (arm-id) |
ユーザー割り当て ID の ARM リソース ID。 |
BatchNodeListResult
プール内のコンピューティング ノードを一覧表示した結果。
| 名前 | 型 | 説明 |
|---|---|---|
| odata.nextLink |
string (uri) |
次の結果セットを取得するための URL。 |
| value |
計算ノードのリスト。 |
BatchNodeState
BatchNodeState 列挙
| 値 | 説明 |
|---|---|
| idle |
コンピュートノードは現在タスクを実行していません。 |
| rebooting |
コンピュートノードが再起動中です。 |
| reimaging |
コンピュートノードは再イメージ化中です。 |
| running |
コンピュートノードは1つ以上のタスク(StartTaskを除く)を実行しています。 |
| unusable |
エラーのため、Compute Nodeはタスク実行に使用できません。 |
| creating |
バッチサービスはAzure Computeから基盤となる仮想マシンを取得しましたが、まだプールへの参加は開始されていません。 |
| starting |
バッチサービスは基盤となる仮想マシン上で開始されます。 |
| waitingforstarttask |
StartTaskはComputeノード上で動作を開始しましたが、waitForSuccessが設定されており、StartTaskはまだ完了していません。 |
| starttaskfailed |
StartTaskはCompute Nodeで失敗し(すべての再試行を使い果たし)、waitForSuccessが設定されています。 Compute Nodeはタスクの実行には使えません。 |
| unknown |
バッチサービスはコンピュートノードとの連絡を失い、その真の状態を把握していません。 |
| leavingpool |
Compute Nodeは、ユーザーが明示的に削除したか、Poolがリサイズまたは自動縮小しているため、Poolから離れていきます。 |
| offline |
コンピュートノードは現在タスクを実行しておらず、新しいタスクのスケジューリングは無効になっています。 |
| preempted |
スポット/低優先度のコンピューティング ノードが割り込まれています。 コンピューティング ノードが割り込まれたときにコンピューティング ノードで実行されていたタスクは、別のコンピューティング ノードが使用可能になったときに再スケジュールされます。 |
| upgradingos |
コンピュートノードはOSアップグレード作業中です。 |
| deallocated |
コンピュートノードはデロケーションされています。 |
| deallocating |
コンピュートノードはデロロケーション中です。 |
BatchStartTask
Batch は、ノードで復旧操作がトリガーされたときにタスクを再試行します。 復旧操作の例としては、異常なノードが再起動されたときや、ホスト障害が原因でコンピューティング ノードが消えた場合などです (ただし、これらに限定されません)。 回復操作による再試行は独立しており、maxTaskRetryCount に対してカウントされません。 maxTaskRetryCount が 0 の場合でも、復旧操作による内部再試行が発生する可能性があります。 このため、すべてのタスクはべき等である必要があります。 つまり、タスクは、破損やデータの重複を引き起こさずに中断および再起動されることを許容する必要があります。 実行時間の長いタスクのベスト プラクティスは、何らかの形式のチェックポイント処理を使用することです。 場合によっては、コンピューティング ノードが再起動されなかった場合でも、StartTask が再実行されることがあります。 中断プロセスを作成したり、StartTask 作業ディレクトリからサービスをインストール/起動したりする StartTask を回避するには、特別な注意が必要です。これにより、Batch で StartTask を再実行できなくなるためです。
| 名前 | 型 | 説明 |
|---|---|---|
| commandLine |
string |
StartTask のコマンド ライン。 コマンド ラインはシェルでは実行されないため、環境変数の拡張などのシェル機能を利用することはできません。 このような機能を利用する場合は、コマンド ラインでシェルを呼び出す必要があります。たとえば、Windows では "cmd /c MyCommand" を使用し、Linux では "/bin/sh -c MyCommand" を使用します。 コマンド ラインがファイル パスを参照している場合は、相対パス (Task 作業ディレクトリに対する相対パス) を使用するか、Batch で指定された環境変数 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables) を使用する必要があります。 |
| containerSettings |
StartTaskが動作するコンテナの設定。 これが指定されると、ノード上のAzure BatchディレクトリのルートであるAZ_BATCH_NODE_ROOT_DIRより下のすべてのディレクトリが再帰的にコンテナにマッピングされ、すべてのタスク環境変数がコンテナにマッピングされ、タスクコマンドラインがコンテナ内で実行されます。 AZ_BATCH_NODE_ROOT_DIR以外のコンテナで生成されたファイルはホストディスクに反映されない可能性があり、バッチファイルのAPIはそれらのファイルにアクセスできません。 |
|
| environmentSettings |
StartTask の環境変数設定の一覧。 |
|
| maxTaskRetryCount |
integer (int32) |
タスクを再試行できる最大回数。 終了コードが 0 以外の場合、Batch サービスはタスクを再試行します。 この値は、再試行回数を特に制御します。 Batch サービスはタスクを 1 回試し、この制限まで再試行できます。 たとえば、最大再試行回数が 3 の場合、Batch はタスクを最大 4 回試行します (1 回の最初の再試行と 3 回の再試行)。 最大再試行回数が 0 の場合、Batch サービスはタスクを再試行しません。 最大再試行回数が -1 の場合、Batch サービスは制限なくタスクを再試行しますが、これは開始タスクまたはタスクには推奨されません。 既定値は 0 (再試行なし) です。 |
| resourceFiles |
コマンド ラインを実行する前に Batch サービスがコンピューティング ノードにダウンロードするファイルの一覧。 リソース ファイルの一覧には最大サイズがあります。 最大サイズを超えると、要求は失敗し、応答エラー コードは RequestEntityTooLarge になります。 この場合、ResourceFiles のコレクションのサイズを小さくする必要があります。 これは、.zip ファイル、アプリケーション パッケージ、または Docker コンテナーを使用して実現できます。 この要素の下に一覧表示されるファイルは、タスクの作業ディレクトリにあります。 |
|
| userIdentity |
StartTaskが動作するユーザーIDです。 省略すると、タスクはタスク固有の非管理者ユーザーとして動作します。 |
|
| waitForSuccess |
boolean |
コンピューティング ノードでタスクをスケジュールする前に、Batch サービスが StartTask が正常に完了するまで (つまり、終了コード 0 で終了する) のを待つ必要があるかどうか。 True で、ノードで StartTask が失敗した場合、Batch サービスは StartTask を最大再試行回数 (maxTaskRetryCount) まで再試行します。 すべての再試行の後もタスクが正常に完了していない場合、Batch サービスはノードを使用不可としてマークし、タスクをスケジュールしません。 この状態は、コンピューティング ノードの状態とエラー情報の詳細を使用して検出できます。 false の場合、Batch サービスは StartTask の完了を待機しません。 この場合、StartTask がまだ実行されている間に、コンピューティング ノードで他のタスクの実行を開始できます。StartTask が失敗した場合でも、新しいタスクはコンピューティング ノードで引き続きスケジュールされます。 既定値は true です。 |
BatchStartTaskInfo
コンピューティング ノードで実行されている StartTask に関する情報。
| 名前 | 型 | 説明 |
|---|---|---|
| containerInfo |
タスクが実行されているコンテナに関する情報。 このプロパティは、タスクがコンテナコンテキストで実行される場合にのみ設定されます。 |
|
| endTime |
string (date-time) |
StartTaskが停止した時刻。 これは、StartTaskの直近実行が完了した場合(失敗して再試行が保留中であっても)終了時刻です。 この要素は、StartTaskが現在実行されている場合は存在しません。 |
| exitCode |
integer (int32) |
StartTaskコマンドラインで指定されたプログラムの終了コード。 このプロパティは、StartTaskが完了状態にある場合にのみ設定されます。 一般的に、プロセスの終了コードは、そのプロセスに対してアプリケーション開発者が実装した特定の慣習を反映しています。 コード内で判定に出口コードの値を使う場合は、アプリケーションプロセスで使われる出口コードの規則を必ず把握してください。 しかし、バッチサービスがStartTaskを終了した場合(タイムアウトやAPIによるユーザー終了により)、OSが定義した終了コードが表示されることがあります。 |
| failureInfo |
タスクの失敗に関する情報(あれば)も含まれます。 このプロパティは、タスクが完了状態にあり、失敗が発生した場合のみ設定されます。 |
|
| lastRetryTime |
string (date-time) |
タスクの再挑戦が始まった直近の時です。 この要素はタスクが再試行された場合(すなわちretryCountがゼロでない場合)のみ存在します。 もし存在する場合、これは通常startTimeと同じですが、タスクが再試行以外の理由で再起動された場合は異なる場合があります。例えば、リトライ中にコンピュートノードが再起動された場合、startTimeは更新されますがlastRetryTimeは更新されません。 |
| result |
タスク実行の結果です。 値が「失敗」の場合、失敗の詳細はfailureInfoプロパティで確認できます。 |
|
| retryCount |
integer (int32) |
タスクがバッチサービスによって再試された回数。 タスクアプリケーション失敗(ゼロでない終了コード)は再試され、前処理エラー(タスクが実行できなかった)やファイルアップロードエラーは再試されません。 バッチサービスは制約で指定された制限までタスクを再試行します。 |
| startTime |
string (date-time) |
StartTaskが実行を開始した時刻。 この値は、タスクが再起動または再試行されるたびにリセットされます(つまり、StartTaskが実行を開始した直近の時刻です)。 |
| state |
計算ノード上のStartTaskの状態。 |
BatchStartTaskState
BatchStartTaskState 列挙
| 値 | 説明 |
|---|---|
| running |
StartTaskは現在稼働中です。 |
| completed |
StartTaskが終了コード0で終了した場合、失敗して再試行の制限に達した場合、またはStartTaskプロセスがTask Processingエラー(リソースファイルのダウンロード失敗など)により実行されなかった場合などです。 |
BatchTaskContainerExecutionInfo
タスクが実行されているコンテナーに関する情報を格納します。
| 名前 | 型 | 説明 |
|---|---|---|
| containerId |
string |
コンテナーの ID。 |
| error |
string |
コンテナに関する詳細なエラー情報。 これは、もし利用可能な場合、Dockerサービスからの詳細なエラー文字列です。 これは「docker inspect」で返されるエラーフィールドと同等です。 |
| state |
string |
コンテナの状態。 これはDockerサービスによるコンテナの状態です。 これは「docker inspect」で返されるステータスフィールドと同等です。 |
BatchTaskContainerSettings
タスクのコンテナー設定。
| 名前 | 型 | 説明 |
|---|---|---|
| containerHostBatchBindMounts |
コンテナー タスクにマウントするパス。 この配列が null または存在しない場合、コンテナー タスクは一時ディスク ドライブ全体を Windows (または Linux では AZ_BATCH_NODE_ROOT_DIR) にマウントします。 この配列が空として設定されている場合、データ パスはコンテナーにマウントされません。 |
|
| containerRunOptions |
string |
コンテナー作成コマンドの追加オプション。 これらの追加オプションは、Batch サービスによって制御されるオプションに加えて、"docker create" コマンドの引数として提供されます。 |
| imageName |
string |
タスクを実行するコンテナを作成するために使うイメージ。 これは「docker pull」で指定される完全なイメージ参照です。 画像名にタグが記載されていない場合は、デフォルトとして「:latest」タグが使われます。 |
| registry |
コンテナイメージを含むプライベートレジストリです。 この設定はプール作成時にすでに提供されていた場合は省略しても構いません。 |
|
| workingDirectory |
コンテナタスクワーキングディレクトリの場所。 既定値は 'taskWorkingDirectory' です。 |
BatchTaskExecutionInfo
タスクの実行に関する情報。
| 名前 | 型 | 説明 |
|---|---|---|
| containerInfo |
タスクが実行されているコンテナに関する情報。 このプロパティは、タスクがコンテナコンテキストで実行される場合にのみ設定されます。 |
|
| endTime |
string (date-time) |
タスクが完了した時刻。 このプロパティはタスクが完了状態にある場合にのみ設定されます。 |
| exitCode |
integer (int32) |
タスクコマンドラインで指定されたプログラムの終了コード。 このプロパティはタスクが完了状態にある場合にのみ設定されます。 一般的に、プロセスの終了コードは、そのプロセスに対してアプリケーション開発者が実装した特定の慣習を反映しています。 コード内で判定に出口コードの値を使う場合は、アプリケーションプロセスで使われる出口コードの規則を必ず把握してください。 しかし、バッチサービスがタイムアウトやAPIによるユーザー終了によりタスクを終了すると、OSが定義した終了コードが表示されることがあります。 |
| failureInfo |
タスクの失敗に関する情報(あれば)も含まれます。 このプロパティは、タスクが完了状態にあり、失敗が発生した場合のみ設定されます。 |
|
| lastRequeueTime |
string (date-time) |
ユーザーのリクエストの結果としてバッチサービスによってタスクが再キューされた直近の時刻。 このプロパティはrequeueCountがゼロでない場合のみ設定されます。 |
| lastRetryTime |
string (date-time) |
タスクの再挑戦が始まった直近の時です。 この要素はタスクが再試行された場合(すなわちretryCountがゼロでない場合)のみ存在します。 もし存在する場合、これは通常startTimeと同じですが、タスクが再試行以外の理由で再起動された場合は異なる場合があります。例えば、リトライ中にコンピュートノードが再起動された場合、startTimeは更新されますがlastRetryTimeは更新されません。 |
| requeueCount |
integer (int32) |
タスクがユーザーのリクエストの結果としてバッチサービスによって再キューされた回数です。 ユーザーがプールからコンピュートノードをリサイズ・縮小する際やジョブが無効化される際には、コンピュートノード上で実行中のタスクを実行のために再キューするよう指定できます。 このカウントは、これらの理由でタスクが何回再キューされたかを追跡しています。 |
| result |
タスク実行の結果です。 値が「失敗」の場合、失敗の詳細はfailureInfoプロパティで確認できます。 |
|
| retryCount |
integer (int32) |
タスクがバッチサービスによって再試された回数。 タスクアプリケーション失敗(ゼロでない終了コード)は再試され、前処理エラー(タスクが実行できなかった)やファイルアップロードエラーは再試されません。 バッチサービスは制約で指定された制限までタスクを再試行します。 |
| startTime |
string (date-time) |
タスクが開始された時間。 「Running」は実行状態に対応しているため、タスクがリソースファイルやパッケージを指定する場合、開始時間はタスクがそれらをダウンロードまたは展開し始めた時刻を反映します。 タスクが再起動または再試行された場合、これはタスクが実行を開始した最新の時刻です。 このプロパティは、実行中または完了状態のタスクにのみ適用されます。 |
BatchTaskExecutionResult
BatchTaskExecutionResultの列挙
| 値 | 説明 |
|---|---|
| success |
このタスクは成功裏に実施されました。 |
| failure |
タスクの処理中にエラーが発生しました。 失敗はタスクプロセスが起動される前、実行中、またはタスクプロセス終了後に発生した可能性があります。 |
BatchTaskFailureInfo
タスクの失敗に関する情報。
| 名前 | 型 | 説明 |
|---|---|---|
| category |
タスクエラーのカテゴリ。 |
|
| code |
string |
タスクエラーの識別子です。 コードは不変であり、プログラムで使用することを目的としています。 |
| details |
エラーに関連する追加情報の一覧。 |
|
| message |
string |
タスクエラーを説明するメッセージで、ユーザーインターフェースでの表示に適したものでした。 |
BatchTaskInfo
コンピューティング ノードで実行されているタスクに関する情報。
| 名前 | 型 | 説明 |
|---|---|---|
| executionInfo |
タスクの実行に関する情報。 |
|
| jobId |
string |
タスクが属するジョブのID。 |
| subtaskId |
integer (int32) |
タスクがマルチインスタンスタスクの場合、そのサブタスクのIDです。 |
| taskId |
string |
タスクのID。 |
| taskState |
現在のタスクの状態。 |
|
| taskUrl |
string (uri) |
タスクのURLです。 |
BatchTaskState
バッチタスクステートの列挙式
| 値 | 説明 |
|---|---|
| active |
タスクはキューに入り実行可能ですが、現在はコンピュートノードに割り当てられていません。 タスクは作成時、無効化された後に有効化された時、または失敗した実行後に再試行を待つ時にこの状態に入ります。 |
| preparing |
タスクはコンピュートノードに割り当てられていますが、コンピュートノード上で必要なジョブ準備タスクの完了を待っています。 ジョブ準備タスクが成功すると、タスクは実行に移行します。 ジョブ準備タスクが失敗した場合、タスクは再びアクティブに戻り、別の計算ノードに割り当てられる資格が得られます。 |
| running |
タスクはコンピュートノード上で実行されています。 これには、リソースファイルのダウンロードやタスク上で指定されたパッケージのデプロイなどのタスクレベルの準備も含まれますが、必ずしもタスクコマンドラインの実行が始まったという意味ではありません。 |
| completed |
タスクは実行できなくなり、通常はタスクが成功裏に完了したか、失敗して再試行制限を使い果たした場合に限られます。 タスクは、タスクの起動時にエラーが発生した場合や終了した場合も完了済みとマークされます。 |
BatchVmImageReference
Azure Virtual Machines Marketplace イメージまたは Azure コンピューティング ギャラリー イメージへの参照。 Azure Batch によって検証されたすべての Azure Marketplace イメージ参照の一覧を取得するには、「サポートされているイメージの一覧表示」操作を参照してください。
| 名前 | 型 | 説明 |
|---|---|---|
| communityGalleryImageId |
string |
コミュニティギャラリーの画像ユニーク識別子。 このプロパティは他のプロパティと相互に排他的であり、コミュニティ ギャラリー イメージの GET 呼び出しからフェッチできます。 |
| exactVersion |
string |
ノード作成に使われたプラットフォーム画像やマーケットプレイス画像の特定のバージョン。 この読み取り専用フィールドは、プール作成時に指定された「バージョン」の値が「最新」である場合にのみ「バージョン」と異なります。 |
| offer |
string |
Azure Virtual Machines Marketplace Imageのオファータイプ。 たとえば、UbuntuServer や WindowsServer などです。 |
| publisher |
string |
Azure Virtual Machines Marketplace Imageの発行者。 たとえば、Canonical または MicrosoftWindowsServer です。 |
| sharedGalleryImageId |
string |
共有ギャラリー画像のユニーク識別子。 このプロパティは他のプロパティと相互に排他的であり、共有ギャラリー イメージの GET 呼び出しからフェッチできます。 |
| sku |
string |
Azure Virtual Machines Marketplace ImageのSKUです。 たとえば、18.04-LTS や 2019-Datacenter などです。 |
| version |
string |
Azure Virtual Machines Marketplace Imageのバージョンです。 最新の画像を選択するために「最新」の値を指定できます。 省略した場合、既定値は 'latest' です。 |
| virtualMachineImageId |
string (arm-id) |
Azure コンピューティング ギャラリー イメージの ARM リソース識別子。 プール内の計算ノードはこのイメージIDを使って作成されます。これは、常に最新の画像バージョンをデフォルトで設定するために、/subscriptions/{subscriptionId}/resourceGroups/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} または /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} の形で、常に最新の画像バージョンをデフォルトで使用します。 この性質は他のImageReferenceプロパティとは相反します。 Azure Compute Gallery Imageは、同じリージョン内のレプリカを持ち、Azure Batchアカウントと同じサブスクリプションに属している必要があります。 imageIdに画像バージョンが指定されていない場合は、最新バージョンが使用されます。 バッチコンピュートノードエージェントがバッチサービスと通信するためのファイアウォール設定については https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configurationを参照してください。 |
ContainerHostBatchBindMountEntry
タスク コンテナーにマウントするパスとマウント モードのエントリ。
| 名前 | 型 | 説明 |
|---|---|---|
| isReadOnly |
boolean |
このソース パスを読み取り専用モードとしてマウントするかどうか。 既定値は false (読み取り/書き込みモード) です。 Linux の場合、このパスを読み取り/書き込みモードとしてマウントした場合、コンテナー内のすべてのユーザーがパスの読み取り/書き込みアクセス権を持っているわけではありません。これは、ホスト VM のアクセスに依存します。 このパスが読み取り専用でマウントされている場合、コンテナー内のすべてのユーザーはパスを変更できません。 |
| source |
コンテナー顧客にマウントするパスを選択できます。 |
ContainerHostDataPath
コンテナー タスクのコンテナーにマウントされるパス。
| 値 | 説明 |
|---|---|
| Shared |
複数インスタンス のタスクがファイルを共有するためのパス。 |
| Startup |
開始タスクのパス。 |
| VfsMounts |
パスには、このノードにマウントされているすべての仮想ファイル システムが含まれています。 |
| Task |
タスク パス。 |
| JobPrep |
ジョブ準備タスクのパス。 |
| Applications |
アプリケーション パス。 |
ContainerRegistryReference
プライベート コンテナー レジストリ。
| 名前 | 型 | 説明 |
|---|---|---|
| identityReference |
ユーザー名とパスワードではなく、Azure Container Registry へのアクセスに使用するユーザー割り当て ID への参照。 |
|
| password |
string (password) |
レジストリ サーバーにログインするためのパスワード。 |
| registryServer |
string (uri) |
レジストリ URL。 省略した場合、既定値は "docker.io" です。 |
| username |
string |
レジストリ サーバーにログインするユーザー名。 |
ContainerWorkingDirectory
ContainerWorkingDirectory 列挙
| 値 | 説明 |
|---|---|
| taskWorkingDirectory |
標準のバッチサービスのタスク作業ディレクトリを使用してください。そこにはバッチによって埋め込まれたタスクリソースファイルが含まれます。 |
| containerImageDefault |
コンテナImageで定義されたワーキングディレクトリを使いましょう。 ただし、このディレクトリにはバッチでダウンロードされたリソースファイルは含まれていないことに注意してください。 |
ElevationLevel
ElevationLevel 列挙
| 値 | 説明 |
|---|---|
| nonadmin |
ユーザーは、昇格されたアクセス権を持たない標準ユーザーです。 |
| admin |
ユーザーは昇格されたアクセス権を持つユーザーであり、完全な管理者権限で動作します。 |
EnvironmentSetting
タスク プロセスで設定する環境変数。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
環境変数の名前。 |
| value |
string |
環境変数の値。 |
InboundEndpoint
コンピューティング ノード上の受信エンドポイント。
| 名前 | 型 | 説明 |
|---|---|---|
| backendPort |
integer (int32) |
エンドポイントのバックエンドポート番号。 |
| frontendPort |
integer (int32) |
エンドポイントのパブリックポート番号。 |
| name |
string |
エンドポイントの名前。 |
| protocol |
エンドポイントのプロトコル。 |
|
| publicFQDN |
string |
Compute Nodeの公開の完全限定ドメイン名。 |
| publicIPAddress |
string |
コンピュートノードのパブリックIPアドレス。 |
InboundEndpointProtocol
InboundEndpointProtocol は列挙式です
| 値 | 説明 |
|---|---|
| tcp |
エンドポイントには TCP を使用します。 |
| udp |
エンドポイントには UDP を使用します。 |
NameValuePair
名前と値のペアを表します。
| 名前 | 型 | 説明 |
|---|---|---|
| name |
string |
名前と値の組み合わせに入っている名前。 |
| value |
string |
名前と値のペアの価値です。 |
ResourceFile
コンピューティング ノードにダウンロードする 1 つのファイルまたは複数のファイル。
| 名前 | 型 | 説明 |
|---|---|---|
| autoStorageContainerName |
string |
自動ストレージアカウントのストレージコンテナ名です。 autoStorageContainerName、storageContainerUrl、および httpUrl プロパティは相互に排他的であり、そのうちの 1 つを指定する必要があります。 |
| blobPrefix |
string |
Azure Storage コンテナーから BLOB をダウンロードするときに使用する BLOB プレフィックス。 指定したプレフィックスで始まる名前の BLOB のみがダウンロードされます。 このプロパティは、autoStorageContainerName または storageContainerUrl が使用されている場合にのみ有効です。 このプレフィックスには、部分的なファイル名またはサブディレクトリを指定できます。 プレフィックスが指定されていない場合は、コンテナー内のすべてのファイルがダウンロードされます。 |
| fileMode |
string |
ファイルアクセス許可モード属性 (8 進数形式)。 この特性は、Linux Compute Nodesにダウンロードされるファイルにのみ適用されます。 WindowsのCompute NodeにダウンロードされるresourceFileに指定されている場合は無視されます。 このプロパティがLinuxのコンピュートノードに指定されていない場合、ファイルにはデフォルト値0770が適用されます。 |
| filePath |
string |
タスクの作業ディレクトリに対してファイルをダウンロードするためのComputeノード上の位置。 httpUrl プロパティが指定されている場合、filePath は必須であり、ファイルのダウンロード先となるパス (ファイル名を含む) を記述します。 それ以外の場合、autoStorageContainerName または storageContainerUrl プロパティが指定されている場合、filePath は省略可能であり、ファイルをダウンロードするディレクトリです。 filePath がディレクトリとして使用されている場合、入力データに既に関連付けられているディレクトリ構造は完全に保持され、指定された filePath ディレクトリに追加されます。 指定された相対パスはタスクの作業ディレクトリから抜け出すことはできません(例えば「..」を使うなど)。 |
| httpUrl |
string (uri) |
ダウンロードするファイルの URL。 autoStorageContainerName、storageContainerUrl、および httpUrl プロパティは相互に排他的であり、そのうちの 1 つを指定する必要があります。 URL が Azure Blob Storage を指している場合は、コンピューティング ノードから読み取ることができる必要があります。 Azure Storage 内の BLOB のこのような URL を取得するには、3 つの方法があります。BLOB に対する読み取りアクセス許可を付与する Shared Access Signature (SAS) を含めるか、読み取りアクセス許可を持つマネージド ID を使用するか、BLOB またはそのコンテナーの ACL を設定してパブリック アクセスを許可します。 |
| identityReference |
storageContainerUrlまたはhttpUrlで指定されたAzure Blob Storageにアクセスするために使うユーザー割り当てのIDを参照します。 |
|
| storageContainerUrl |
string (uri) |
Azure Blob Storage 内の BLOB コンテナーの URL。 autoStorageContainerName、storageContainerUrl、および httpUrl プロパティは相互に排他的であり、そのうちの 1 つを指定する必要があります。 この URL は、コンピューティング ノードから読み取り可能でリスト可能である必要があります。 Azure Storage 内のコンテナーのこのような URL を取得するには、3 つの方法があります。コンテナーに対する読み取りと一覧表示のアクセス許可を付与する Shared Access Signature (SAS) を含めるか、読み取りとリストのアクセス許可を持つマネージド ID を使用するか、コンテナーの ACL を設定してパブリック アクセスを許可します。 |
SchedulingState
スケジュリングStateの列挙
| 値 | 説明 |
|---|---|
| enabled |
タスクはコンピュートノード上でスケジュール可能です。 |
| disabled |
コンピュートノード上で新しいタスクはスケジューリングされません。 すでにコンピュートノード上で実行中のタスクは完了まで実行されることがあります。 すべてのCompute Nodeはスケジューリングが有効化された状態で開始します。 |
UserIdentity
タスクを実行するユーザー ID の定義。 userName プロパティまたは autoUser プロパティを指定しますが、両方を指定することはできません。
| 名前 | 型 | 説明 |
|---|---|---|
| autoUser |
タスクを実行する自動ユーザーです。 userName プロパティと autoUser プロパティは相互に排他的です。1 つを指定する必要がありますが、両方を指定する必要はありません。 |
|
| username |
string |
タスクが実行されるユーザーIDの名前。 userName プロパティと autoUser プロパティは相互に排他的です。1 つを指定する必要がありますが、両方を指定する必要はありません。 |
VirtualMachineInfo
仮想マシンの現在の状態に関する情報。
| 名前 | 型 | 説明 |
|---|---|---|
| imageReference |
Azure 仮想マシンのマーケットプレイスイメージへの言及です。 |
|
| scaleSetVmResourceId |
string |
コンピュートノードの現在の仮想マシンスケールセットVM(VM)のリソースIDです。 バッチアカウントがpoolAllocationModeプロパティを「UserSubscription」に設定して作成された場合にのみ定義されます。 |