Virtual Machine Scale Set VM Run Commands - Update

Операция обновления команды запуска виртуальной машины VMSS.

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

Параметры 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

Идентификатор целевой подписки.

vmScaleSetName
path True

string

Имя набора VirtualMachineScaleSet

api-version
query True

string

minLength: 1

Версия API, используемая для данной операции.

Текст запроса

Имя Тип Описание
properties.asyncExecution

boolean

Необязательно. Если задано значение true, подготовка завершится сразу после запуска скрипта и не будет ожидать завершения скрипта.

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища errorBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.errorBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток ошибок скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр errorBlobManagedIdentity.

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища outputBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.outputBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток выходных данных скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр outputBlobManagedIdentity.

properties.parameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.protectedParameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.runAsPassword

string

Указывает пароль учетной записи пользователя на виртуальной машине при выполнении команды выполнения.

properties.runAsUser

string

Указывает учетную запись пользователя на виртуальной машине при выполнении команды выполнения.

properties.source

VirtualMachineRunCommandScriptSource

Источник скрипта выполнения команды.

properties.timeoutInSeconds

integer (int32)

Время ожидания в секундах для выполнения команды выполнения.

properties.treatFailureAsDeploymentFailure

boolean

Необязательно. Если задано значение true, любой сбой в скрипте завершится сбоем развертывания и provisioningState будет помечен как "Сбой". Если задано значение false, ProvisioningState будет отражать только выполнение команды выполнения платформы расширений, не указывайте, завершился ли скрипт сбоем в случае сбоев скрипта. Просмотр представления экземпляра команды выполнения в случае сбоя скрипта, чтобы увидеть executionMessage, выходные данные, ошибку: https://aka.ms/runcommandmanaged#get-execution-status-and-results

tags

object

Теги ресурсов

Ответы

Имя Тип Описание
200 OK

VirtualMachineRunCommand

Запрос выполнен успешно.

Заголовки

  • Location: string
  • Retry-After: integer
Other Status Codes

CloudError

Непредвиденное сообщение об ошибке.

Безопасность

azure_auth

Azure Active Directory OAuth2 Flow.

Тип: oauth2
Flow: implicit
URL-адрес авторизации: https://login.microsoftonline.com/common/oauth2/authorize

Области

Имя Описание
user_impersonation олицетворения учетной записи пользователя

Примеры

Update VirtualMachineScaleSet VM run command.

Образец запроса

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

{
  "properties": {
    "source": {
      "scriptUri": "https://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1",
      "scriptUriManagedIdentity": {
        "objectId": "4231e4d2-33e4-4e23-96b2-17888afa6072"
      }
    }
  }
}

Пример ответа

{
  "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://mystorageaccount.blob.core.windows.net/scriptcontainer/MyScript.ps1"
    },
    "parameters": [
      {
        "name": "param1",
        "value": "value1"
      },
      {
        "name": "param2",
        "value": "value2"
      }
    ],
    "asyncExecution": false,
    "treatFailureAsDeploymentFailure": false,
    "runAsUser": "user1",
    "timeoutInSeconds": 3600,
    "provisioningState": "Updating",
    "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

Описывает свойства параметра команды run.

RunCommandManagedIdentity

Содержит clientId или objectId (используйте только один, а не оба) управляемого удостоверения, назначаемого пользователем, имеющего доступ к blob-объекту хранилища, используемому в команде run. Используйте пустой объект RunCommandManagedIdentity в случае назначаемого системой удостоверения. Убедитесь, что большой двоичный объект хранилища Azure существует в случае scriptUri, и управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Средство чтения данных BLOB-объектов хранилища" с назначением ролей scriptUri и "Участник данных BLOB-объектов хранилища" для добавления BLOB-объектов (outputBlobUri, errorBlobUri). В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged.

ScriptShellTypes

Типы оболочек скриптов.

StatusLevelTypes

Код уровня.

systemData

Метаданные, относящиеся к созданию и последнему изменении ресурса.

VirtualMachineRunCommand

Описывает команду запуска виртуальной машины.

VirtualMachineRunCommandInstanceView

Представление экземпляра команды выполнения виртуальной машины.

VirtualMachineRunCommandScriptSource

Описывает источники скриптов для команды выполнения. Используйте только один из этих источников скриптов: script, scriptUri, commandId, galleryScriptReferenceId.

