你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Virtual Machine Scale Set VM Run Commands - Get

获取 VMSS VM 运行命令的作。

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}?api-version=2025-04-01
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/runCommands/{runCommandName}?api-version=2025-04-01&$expand={$expand}

URI 参数

名称 必需 类型 说明
instanceId
path True

string

VirtualMachineScaleSetVM 的名称

resourceGroupName
path True

string

minLength: 1
maxLength: 90

资源组的名称。 此名称不区分大小写。

runCommandName
path True

string

VirtualMachineRunCommand 的名称

subscriptionId
path True

string

minLength: 1

目标订阅的 ID。

vmScaleSetName
path True

string

VirtualMachineScaleSet 的名称

api-version
query True

string

minLength: 1

要用于此操作的 API 版本。

$expand
query

string

要应用于作的展开表达式。

响应

名称 类型 说明
200 OK

VirtualMachineRunCommand

Azure作已成功完成。

Other Status Codes

CloudError

意外错误响应。

安全性

azure_auth

Azure Active Directory OAuth2 Flow。

类型: oauth2
流向: implicit
授权 URL: https://login.microsoftonline.com/common/oauth2/authorize

作用域

名称 说明
user_impersonation 模拟用户帐户

示例

Get VirtualMachineScaleSet VM run commands.

示例请求

GET https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand?api-version=2025-04-01

示例响应

{
  "name": "myRunCommand",
  "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/runCommands",
  "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/runCommands/myRunCommand",
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "source": {
      "scriptUri": "https://gist.githubusercontent.com/myusername/75fd3634w7511116063c60bcc50bee0/raw/04a4c68ac9e1d36asfasdc64bd1d889b104c7abdb8/HelloWorld.ps1"
    },
    "parameters": [
      {
        "name": "param1",
        "value": "value1"
      },
      {
        "name": "param2",
        "value": "value2"
      }
    ],
    "asyncExecution": false,
    "treatFailureAsDeploymentFailure": false,
    "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"
  }
}

定义

名称 说明
ApiError

API 错误。

ApiErrorBase

Api 错误库。

CloudError

来自计算服务的错误响应。

createdByType

创建资源的标识的类型。

ExecutionState

脚本执行状态。

InnerError

内部错误详细信息。

InstanceViewStatus

实例视图状态。

RunCommandInputParameter

描述运行命令参数的属性。

RunCommandManagedIdentity

包含用户分配的托管标识的 clientId 或 objectId(仅使用一个,而不是两个),该标识有权访问运行命令中使用的存储 blob。 在系统分配的标识的情况下,使用空的 RunCommandManagedIdentity 对象。 确保 scriptUri 的情况下存在 Azure 存储 Blob,并且托管标识已获得对 Blob 容器的访问权限,并使用 scriptUri blob 分配“存储 Blob 数据读取者”角色,并授予“追加 blob”的“存储 Blob 数据参与者”(outputBlobUri、errorBlobUri)。 如果是用户分配的标识,请确保将其添加到 VM 的标识下。 有关托管标识和运行命令的详细信息,请参阅 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

ScriptShellTypes

脚本 shell 类型。

StatusLevelTypes

级别代码。

systemData

与创建和上次修改资源相关的元数据。

VirtualMachineRunCommand

描述虚拟机运行命令。

VirtualMachineRunCommandInstanceView

虚拟机运行命令的实例视图。

VirtualMachineRunCommandScriptSource

描述运行命令的脚本源。 仅使用以下脚本源之一:script、scriptUri、commandId、galleryScriptReferenceId。

ApiError

API 错误。

名称 类型 说明
code

string

错误代码。

details

ApiErrorBase[]

Api 错误详细信息

innererror

InnerError

Api 内部错误

message

string

错误消息。

target

string

特定错误的目标。

ApiErrorBase

Api 错误库。

名称 类型 说明
code

string

错误代码。

message

string

错误消息。

target

string

特定错误的目标。

CloudError

来自计算服务的错误响应。

名称 类型 说明
error

ApiError

API 错误。

createdByType

创建资源的标识的类型。

说明
User
Application
ManagedIdentity
Key

