Virtual Machine Scale Set VM Run Commands - Create Or Update
VMSS VM 実行コマンドを作成または更新する操作。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}?api-version=2024-07-01
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
instance
|
path | True |
string |
仮想マシンのインスタンス ID。 |
resource
|
path | True |
string |
リソース グループの名前。 |
run
|
path | True |
string |
仮想マシンの実行コマンドの名前。 |
subscription
|
path | True |
string |
Microsoft Azure サブスクリプションを一意に識別するサブスクリプション資格情報。 サブスクリプション ID は、すべてのサービス呼び出しの URI の一部を形成します。 |
vm
|
path | True |
string |
VM スケール セットの名前。 |
api-version
|
query | True |
string |
クライアント API のバージョン。 |
要求本文
Media Types: "application/json", "text/json"
名前 | 必須 | 型 | 説明 |
---|---|---|---|
location | True |
string |
リソースの場所 |
properties.asyncExecution |
boolean |
随意。 true に設定すると、スクリプトが開始されるとすぐにプロビジョニングが完了し、スクリプトが完了するまで待機しません。 |
|
properties.errorBlobManagedIdentity |
errorBlobUri ストレージ BLOB にアクセスできるユーザー割り当てマネージド ID。 システム割り当て ID の場合は、空のオブジェクトを使用します。 "ストレージ BLOB データ共同作成者" ロールの割り当てを使用して、マネージド ID に BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged を参照してください。 |
||
properties.errorBlobUri |
string |
スクリプト エラー ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 errorBlobManagedIdentity パラメーターを参照します。 |
|
properties.outputBlobManagedIdentity |
outputBlobUri ストレージ BLOB にアクセスできるユーザー割り当てマネージド ID。 システム割り当て ID の場合は、空のオブジェクトを使用します。 "ストレージ BLOB データ共同作成者" ロールの割り当てを使用して、マネージド ID に BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged を参照してください。 |
||
properties.outputBlobUri |
string |
スクリプト出力ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 outputBlobManagedIdentity パラメーターを参照します。 |
|
properties.parameters |
スクリプトで使用されるパラメーター。 |
||
properties.protectedParameters |
スクリプトで使用されるパラメーター。 |
||
properties.runAsPassword |
string |
実行コマンドの実行時に VM のユーザー アカウント パスワードを指定します。 |
|
properties.runAsUser |
string |
実行コマンドの実行時に VM 上のユーザー アカウントを指定します。 |
|
properties.source |
実行コマンド スクリプトのソース。 |
||
properties.timeoutInSeconds |
integer |
run コマンドを実行するためのタイムアウト (秒単位)。 |
|
properties.treatFailureAsDeploymentFailure |
boolean |
随意。 true に設定すると、スクリプト内のエラーはデプロイに失敗し、ProvisioningState は Failed としてマークされます。 false に設定すると、ProvisioningState は、実行コマンドが拡張機能プラットフォームによって実行されたかどうかのみを反映し、スクリプトが失敗した場合にスクリプトが失敗したかどうかを示しません。 executionMessage、output、error: https://aka.ms/runcommandmanaged#get-execution-status-and-results を表示するスクリプトエラーが発生した場合は、run コマンドのインスタンス ビューを参照してください |
|
tags |
object |
リソース タグ |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK |
わかりました Media Types: "application/json", "text/json" |
|
201 Created |
作成 Media Types: "application/json", "text/json" |
|
Other Status Codes |
操作が失敗した理由を説明するエラー応答。 Media Types: "application/json", "text/json" |
セキュリティ
azure_auth
Azure Active Directory OAuth2 フロー
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
名前 | 説明 |
---|---|
user_impersonation | ユーザー アカウントを偽装する |
例
Create VirtualMachineScaleSet VM run command.
要求のサンプル
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand?api-version=2024-07-01
{
"location": "West US",
"properties": {
"source": {
"scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1",
"scriptUriManagedIdentity": {
"objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
}
},
"parameters": [
{
"name": "param1",
"value": "value1"
},
{
"name": "param2",
"value": "value2"
}
],
"asyncExecution": false,
"treatFailureAsDeploymentFailure": true,
"runAsUser": "user1",
"runAsPassword": "<runAsPassword>",
"timeoutInSeconds": 3600,
"outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
"errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt",
"outputBlobManagedIdentity": {
"clientId": "22d35efb-0c99-4041-8c5b-6d24db33a69a"
},
"errorBlobManagedIdentity": {}
}
}
応答のサンプル
{
"name": "myRunCommand",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
"type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
"location": "westus",
"properties": {
"source": {
"scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
},
"parameters": [
{
"name": "param1",
"value": "value1"
},
{
"name": "param2",
"value": "value2"
}
],
"asyncExecution": false,
"treatFailureAsDeploymentFailure": true,
"runAsUser": "user1",
"timeoutInSeconds": 3600,
"provisioningState": "Succeeded",
"outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
"errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
}
}
{
"name": "myRunCommand",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
"type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
"location": "westus",
"properties": {
"source": {
"scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
},
"parameters": [
{
"name": "param1",
"value": "value1"
},
{
"name": "param2",
"value": "value2"
}
],
"asyncExecution": false,
"treatFailureAsDeploymentFailure": true,
"runAsUser": "user1",
"timeoutInSeconds": 3600,
"provisioningState": "Creating",
"outputBlobUri": "https://mystorageaccount.blob.core.windows.net/myscriptoutputcontainer/MyScriptoutput.txt",
"errorBlobUri": "https://mystorageaccount.blob.core.windows.net/mycontainer/MyScriptError.txt"
}
}
定義
名前 | 説明 |
---|---|
Api |
API エラー。 |
Api |
API エラーベース。 |
Cloud |
コンピューティング サービスからのエラー応答。 |
Execution |
スクリプトの実行状態。 |
Inner |
内部エラーの詳細。 |
Instance |
インスタンス ビューの状態。 |
Run |
run コマンド パラメーターのプロパティについて説明します。 |
Run |
Run Command で使用されるストレージ BLOB にアクセスできるユーザー割り当てマネージド ID の clientId または objectId (両方ではなく 1 つだけを使用) が含まれます。 システム割り当て ID の場合は、空の RunCommandManagedIdentity オブジェクトを使用します。 scriptUri の場合は Azure ストレージ BLOB が存在し、マネージド ID には、scriptUri BLOB と追加 BLOB (outputBlobUri、errorBlobUri) の "ストレージ BLOB データ共同作成者" を使用した "ストレージ BLOB データ閲覧者" ロールの割り当てで BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、「https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged」を参照してください。 |
Status |
レベル コード。 |
Virtual |
仮想マシンの実行コマンドについて説明します。 |
Virtual |
仮想マシンの実行コマンドのインスタンス ビュー。 |
Virtual |
run コマンドのスクリプト ソースについて説明します。 scriptUri、commandId の 1 つだけを使用します。 |
ApiError
API エラー。
名前 | 型 | 説明 |
---|---|---|
code |
string |
エラー コード。 |
details |
Api エラーの詳細 |
|
innererror |
Api 内部エラー |
|
message |
string |
エラー メッセージ。 |
target |
string |
特定のエラーのターゲット。 |
ApiErrorBase
API エラーベース。
名前 | 型 | 説明 |
---|---|---|
code |
string |
エラー コード。 |
message |
string |
エラー メッセージ。 |
target |
string |
特定のエラーのターゲット。 |
CloudError
コンピューティング サービスからのエラー応答。
名前 | 型 | 説明 |
---|---|---|
error |
API エラー。 |
ExecutionState
スクリプトの実行状態。
名前 | 型 | 説明 |
---|---|---|
Canceled |
string |
|
Failed |
string |
|
Pending |
string |
|
Running |
string |
|
Succeeded |
string |
|
TimedOut |
string |
|
Unknown |
string |
InnerError
内部エラーの詳細。
名前 | 型 | 説明 |
---|---|---|
errordetail |
string |
内部エラー メッセージまたは例外ダンプ。 |
exceptiontype |
string |
例外の種類。 |
InstanceViewStatus
インスタンス ビューの状態。
名前 | 型 | 説明 |
---|---|---|
code |
string |
状態コード。 |
displayStatus |
string |
状態の短いローカライズ可能なラベル。 |
level |
レベル コード。 |
|
message |
string |
アラートやエラー メッセージを含む詳細なステータス メッセージ。 |
time |
string |
状態の時刻。 |
RunCommandInputParameter
run コマンド パラメーターのプロパティについて説明します。
名前 | 型 | 説明 |
---|---|---|
name |
string |
run コマンド のパラメーター名。 |
value |
string |
run コマンド パラメーターの値。 |
RunCommandManagedIdentity
Run Command で使用されるストレージ BLOB にアクセスできるユーザー割り当てマネージド ID の clientId または objectId (両方ではなく 1 つだけを使用) が含まれます。 システム割り当て ID の場合は、空の RunCommandManagedIdentity オブジェクトを使用します。 scriptUri の場合は Azure ストレージ BLOB が存在し、マネージド ID には、scriptUri BLOB と追加 BLOB (outputBlobUri、errorBlobUri) の "ストレージ BLOB データ共同作成者" を使用した "ストレージ BLOB データ閲覧者" ロールの割り当てで BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、「https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged」を参照してください。
名前 | 型 | 説明 |
---|---|---|
clientId |
string |
ユーザー割り当てマネージド ID のクライアント ID (GUID 値)。 ObjectId を指定する場合は使用しないでください。 |
objectId |
string |
ユーザー割り当てマネージド ID のオブジェクト ID (GUID 値)。 これが指定されている場合は、ClientId を使用しないでください。 |
StatusLevelTypes
レベル コード。
名前 | 型 | 説明 |
---|---|---|
Error |
string |
|
Info |
string |
|
Warning |
string |
VirtualMachineRunCommand
仮想マシンの実行コマンドについて説明します。
名前 | 型 | 規定値 | 説明 |
---|---|---|---|
id |
string |
リソース ID |
|
location |
string |
リソースの場所 |
|
name |
string |
リソース名 |
|
properties.asyncExecution |
boolean |
False |
随意。 true に設定すると、スクリプトが開始されるとすぐにプロビジョニングが完了し、スクリプトが完了するまで待機しません。 |
properties.errorBlobManagedIdentity |
errorBlobUri ストレージ BLOB にアクセスできるユーザー割り当てマネージド ID。 システム割り当て ID の場合は、空のオブジェクトを使用します。 "ストレージ BLOB データ共同作成者" ロールの割り当てを使用して、マネージド ID に BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged を参照してください。 |
||
properties.errorBlobUri |
string |
スクリプト エラー ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 errorBlobManagedIdentity パラメーターを参照します。 |
|
properties.instanceView |
仮想マシンの実行コマンド インスタンス ビュー。 |
||
properties.outputBlobManagedIdentity |
outputBlobUri ストレージ BLOB にアクセスできるユーザー割り当てマネージド ID。 システム割り当て ID の場合は、空のオブジェクトを使用します。 "ストレージ BLOB データ共同作成者" ロールの割り当てを使用して、マネージド ID に BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged を参照してください。 |
||
properties.outputBlobUri |
string |
スクリプト出力ストリームをアップロードする Azure Storage BLOB を指定します。 読み取り、追加、作成、書き込みアクセス権を持つ SAS URI を使用するか、マネージド ID を使用して VM に BLOB へのアクセスを提供します。 outputBlobManagedIdentity パラメーターを参照します。 |
|
properties.parameters |
スクリプトで使用されるパラメーター。 |
||
properties.protectedParameters |
スクリプトで使用されるパラメーター。 |
||
properties.provisioningState |
string |
プロビジョニング状態。応答にのみ表示されます。 treatFailureAsDeploymentFailure が true に設定されている場合、スクリプト内のエラーはデプロイに失敗し、ProvisioningState は Failed としてマークされます。 treatFailureAsDeploymentFailure が false に設定されている場合、ProvisioningState は実行コマンドが拡張機能プラットフォームによって実行されたかどうかのみを反映し、スクリプトが失敗した場合にスクリプトが失敗したかどうかを示しません。 executionMessage、output、error: https://aka.ms/runcommandmanaged#get-execution-status-and-results を表示するスクリプトエラーが発生した場合は、run コマンドのインスタンス ビューを参照してください |
|
properties.runAsPassword |
string |
実行コマンドの実行時に VM のユーザー アカウント パスワードを指定します。 |
|
properties.runAsUser |
string |
実行コマンドの実行時に VM 上のユーザー アカウントを指定します。 |
|
properties.source |
実行コマンド スクリプトのソース。 |
||
properties.timeoutInSeconds |
integer |
run コマンドを実行するためのタイムアウト (秒単位)。 |
|
properties.treatFailureAsDeploymentFailure |
boolean |
False |
随意。 true に設定すると、スクリプト内のエラーはデプロイに失敗し、ProvisioningState は Failed としてマークされます。 false に設定すると、ProvisioningState は、実行コマンドが拡張機能プラットフォームによって実行されたかどうかのみを反映し、スクリプトが失敗した場合にスクリプトが失敗したかどうかを示しません。 executionMessage、output、error: https://aka.ms/runcommandmanaged#get-execution-status-and-results を表示するスクリプトエラーが発生した場合は、run コマンドのインスタンス ビューを参照してください |
tags |
object |
リソース タグ |
|
type |
string |
リソースの種類 |
VirtualMachineRunCommandInstanceView
仮想マシンの実行コマンドのインスタンス ビュー。
名前 | 型 | 説明 |
---|---|---|
endTime |
string |
スクリプトの終了時刻。 |
error |
string |
スクリプト エラー ストリーム。 |
executionMessage |
string |
スクリプト構成エラーまたは実行メッセージを伝えます。 |
executionState |
スクリプトの実行状態。 |
|
exitCode |
integer |
スクリプトの実行から返された終了コード。 |
output |
string |
スクリプト出力ストリーム。 |
startTime |
string |
スクリプトの開始時刻。 |
statuses |
リソースの状態情報。 |
VirtualMachineRunCommandScriptSource
run コマンドのスクリプト ソースについて説明します。 scriptUri、commandId の 1 つだけを使用します。
名前 | 型 | 説明 |
---|---|---|
commandId |
string |
定義済みの組み込みスクリプトの commandId を指定します。 |
script |
string |
VM で実行するスクリプトコンテンツを指定します。 |
scriptUri |
string |
スクリプトのダウンロード場所を指定します。 読み取りアクセス権を持つ Azure ストレージ BLOB の SAS URI またはパブリック URI のいずれかを指定できます。 |
scriptUriManagedIdentity |
Azure Storage BLOB の場合に scriptUri にアクセスできるユーザー割り当てマネージド ID。 システム割り当て ID の場合は、空のオブジェクトを使用します。 Azure ストレージ BLOB が存在し、マネージド ID に "ストレージ BLOB データ閲覧者" ロールの割り当てで BLOB のコンテナーへのアクセス権が付与されていることを確認します。 ユーザー割り当て ID の場合は、必ず VM の ID の下に追加してください。 マネージド ID と実行コマンドの詳細については、「https://aka.ms/ManagedIdentity と https://aka.ms/RunCommandManaged」を参照してください。 |