VirtualMachineRunCommandUpdate

Описывает команду запуска виртуальной машины.

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

Описывает свойства параметра команды run.

Имя Тип Описание
name

string

Имя параметра команды запуска.

value

string

Значение параметра команды run.

RunCommandManagedIdentity

Содержит clientId или objectId (используйте только один, а не оба) управляемого удостоверения, назначаемого пользователем, имеющего доступ к blob-объекту хранилища, используемому в команде run. Используйте пустой объект RunCommandManagedIdentity в случае назначаемого системой удостоверения. Убедитесь, что большой двоичный объект хранилища Azure существует в случае scriptUri, и управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Средство чтения данных BLOB-объектов хранилища" с назначением ролей scriptUri и "Участник данных BLOB-объектов хранилища" для добавления BLOB-объектов (outputBlobUri, errorBlobUri). В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged.

Имя Тип Описание
clientId

string

Идентификатор клиента (значение GUID) управляемого удостоверения, назначаемого пользователем. Объектный идентификатор не следует использовать, если это указано.

objectId

string

Идентификатор объекта (значение GUID) управляемого удостоверения, назначаемого пользователем. ClientId не следует использовать, если это указано.

ScriptShellTypes

Типы оболочек скриптов.

Значение Описание
Default

Тип оболочки скрипта по умолчанию.

Powershell7

Тип оболочки скрипта Powershell7.

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

Полный идентификатор ресурса для ресурса. Пример - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

location

string

Географическое расположение, в котором находится ресурс

name

string

Имя ресурса

properties.asyncExecution

boolean

Необязательно. Если задано значение true, подготовка завершится сразу после запуска скрипта и не будет ожидать завершения скрипта.

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища errorBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.errorBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток ошибок скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр errorBlobManagedIdentity.

properties.instanceView

VirtualMachineRunCommandInstanceView

Представление экземпляра команды запуска виртуальной машины.

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища outputBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.outputBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток выходных данных скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр outputBlobManagedIdentity.

properties.parameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.protectedParameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.provisioningState

string

Состояние подготовки, которое отображается только в ответе. Если для свойства treatFailureAsDeploymentFailure задано значение true, любой сбой в скрипте завершится сбоем развертывания и provisioningState будет помечен как failed. Если параметр treatFailureAsDeploymentFailure задан как false, ProvisioningState будет отражать только выполнение команды запуска платформы расширений, то не будет ли скрипт неудачным в случае сбоев скрипта. Просмотр представления экземпляра команды выполнения в случае сбоя скрипта, чтобы увидеть executionMessage, выходные данные, ошибку: https://aka.ms/runcommandmanaged#get-execution-status-and-results

properties.runAsPassword

string

Указывает пароль учетной записи пользователя на виртуальной машине при выполнении команды выполнения.

properties.runAsUser

string

Указывает учетную запись пользователя на виртуальной машине при выполнении команды выполнения.

properties.source

VirtualMachineRunCommandScriptSource

Источник скрипта выполнения команды.

properties.timeoutInSeconds

integer (int32)

Время ожидания в секундах для выполнения команды выполнения.

properties.treatFailureAsDeploymentFailure

boolean

Необязательно. Если задано значение true, любой сбой в скрипте завершится сбоем развертывания и provisioningState будет помечен как "Сбой". Если задано значение false, ProvisioningState будет отражать только выполнение команды выполнения платформы расширений, не указывайте, завершился ли скрипт сбоем в случае сбоев скрипта. Просмотр представления экземпляра команды выполнения в случае сбоя скрипта, чтобы увидеть executionMessage, выходные данные, ошибку: https://aka.ms/runcommandmanaged#get-execution-status-and-results

systemData

systemData

Метаданные Azure Resource Manager, содержащие данные createdBy и modifiedBy.

tags

object

Теги ресурсов.

type

string

Тип ресурса. Например, «Microsoft. Compute/virtualMachines» или «Microsoft. Аккаунты хранения/хранения»

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

Задает идентификатор командной строки предопределенного встроенного скрипта. Идентификаторы команд, доступные для Linux, перечислены по адресу https://aka.ms/RunCommandManagedLinux#available-commands, Windows по адресу https://aka.ms/RunCommandManagedWindows#available-commands.

galleryScriptReferenceId

string