ExecutionState

脚本执行状态。

说明
Unknown
Pending
Running
Failed
Succeeded
TimedOut
Canceled

InnerError

内部错误详细信息。

名称 类型 说明
errordetail

string

内部错误消息或异常转储。

exceptiontype

string

异常类型。

InstanceViewStatus

实例视图状态。

名称 类型 说明
code

string

状态代码。

displayStatus

string

状态的简短可本地化标签。

level

StatusLevelTypes

级别代码。

message

string

详细状态消息,包括警报和错误消息。

time

string (date-time)

状态的时间。

RunCommandInputParameter

描述运行命令参数的属性。

名称 类型 说明
name

string

run 命令参数名称。

value

string

run 命令参数值。

RunCommandManagedIdentity

包含用户分配的托管标识的 clientId 或 objectId(仅使用一个,而不是两个),该标识有权访问运行命令中使用的存储 blob。 在系统分配的标识的情况下,使用空的 RunCommandManagedIdentity 对象。 确保 scriptUri 的情况下存在 Azure 存储 Blob,并且托管标识已获得对 Blob 容器的访问权限,并使用 scriptUri blob 分配“存储 Blob 数据读取者”角色,并授予“追加 blob”的“存储 Blob 数据参与者”(outputBlobUri、errorBlobUri)。 如果是用户分配的标识,请确保将其添加到 VM 的标识下。 有关托管标识和运行命令的详细信息,请参阅 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

名称 类型 说明
clientId

string

用户分配的托管标识的客户端 ID (GUID 值)。 如果未提供,则不应使用 ObjectId。

objectId

string

用户分配的托管标识的对象 ID (GUID 值)。 如果未提供,则不应使用 ClientId。

ScriptShellTypes

脚本 shell 类型。

说明
Default

默认脚本 shell 类型。

Powershell7

Powershell7 脚本 shell 类型。

StatusLevelTypes

级别代码。

说明
Info
Warning
Error

systemData

与创建和上次修改资源相关的元数据。

名称 类型 说明
createdAt

string (date-time)

资源创建时间戳(UTC)。

createdBy

string

创建资源的标识。

createdByType

createdByType

创建资源的标识的类型。

lastModifiedAt

string (date-time)

上次修改的资源时间戳(UTC)

lastModifiedBy

string

上次修改资源的标识。

lastModifiedByType

createdByType

上次修改资源的标识的类型。

VirtualMachineRunCommand

描述虚拟机运行命令。

名称 类型 说明
id

string

资源的完全限定资源 ID。 例如 - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

location

string

资源所在的地理位置

name

string

资源的名称

properties.asyncExecution

boolean

可选。 如果设置为 true,则脚本启动后,预配将立即完成,并且不会等待脚本完成。

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

用户分配的托管标识有权访问 errorBlobUri 存储 Blob。 在系统分配的标识的情况下使用空对象。 确保已向托管标识授予对具有“存储 Blob 数据参与者”角色分配的 Blob 容器的访问权限。 对于用户分配的标识,请确保将其添加到 VM 的标识下。 有关托管标识和运行命令的详细信息,请参阅 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.errorBlobUri

string

指定将上传脚本错误流的 Azure 存储 Blob。 使用具有读取、追加、创建、写入访问权限的 SAS URI 或使用托管标识提供对 Blob 的 VM 访问权限。 引用 errorBlobManagedIdentity 参数。

properties.instanceView

VirtualMachineRunCommandInstanceView

虚拟机运行命令实例视图。

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

用户分配的托管标识有权访问 outputBlobUri 存储 Blob。 在系统分配的标识的情况下使用空对象。 确保已向托管标识授予对具有“存储 Blob 数据参与者”角色分配的 Blob 容器的访问权限。 对于用户分配的标识,请确保将其添加到 VM 的标识下。 有关托管标识和运行命令的详细信息,请参阅 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged

properties.outputBlobUri

string

指定将上传脚本输出流的 Azure 存储 Blob。 使用具有读取、追加、创建、写入访问权限的 SAS URI 或使用托管标识提供对 Blob 的 VM 访问权限。 引用 outputBlobManagedIdentity 参数。

properties.parameters

RunCommandInputParameter[]

脚本使用的参数。

properties.protectedParameters

RunCommandInputParameter[]

脚本使用的参数。

properties.provisioningState

string

预配状态,仅出现在响应中。 如果 treatFailureAsDeploymentFailure 设置为 true,则脚本中的任何失败都将使部署失败,并且 ProvisioningState 将标记为 Failed。 如果 treatFailureAsDeploymentFailure 设置为 false,则 ProvisioningState 将仅反映扩展平台是否运行了运行命令,它不会指示脚本失败时脚本是否失败。 如果脚本失败,请参阅 run 命令的实例视图,以查看 executionMessage、输出、错误:https://aka.ms/runcommandmanaged#get-execution-status-and-results

properties.runAsPassword

string

在执行 run 命令时,指定 VM 上的用户帐户密码。

properties.runAsUser

string

在执行 run 命令时,指定 VM 上的用户帐户。

properties.source

VirtualMachineRunCommandScriptSource

运行命令脚本的源。

properties.timeoutInSeconds

integer (int32)

执行 run 命令的超时(以秒为单位)。

properties.treatFailureAsDeploymentFailure

boolean

可选。 如果设置为 true,脚本中的任何失败都将失败,并且 ProvisioningState 将标记为“失败”。 如果设置为 false,ProvisioningState 将仅反映运行命令是否由扩展平台运行,则不会指示脚本在脚本失败时是否失败。 如果脚本失败,请参阅 run 命令的实例视图,以查看 executionMessage、输出、错误:https://aka.ms/runcommandmanaged#get-execution-status-and-results

systemData

systemData

包含 createdBy 和 modifiedBy 信息的 Azure 资源管理器元数据。

tags

object

资源标记。

type

string

资源类型。 例如,“Microsoft.Compute/virtualMachines”或“Microsoft.Storage/storageAccounts”

VirtualMachineRunCommandInstanceView

虚拟机运行命令的实例视图。

名称 类型 说明
endTime

string (date-time)

脚本结束时间。

error

string

脚本错误流。

executionMessage

string

传达脚本配置错误或执行消息。

executionState

ExecutionState

脚本执行状态。

exitCode

integer (int32)

脚本执行返回的退出代码。

output

string

脚本输出流。

startTime

string (date-time)

脚本开始时间。

statuses

InstanceViewStatus[]

资源状态信息。

VirtualMachineRunCommandScriptSource

描述运行命令的脚本源。 仅使用以下脚本源之一:script、scriptUri、commandId、galleryScriptReferenceId。

名称 类型 说明
commandId

string

指定预定义内置脚本的 commandId。 可用于 Linux 的命令 ID 列在 、 Windows 中https://aka.ms/RunCommandManagedLinux#available-commandshttps://aka.ms/RunCommandManagedWindows#available-commands

galleryScriptReferenceId

string

需要执行的库脚本版本的资源 ID。 示例 ID 类似于 /subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/galleries/{galleryName}/scripts/{scriptName}/versions/{version}。

script

string

指定要在 VM 上执行的脚本内容。

scriptShell

ScriptShellTypes

可选。 指定用于运行脚本的 shell。 这些值必须与扩展预期的值匹配。 目前仅支持 Windows VM,脚本在指定时使用 Powershell 7。 计算机上必须已安装 Powershell 7 才能使用 Powershell7 参数值。

scriptUri

string

指定脚本下载位置。 它可以是具有读取访问权限或公共 URI 的 Azure 存储 Blob 的 SAS URI。

scriptUriManagedIdentity

RunCommandManagedIdentity

对于 Azure 存储 Blob,用户分配的托管标识有权访问 scriptUri。 在系统分配的标识的情况下使用空对象。 确保 Azure 存储 Blob 存在,并且已向托管标识授予对具有“存储 Blob 数据读取者”角色分配的 Blob 容器的访问权限。 对于用户分配的标识,请确保将其添加到 VM 的标识下。 有关托管标识和运行命令的详细信息,请参阅 https://aka.ms/ManagedIdentityhttps://aka.ms/RunCommandManaged