Идентификатор ресурса версии скрипта галереи, которую необходимо выполнить. Пример ID выглядит как /subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/galleries/{galleryName}/scripts/{scriptName}/versions/{version}.

script

string

Указывает содержимое скрипта, выполняемого на виртуальной машине.

scriptShell

ScriptShellTypes

Необязательно. Укажите, какую оболочку использовать для запуска скрипта. Эти значения должны совпадать с ожидаемыми расширением. В настоящее время поддерживается только для виртуальных машин Windows, скрипт использует Powershell 7, если он указан. Powershell 7 должен быть уже установлен на компьютере, чтобы использовать значение параметра Powershell7.

scriptUri

string

Указывает расположение загрузки скрипта. Это может быть URI SAS Azure blob-объекта хранилища с доступом на чтение или общедоступным универсальным кодом ресурса (URI).

scriptUriManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к scriptUri в случае Azure BLOB-объекта хранилища. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что большой двоичный объект хранилища Azure существует, и управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объектов с назначением роли "Читатель данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged.

VirtualMachineRunCommandUpdate

Описывает команду запуска виртуальной машины.

Имя Тип Описание
properties.asyncExecution

boolean

Необязательно. Если задано значение true, подготовка завершится сразу после запуска скрипта и не будет ожидать завершения скрипта.

properties.errorBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища errorBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.errorBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток ошибок скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр errorBlobManagedIdentity.

properties.instanceView

VirtualMachineRunCommandInstanceView

Представление экземпляра команды запуска виртуальной машины.

properties.outputBlobManagedIdentity

RunCommandManagedIdentity

Назначаемое пользователем управляемое удостоверение, которое имеет доступ к blob-объекту хранилища outputBlobUri. Используйте пустой объект в случае назначаемого системой удостоверения. Убедитесь, что управляемое удостоверение было предоставлено доступ к контейнеру BLOB-объекта с назначением роли "Участник данных BLOB-объектов хранилища". В случае назначаемого пользователем удостоверения убедитесь, что вы добавите его в удостоверение виртуальной машины. Дополнительные сведения об управляемом удостоверении и команде запуска см. в https://aka.ms/ManagedIdentity и https://aka.ms/RunCommandManaged

properties.outputBlobUri

string

Указывает большой двоичный объект хранилища Azure, в котором будет отправлен поток выходных данных скрипта. Используйте URI SAS с чтением, добавлением, созданием, записью или использованием управляемого удостоверения для предоставления виртуальной машине доступа к большому двоичному объекту. См. параметр outputBlobManagedIdentity.

properties.parameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.protectedParameters

RunCommandInputParameter[]

Параметры, используемые скриптом.

properties.provisioningState

string

Состояние подготовки, которое отображается только в ответе. Если для свойства treatFailureAsDeploymentFailure задано значение true, любой сбой в скрипте завершится сбоем развертывания и provisioningState будет помечен как failed. Если параметр treatFailureAsDeploymentFailure задан как false, ProvisioningState будет отражать только выполнение команды запуска платформы расширений, то не будет ли скрипт неудачным в случае сбоев скрипта. Просмотр представления экземпляра команды выполнения в случае сбоя скрипта, чтобы увидеть executionMessage, выходные данные, ошибку: https://aka.ms/runcommandmanaged#get-execution-status-and-results

properties.runAsPassword

string

Указывает пароль учетной записи пользователя на виртуальной машине при выполнении команды выполнения.

properties.runAsUser

string

Указывает учетную запись пользователя на виртуальной машине при выполнении команды выполнения.

properties.source

VirtualMachineRunCommandScriptSource

Источник скрипта выполнения команды.

properties.timeoutInSeconds

integer (int32)

Время ожидания в секундах для выполнения команды выполнения.

properties.treatFailureAsDeploymentFailure

boolean

Необязательно. Если задано значение true, любой сбой в скрипте завершится сбоем развертывания и provisioningState будет помечен как "Сбой". Если задано значение false, ProvisioningState будет отражать только выполнение команды выполнения платформы расширений, не указывайте, завершился ли скрипт сбоем в случае сбоев скрипта. Просмотр представления экземпляра команды выполнения в случае сбоя скрипта, чтобы увидеть executionMessage, выходные данные, ошибку: https://aka.ms/runcommandmanaged#get-execution-status-and-results

tags

object

Теги ресурсов