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

az vm

注意

此命令组具有在 Azure CLI 和至少一个扩展中定义的命令。 安装每个扩展,使其受益于其扩展功能。 详细了解扩展。

管理 Linux 或 Windows 虚拟机。

命令

名称 说明 类型 Status
az vm aem

管理适用于 SAP 的 Azure 增强型监视扩展。

扩展 GA
az vm aem delete

删除 Azure 增强型监视扩展。

扩展 GA
az vm aem set

配置 Azure 增强型监视扩展。

扩展 GA
az vm aem verify

验证是否正确配置了 Azure 增强型监视扩展。

扩展 GA
az vm application

管理 VM 的应用程序。

核心 GA
az vm application list

列出 VM 的应用程序。

核心 GA
az vm application set

设置 VM 的应用程序。

核心 GA
az vm assess-patches

评估 VM 上的修补程序。

核心 GA
az vm auto-shutdown

管理 VM 的自动关闭。

核心 GA
az vm availability-set

将资源分组到可用性集中。

核心 GA
az vm availability-set convert

将 Azure 可用性集转换为包含包含托管磁盘的 VM。

核心 GA
az vm availability-set create

创建 Azure 可用性集。

核心 GA
az vm availability-set delete

删除可用性集。

核心 GA
az vm availability-set list

列出可用性集。

核心 GA
az vm availability-set list-sizes

列出可用于在现有可用性集中创建新虚拟机的所有可用虚拟机大小。

核心 GA
az vm availability-set show

获取有关可用性集的信息。

核心 GA
az vm availability-set update

更新 Azure 可用性集。

核心 GA
az vm boot-diagnostics

排查 Azure 虚拟机的启动问题。

核心 GA
az vm boot-diagnostics disable

在 VM 上禁用启动诊断。

核心 GA
az vm boot-diagnostics enable

在 VM 上启用启动诊断。

核心 GA
az vm boot-diagnostics get-boot-log

从 VM 获取启动诊断日志。

核心 GA
az vm boot-diagnostics get-boot-log-uris

获取虚拟机启动诊断日志的 SAS URI。

核心 GA
az vm capture

捕获已停止 VM 的信息。

核心 GA
az vm convert

将具有非托管磁盘的 VM 转换为使用托管磁盘。

核心 GA
az vm create

创建一个 Azure 虚拟机。

核心 GA
az vm deallocate

解除分配 VM,以便不再分配计算资源(费用不再适用)。 状态将从“已停止”更改为“已停止”(已解除分配)。

核心 GA
az vm delete

删除 VM。

核心 GA
az vm diagnostics

配置 Azure 虚拟机诊断扩展。

核心 GA
az vm diagnostics get-default-config

获取 VM 的默认配置设置。

核心 GA
az vm diagnostics set

配置 Azure VM 诊断扩展。

核心 GA
az vm disk

管理附加到 VM 的托管数据磁盘。

核心 GA
az vm disk attach

将托管永久性磁盘附加到 VM。

核心 GA
az vm disk detach

从 VM 分离托管磁盘。

核心 GA
az vm encryption

管理 VM 磁盘的加密。

核心 GA
az vm encryption disable

在 OS 磁盘和/或数据磁盘上禁用磁盘加密。 解密装载的磁盘。

核心 GA
az vm encryption enable

在 OS 磁盘和/或数据磁盘上启用磁盘加密。 加密装载的磁盘。

核心 GA
az vm encryption show

显示加密状态。

核心 GA
az vm extension

管理 VM 上的扩展。

核心 GA
az vm extension delete

用于删除扩展的删除操作。

核心 GA
az vm extension image

查找订阅和区域的可用 VM 扩展。

核心 GA
az vm extension image list

列出有关可用扩展的信息。

核心 GA
az vm extension image list-names

列出可用扩展的名称。

核心 GA
az vm extension image list-versions

列出可用扩展的版本。

核心 GA
az vm extension image show

显示扩展的信息。

核心 GA
az vm extension list

列出附加到 VM 的扩展。

核心 GA
az vm extension set

设置 VM 的扩展。

核心 GA
az vm extension show

显示有关附加到 VM 的扩展的信息。

核心 GA
az vm extension wait

将 CLI 置于等待状态,直到满足虚拟机扩展的条件。

核心 GA
az vm generalize

将 VM 标记为通用化,以便将其映像化为多个部署。

核心 GA
az vm get-instance-view

获取有关 VM 的实例信息。

核心 GA
az vm host

管理虚拟机的专用主机。

核心 GA
az vm host create

创建专用主机。

核心 GA
az vm host delete

删除专用主机。

核心 GA
az vm host get-instance-view

获取有关专用主机的实例信息。

核心 GA
az vm host group

管理专用主机组。

核心 GA
az vm host group create

创建专用主机组。

核心 GA
az vm host group delete

删除专用主机组。

核心 GA
az vm host group get-instance-view

获取专用主机组的实例视图。

核心 GA
az vm host group list

列出专用主机组。

核心 GA
az vm host group show

获取专用主机组的详细信息。

核心 GA
az vm host group update

更新专用主机组。

核心 GA
az vm host list

列出专用主机。

核心 GA
az vm host list-resize-options

列出可以调整指定专用主机大小的所有可用专用主机大小。 注意:提供的专用主机大小可用于仅纵向扩展现有专用主机。

核心 GA
az vm host redeploy

重新部署专用主机。

核心 GA
az vm host resize

调整专用主机的大小。

核心 GA
az vm host restart

重启专用主机。

核心 GA
az vm host show

获取专用主机的详细信息。

核心 GA
az vm host update

更新专用主机。

核心 GA
az vm host wait

将 CLI 置于等待状态,直到满足条件。

核心 GA
az vm identity

管理服务 VM 的服务标识。

核心 GA
az vm identity assign

在 VM 上启用托管服务标识。

核心 GA
az vm identity remove

从 VM 中删除托管服务标识。

核心 GA
az vm identity show

显示 VM 的托管标识信息。

核心 GA
az vm image

有关可用虚拟机映像的信息。

核心 GA
az vm image accept-terms

接受Azure 市场术语,以便映像可用于创建 VM。

核心 已放弃
az vm image list

列出Azure 市场中可用的 VM/VMSS 映像。

核心 GA
az vm image list-offers

列出Azure 市场中提供的 VM 映像产品/服务。

核心 GA
az vm image list-publishers

列出Azure 市场中可用的 VM 映像发布者。

核心 GA
az vm image list-skus

列出Azure 市场中可用的 VM 映像 SKU。

核心 GA
az vm image show

获取Azure 市场中提供的 VM 映像的详细信息。

核心 GA
az vm image terms

管理 Azure 市场映像术语。

核心 GA
az vm image terms accept

接受Azure 市场映像术语,以便使用该映像创建 VM。

核心 GA
az vm image terms cancel

取消Azure 市场图像术语。

核心 GA
az vm image terms show

获取Azure 市场图像术语的详细信息。

核心 GA
az vm install-patches

在 VM 上安装修补程序。

核心 GA
az vm list

列出虚拟机的详细信息。

核心 GA
az vm list-ip-addresses

列出与 VM 关联的 IP 地址。

核心 GA
az vm list-sizes

列出 VM 的可用大小。

核心 GA
az vm list-skus

获取与计算相关的资源 SKU 的详细信息。

核心 GA
az vm list-usage

列出 VM 的可用使用情况资源。

核心 GA
az vm list-vm-resize-options

列出 VM 的可用调整大小选项。

核心 GA
az vm monitor

管理 VM 的监视方面。

核心 GA
az vm monitor log

管理 VM 的 Log Analytics 工作区。

核心 GA
az vm monitor log show

针对与 VM 链接的 Log Analytics 工作区执行查询。

核心 GA
az vm monitor metrics

管理 VM 的指标。

核心 预览
az vm monitor metrics list-definitions

列出 VM 的指标定义。

核心 预览
az vm monitor metrics tail

列出 VM 的指标值。

核心 预览
az vm nic

管理网络接口。 另请参阅 az network nic

核心 GA
az vm nic add

将现有 NIC 添加到 VM。

核心 GA
az vm nic list

列出 VM 上可用的 NIC。

核心 GA
az vm nic remove

从 VM 中删除 NIC。

核心 GA
az vm nic set

配置附加到 VM 的 NIC 的设置。

核心 GA
az vm nic show

显示附加到 VM 的 NIC 的信息。

核心 GA
az vm open-port

将某个 VM 向指定端口上的入站流量开放。

核心 GA
az vm perform-maintenance

在虚拟机上执行维护的操作。

核心 GA
az vm reapply

重新应用 VM。

核心 GA
az vm redeploy

重新部署现有 VM。

核心 GA
az vm reimage

重置映像(升级操作系统)虚拟机。

核心 GA
az vm repair

用于修复 VM 的自动修复命令。

扩展 GA
az vm repair create

创建新的修复 VM,并将源 VM 复制的 OS 磁盘附加为数据磁盘。

扩展 GA
az vm repair list-scripts

列出可用的脚本。 定位。https://github.com/Azure/repair-script-library

扩展 GA
az vm repair repair-and-restore

修复和还原 VM。

扩展 预览
az vm repair reset-nic

重置 VM 来宾 OS 上的网络接口堆栈。 https://docs.microsoft.com/en-us/troubleshoot/azure/virtual-machines/reset-network-interface

扩展 预览
az vm repair restore

将源 VM 的 OS 磁盘替换为修复 VM 中的数据磁盘。

扩展 GA
az vm repair run

在 VM 上运行 GitHub 中已验证的脚本。 用于查看可用脚本的“az vm repair list-scripts”。

扩展 GA
az vm resize

更新 VM 的大小。

核心 GA
az vm restart

重启 VM。

核心 GA
az vm run-command

管理虚拟机上的运行命令。

核心 GA
az vm run-command create

用于创建 run 命令的操作。

核心 GA
az vm run-command delete

用于删除 run 命令的操作。

核心 GA
az vm run-command invoke

在 VM 上执行特定的运行命令。

核心 GA
az vm run-command list

列出 VM 或位置的运行命令。

核心 GA
az vm run-command show

获取特定的运行命令。

核心 GA
az vm run-command update

用于更新运行命令的操作。

核心 GA
az vm run-command wait

将 CLI 置于等待状态,直到满足 res virtual-machine-run-command 的条件。

核心 GA
az vm secret

管理 VM 机密。

核心 GA
az vm secret add

将机密添加到 VM。

核心 GA
az vm secret format

将机密转换为 VM 和 VMSSes 可以使用的形式。

核心 GA
az vm secret list

列出 VM 上的机密。

核心 GA
az vm secret remove

从 VM 中删除机密。

核心 GA
az vm show

获取 VM 的详细信息。

核心 GA
az vm simulate-eviction

模拟现成 VM 的逐出。

核心 GA
az vm start

启动已停止的 VM。

核心 GA
az vm stop

关闭(停止)正在运行的 VM。

核心 GA
az vm unmanaged-disk

管理附加到 VM 的非托管数据磁盘。

核心 GA
az vm unmanaged-disk attach

将非托管永久性磁盘附加到 VM。

核心 GA
az vm unmanaged-disk detach

从 VM 分离非托管磁盘。

核心 GA
az vm unmanaged-disk list

列出 VM 的非托管磁盘。

核心 GA
az vm update

更新 VM 的属性。

核心 GA
az vm user

管理 VM 的用户帐户。

核心 GA
az vm user delete

从 VM 中删除用户帐户。

核心 GA
az vm user reset-ssh

重置 VM 上的 SSH 配置。

核心 GA
az vm user update

更新 VM 的用户帐户。 可以使用它更新 VM 用户的密码或 SSH 密钥值。

核心 GA
az vm wait

将 CLI 置于等待状态,直到满足 VM 的条件。

核心 GA

az vm assess-patches

评估 VM 上的修补程序。

az vm assess-patches [--ids]
                     [--name]
                     [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
                     [--resource-group]
                     [--subscription]

示例

评估 VM 上的修补程序。

az vm assess-patches -g MyResourceGroup -n MyVm

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm auto-shutdown

管理 VM 的自动关闭。

az vm auto-shutdown [--email]
                    [--ids]
                    [--location]
                    [--name]
                    [--off]
                    [--resource-group]
                    [--subscription]
                    [--time]
                    [--webhook]

示例

为 VM 创建自动关闭计划。

az vm auto-shutdown -g MyResourceGroup -n MyVm --time 1730 --email "foo@bar.com" --webhook "https://example.com/"

删除 VM 的自动关闭计划。

az vm auto-shutdown -g MyResourceGroup -n MyVm --off

可选参数

--email

要向其发送通知的电子邮件收件人(可以是分号分隔电子邮件地址的列表)。

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--location -l

Location。 az account list-locations 中的值。 可以使用 az configure --defaults location=<location> 配置默认位置。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--off

关闭 VM 的自动关闭。 将清除配置。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--time

计划每天的 UTC 时间。 格式:hhmm。 示例:1730。

--webhook

通知将发送到的 Webhook URL。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm capture

捕获已停止 VM 的信息。

az vm capture --vhd-name-prefix
              [--ids]
              [--name]
              [--overwrite]
              [--resource-group]
              [--storage-container]
              [--subscription]

示例

解除分配、通用化和捕获已停止的虚拟机。

az vm deallocate -g MyResourceGroup -n MyVm
az vm generalize -g MyResourceGroup -n MyVm
az vm capture -g MyResourceGroup -n MyVm --vhd-name-prefix MyPrefix

解除分配、通用化和捕获多个已停止的虚拟机。

vms_ids=$(az vm list -g MyResourceGroup --query "[].id" -o tsv)
az vm deallocate --ids {vms_ids}
az vm generalize --ids {vms_ids}
az vm capture --ids {vms_ids} --vhd-name-prefix MyPrefix

必需参数

--vhd-name-prefix

为 VM 磁盘指定 VHD 名称前缀。

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--overwrite

覆盖现有磁盘文件。

默认值: True
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--storage-container

用于保存磁盘的存储帐户容器名称。

默认值: vhds
--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm convert

将具有非托管磁盘的 VM 转换为使用托管磁盘。

az vm convert [--ids]
              [--name]
              [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
              [--resource-group]
              [--subscription]

示例

将具有非托管磁盘的 VM 转换为使用托管磁盘。

az vm convert -g MyResourceGroup -n MyVm

将资源组中具有非托管磁盘的所有 VM 转换为使用托管磁盘。

az vm convert --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm create

创建一个 Azure 虚拟机。

az vm create --name
             --resource-group
             [--accelerated-networking {false, true}]
             [--accept-term]
             [--admin-password]
             [--admin-username]
             [--asgs]
             [--assign-identity]
             [--attach-data-disks]
             [--attach-os-disk]
             [--authentication-type {all, password, ssh}]
             [--availability-set]
             [--boot-diagnostics-storage]
             [--capacity-reservation-group]
             [--computer-name]
             [--count]
             [--custom-data]
             [--data-disk-caching]
             [--data-disk-delete-option]
             [--data-disk-encryption-sets]
             [--data-disk-sizes-gb]
             [--disable-integrity-monitoring-autoupgrade]
             [--disk-controller-type {NVMe, SCSI}]
             [--edge-zone]
             [--enable-agent {false, true}]
             [--enable-auto-update {false, true}]
             [--enable-hibernation {false, true}]
             [--enable-hotpatching {false, true}]
             [--enable-integrity-monitoring]
             [--enable-proxy-agent {false, true}]
             [--enable-secure-boot {false, true}]
             [--enable-vtpm {false, true}]
             [--encryption-at-host {false, true}]
             [--ephemeral-os-disk {false, true}]
             [--ephemeral-os-disk-placement {CacheDisk, NvmeDisk, ResourceDisk}]
             [--eviction-policy {Deallocate, Delete}]
             [--generate-ssh-keys]
             [--host]
             [--host-group]
             [--image]
             [--license-type {None, RHEL_BASE, RHEL_BASESAPAPPS, RHEL_BASESAPHA, RHEL_BYOS, RHEL_ELS_6, RHEL_EUS, RHEL_SAPAPPS, RHEL_SAPHA, SLES, SLES_BYOS, SLES_HPC, SLES_SAP, SLES_STANDARD, UBUNTU, UBUNTU_PRO, Windows_Client, Windows_Server}]
             [--location]
             [--max-price]
             [--nic-delete-option]
             [--nics]
             [--no-wait]
             [--nsg]
             [--nsg-rule {NONE, RDP, SSH}]
             [--os-disk-caching {None, ReadOnly, ReadWrite}]
             [--os-disk-delete-option {Delete, Detach}]
             [--os-disk-encryption-set]
             [--os-disk-name]
             [--os-disk-secure-vm-disk-encryption-set]
             [--os-disk-security-encryption-type {DiskWithVMGuestState, NonPersistedTPM, VMGuestStateOnly}]
             [--os-disk-size-gb]
             [--os-type {linux, windows}]
             [--patch-mode {AutomaticByOS, AutomaticByPlatform, ImageDefault, Manual}]
             [--plan-name]
             [--plan-product]
             [--plan-promotion-code]
             [--plan-publisher]
             [--platform-fault-domain]
             [--ppg]
             [--priority {Low, Regular, Spot}]
             [--private-ip-address]
             [--proxy-agent-mode {Audit, Enforce}]
             [--public-ip-address]
             [--public-ip-address-allocation {dynamic, static}]
             [--public-ip-address-dns-name]
             [--public-ip-sku {Basic, Standard}]
             [--role]
             [--scope]
             [--secrets]
             [--security-type {ConfidentialVM, Standard, TrustedLaunch}]
             [--size]
             [--source-disk-restore-point]
             [--source-disk-restore-point-size-gb]
             [--source-resource]
             [--source-resource-size]
             [--specialized {false, true}]
             [--ssh-dest-key-path]
             [--ssh-key-name]
             [--ssh-key-values]
             [--storage-account]
             [--storage-container-name]
             [--storage-sku]
             [--subnet]
             [--subnet-address-prefix]
             [--tags]
             [--ultra-ssd-enabled {false, true}]
             [--use-unmanaged-disk]
             [--user-data]
             [--v-cpus-available]
             [--v-cpus-per-core]
             [--validate]
             [--vmss]
             [--vnet-address-prefix]
             [--vnet-name]
             [--workspace]
             [--zone]

示例

创建具有自动 SSH 身份验证的默认 Ubuntu2204 VM。

az vm create -n MyVm -g MyResourceGroup --image Ubuntu2204

使用映像 URN 创建具有自动 SSH 身份验证的默认 RedHat VM。

az vm create -n MyVm -g MyResourceGroup --image RedHat:RHEL:7-RAW:7.4.2018010506

创建具有专用 IP 地址的默认 Windows Server VM。

az vm create -n MyVm -g MyResourceGroup --public-ip-address "" --image Win2012R2Datacenter

从自定义托管映像创建 VM。

az vm create -g MyResourceGroup -n MyVm --image MyImage

从通用库映像版本创建 VM。

az vm create -g MyResourceGroup -n MyVm --image /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage/versions/1.0.0

从专用库映像版本创建 VM。

az vm create -g MyResourceGroup -n MyVm --image /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage/versions/1.0.0 --specialized

从库映像的最新版本创建 VM

az vm create -g MyResourceGroup -n MyVm --image /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/galleries/myGallery/images/myImage

通过附加到托管操作系统磁盘创建 VM。

az vm create -g MyResourceGroup -n MyVm --attach-os-disk MyOsDisk --os-type linux

通过从 VHD Blob URI 附加到非托管操作系统磁盘来创建 VM。

az vm create -g MyResourceGroup -n MyVm --attach-os-disk https://vhd1234.blob.core.windows.net/vhds/osdisk1234.vhd --os-type linux --use-unmanaged-disk

使用 cloud-init 脚本创建 Debian11 VM 进行配置。 请参阅:https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init.

az vm create -g MyResourceGroup -n MyVm --image Debian11 --custom-data MyCloudInitScript.yml

创建具有 SSH 密钥身份验证和公共 DNS 条目的 Debian11 VM,该条目位于现有虚拟网络和可用性集上。

az vm create -n MyVm -g MyResourceGroup --image Debian11 --vnet-name MyVnet --subnet subnet1 \
    --availability-set MyAvailabilitySet --public-ip-address-dns-name MyUniqueDnsName \
    --ssh-key-values @key-file

创建具有公共 IP 地址、DNS 条目、两个数据磁盘(10GB 和 20GB)的简单 Ubuntu Linux VM,然后生成 RSA ssh 密钥对。

az vm create -n MyVm -g MyResourceGroup --public-ip-address-dns-name MyUniqueDnsName \
    --image Ubuntu2204 --data-disk-sizes-gb 10 20 --size Standard_DS2_v2 \
    --generate-ssh-keys

使用密钥库机密创建 Debian11 VM。

az keyvault certificate create --vault-name vaultname -n cert1 \
  -p "$(az keyvault certificate get-default-policy)"

secrets=$(az keyvault secret list-versions --vault-name vaultname \
  -n cert1 --query "[?attributes.enabled].id" -o tsv)

vm_secrets=$(az vm secret format -s "$secrets")

az vm create -g group-name -n vm-name --admin-username deploy  \
  --image debian11 --secrets "$vm_secrets"

创建具有系统分配标识的 CentOS VM。 VM 将具有有权访问存储帐户的“参与者”角色。

az vm create -n MyVm -g rg1 --image CentOS85Gen2 --assign-identity [system] --scope /subscriptions/99999999-1bf0-4dda-aec3-cb9272f09590/MyResourceGroup/myRG/providers/Microsoft.Storage/storageAccounts/storage1 --role Contributor

创建具有用户分配标识的 Debian11 VM。

az vm create -n MyVm -g rg1 --image Debian11 --assign-identity /subscriptions/99999999-1bf0-4dda-aec3-cb9272f09590/resourcegroups/myRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myID

创建同时具有系统标识和用户分配标识的 Debian11 VM。

az vm create -n MyVm -g rg1 --image Debian11 --assign-identity [system] /subscriptions/99999999-1bf0-4dda-aec3-cb9272f09590/resourcegroups/myRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myID

在当前资源组区域中的可用性区域中创建 VM。

az vm create -n MyVm -g MyResourceGroup --image CentOS85Gen2 --zone 1

创建多个 VM。 在此示例中,将创建 3 个 VM。 它们是 MyVm0、MyVm1、MyVm2。

az vm create -n MyVm -g MyResourceGroup --image CentOS85Gen2 --count 3

从共享库映像创建 VM

az vm create -n MyVm -g MyResourceGroup --image /SharedGalleries/{gallery_unique_name}/Images/{image}/Versions/{version}

从社区库映像创建 VM

az vm create -n MyVm -g MyResourceGroup --image /CommunityGalleries/{gallery_unique_name}/Images/{image}/Versions/{version}

必需参数

--name -n

虚拟机名称。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

可选参数

--accelerated-networking

启用加速网络。 除非指定,否则 CLI 将基于计算机映像和大小启用它。

接受的值: false, true
--accept-term

接受许可协议和隐私声明。

--admin-password

如果身份验证类型为“密码”,则 VM 的密码。

--admin-username

VM 的用户名。 默认值为 OS 的当前用户名。 如果默认值为系统保留,则默认值将设置为 azureuser。 请参阅 https://docs.microsoft.com/rest/api/compute/virtualmachines/createorupdate#osprofile 获取保留值的完整列表。

--asgs

要与 VM 关联的现有应用程序安全组的空间分隔列表。

--assign-identity

接受由空格分隔的系统或用户分配标识。 使用“[system]”来引用系统分配的标识,或使用资源 ID 来引用用户分配的标识。 请查看有关更多示例的帮助。

--attach-data-disks

将现有数据磁盘附加到 VM。 可以使用托管磁盘的名称或 ID 或非托管磁盘 VHD 的 URI。

--attach-os-disk

将现有 OS 磁盘附加到 VM。 可以使用托管磁盘的名称或 ID 或非托管磁盘 VHD 的 URI。

--authentication-type

要用于 VM 的身份验证类型。 默认为 Windows 和适用于 Linux 的 SSH 公钥的密码。 “all”支持 ssh 和密码身份验证。

接受的值: all, password, ssh
--availability-set

要向其添加 VM 的现有可用性集的名称或 ID。 默认情况下,无。

--boot-diagnostics-storage

预先存在的存储帐户名称或其 Blob URI,用于捕获启动诊断。 其 SKU 应是Standard_GRS、Standard_LRS和Standard_RAGRS之一。

--capacity-reservation-group --crg
预览

用于分配的容量预留组的 ID 或名称。 传入“无”以取消关联容量预留组。 请注意,如果要删除已与容量预留组关联的 VM/VMSS,则需要先取消关联容量预留组。

--computer-name

虚拟机的主机 OS 名称。 默认为 VM 的名称。

--count
预览

要创建的虚拟机数。 值范围为 [2, 250],非独占。 如果要创建普通单个 VM,请不要指定此参数。 VM 是并行创建的。 此命令的输出是 VM 数组,而不是单个 VM。 每个 VM 都有自己的公共 IP NIC。 VNET 和 NSG 共享。 建议没有现有的公共 IP、NIC、VNET 和 NSG 位于资源组中。 指定 --count 时,--attach-data-disks、--attach-os-disk、 --boot-diagnostics-storage、--computer-name、--host、--host-group、--os-disk-name、--private-ip-address、--public-ip-address、--public-ip-address-dns-name、--storage-account、--storage-container-name、--subnet、--use-unmanaged-disk、--vnet-name。

--custom-data

自定义 init 脚本文件或文本(cloud-init、cloud-config 等)。

--data-disk-caching

数据磁盘的存储缓存类型,包括“None”、“ReadOnly”、“ReadWrite”等。使用单一值应用于所有磁盘,或者用于 <lun>=<vaule1> <lun>=<value2> 配置单个磁盘。

--data-disk-delete-option

指定在删除 VM 时是否应删除或分离数据磁盘。 如果附加了单个数据磁盘,则允许的值为 Delete 和 Detach。 对于附加多个数据磁盘,请使用“<data_disk>=Delete <data_disk2>=Detach”配置每个磁盘。

--data-disk-encryption-sets

数据磁盘的磁盘加密集的名称或 ID(以空格分隔)。

--data-disk-sizes-gb

要创建的空间分隔空托管数据磁盘大小(以 GB 为单位)。

--disable-integrity-monitoring-autoupgrade

为已启用受信任启动的 VM 和 VMSS 禁用来宾证明扩展的自动升级。

默认值: False
--disk-controller-type
预览

指定为 VM 或 VMSS 配置的磁盘控制器类型。

接受的值: NVMe, SCSI
--edge-zone

边缘区域的名称。

--enable-agent

指示是否应在虚拟机上预配虚拟机代理。 如果未指定此属性,默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。

接受的值: false, true
--enable-auto-update

指示是否为 Windows 虚拟机启用了自动更新。

接受的值: false, true
--enable-hibernation

在 VM 上启用或禁用休眠功能的标志。

接受的值: false, true
--enable-hotpatching

无需重新启动即可修补 VM。 --enable-agent 必须设置,并且 --patch-mode 必须设置为 AutomaticByPlatform。

接受的值: false, true
--enable-integrity-monitoring

启用安装Microsoft支持的安全来宾证明扩展,并为启用了受信任启动的 VM 和 VMSS 启用系统分配标识。

默认值: False
--enable-proxy-agent

指定是否应在虚拟机或虚拟机规模集上启用代理代理功能。

接受的值: false, true
--enable-secure-boot

启用安全启动。

接受的值: false, true
--enable-vtpm

启用 vTPM。

接受的值: false, true
--encryption-at-host

为 VM 或 VMSS 启用主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。

接受的值: false, true
--ephemeral-os-disk

允许直接在主机节点上创建 OS 磁盘,从而提供本地磁盘性能和更快的 VM/VMSS 重置映像时间。

接受的值: false, true
--ephemeral-os-disk-placement --ephemeral-placement

仅在与 --ephemeral-os-disk 一起使用时适用。 允许选择临时 OS 磁盘预配位置。

接受的值: CacheDisk, NvmeDisk, ResourceDisk
--eviction-policy

现成优先级虚拟机的逐出策略。 默认逐出策略是现成优先级虚拟机的解除分配。

接受的值: Deallocate, Delete
--generate-ssh-keys

如果缺少 SSH 公钥和专用 RSA 密钥文件,请生成 SSH 公钥和专用 RSA 密钥文件。 密钥将存储在 ~/.ssh 目录中。

默认值: False
--host
预览

VM 将驻留的专用主机的资源 ID。 --host 和 --host-group 不能一起使用。

--host-group
预览

VM 将驻留的专用主机组的名称或资源 ID。 --host 和 --host-group 不能一起使用。

--image

操作系统映像的名称作为 URN 别名、URN、自定义映像名称或 ID、自定义映像版本 ID 或 VHD Blob URI。 此外,它还支持共享库映像。 请使用映像别名,包括要使用的发行版的版本。 例如:请使用 Debian11 而不是 Debian。 除非使用 --attach-os-disk. 有效的 URN 格式:“Publisher:Offer:Sku:Version”,否则此参数是必需的。 有关详细信息,请参阅 https://docs.microsoft.com/azure/virtual-machines/linux/cli-ps-findimage

值来源: az sig image-version show-shared, az vm image list, az vm image show
--license-type

指定 Windows 映像或磁盘已在本地获得许可。 若要为 Windows Server 启用Azure 混合权益,请使用“Windows_Server”。 若要为 Windows 10 启用多租户托管权限,请使用“Windows_Client”。 有关详细信息,请参阅 Azure Windows VM 联机文档。

接受的值: None, RHEL_BASE, RHEL_BASESAPAPPS, RHEL_BASESAPHA, RHEL_BYOS, RHEL_ELS_6, RHEL_EUS, RHEL_SAPAPPS, RHEL_SAPHA, SLES, SLES_BYOS, SLES_HPC, SLES_SAP, SLES_STANDARD, UBUNTU, UBUNTU_PRO, Windows_Client, Windows_Server
--location -l

在其中创建 VM 和相关资源的位置。 如果未配置默认位置,则默认为资源组的位置。

--max-price
预览

你愿意支付现成 VM/VMSS 的最高价格(以美元为单位)。 -1 表示不应出于价格原因逐出现成 VM/VMSS。

--nic-delete-option

指定删除 VM 时网络接口发生的情况。 使用单一值应用于所有资源,或使用 = 为单个资源配置删除行为。 可能的选项为“删除”和“分离”。

--nics

要附加到 VM 的现有 NIC 的名称或 ID。 第一个 NIC 将指定为主要 NIC。 如果省略,将创建新的 NIC。 如果指定了现有 NIC,请不要指定子网、VNet、公共 IP 或 NSG。

--no-wait

不等待长时间运行的操作完成。

默认值: False
--nsg

创建新网络安全组(默认)或引用现有网络安全组时要使用的名称。 还可以使用 PowerShell 或 --% 运算符按 ID 引用现有 NSG,或者为 Azure CLI 中的 none 指定“””。

--nsg-rule

创建新 NSG 时要创建的 NSG 规则。 默认为打开端口,以允许 Windows 上的 RDP,并允许 Linux 上的 SSH。 NONE 表示无 NSG 规则。

接受的值: NONE, RDP, SSH
--os-disk-caching

VM OS 磁盘的存储缓存类型。 默认值:ReadWrite。

接受的值: None, ReadOnly, ReadWrite
--os-disk-delete-option

指定删除 VM 时托管磁盘的行为,即是删除还是分离托管磁盘。

接受的值: Delete, Detach
--os-disk-encryption-set

OS 磁盘的磁盘加密集的名称或 ID。

--os-disk-name

新 VM OS 磁盘的名称。

--os-disk-secure-vm-disk-encryption-set

为用于客户托管密钥加密的机密 VM OS 磁盘和 VM 来宾 Blob 的托管磁盘指定客户托管磁盘加密集资源 ID 或名称。

--os-disk-security-encryption-type

指定 OS 托管磁盘的加密类型。

接受的值: DiskWithVMGuestState, NonPersistedTPM, VMGuestStateOnly
--os-disk-size-gb

要创建的 OS 磁盘大小(以 GB 为单位)。

--os-type

在自定义 VHD 上安装的 OS 类型。 指定 URN 或 URN 别名时请勿使用。

接受的值: linux, windows
--patch-mode

对 IaaS 虚拟机进行来宾内修补的模式。 Windows VM 允许的值:AutomaticByOS、AutomaticByPlatform、Manual。 Linux VM 允许的值:AutomaticByPlatform、ImageDefault。 手动 - 控制对虚拟机的修补程序的应用程序。 为此,请在 VM 中手动应用修补程序。 在此模式下,自动更新处于禁用状态;参数 --enable-auto-update 必须为 false。 AutomaticByOS - 虚拟机将由 OS 自动更新。 参数 --enable-auto-update 必须为 true。 AutomaticByPlatform - 虚拟机将由 OS 自动更新。 ImageDefault - 使用虚拟机的默认修补配置。 参数 --enable-agent 和 --enable-auto-update 必须为 true。

接受的值: AutomaticByOS, AutomaticByPlatform, ImageDefault, Manual
--plan-name

计划名称。

--plan-product

规划产品。

--plan-promotion-code

计划促销代码。

--plan-publisher

计划发布者。

--platform-fault-domain

指定要在其中创建虚拟机的规模集逻辑容错域。 默认情况下,虚拟机将自动分配给容错域,该容错域最适合跨可用容错域保持平衡。 这仅适用于设置此虚拟机的 virtualMachineScaleSet 属性。 引用的虚拟机规模集必须具有平台容错域计数。 创建虚拟机后,无法更新此属性。 可以在虚拟机实例视图中查看容错域分配。

--ppg

VM 应与之关联的邻近放置组的名称或 ID。

--priority

优先级。 使用“Spot”以经济高效的方式运行短期工作负荷。 将来将弃用“低”枚举。 请使用“现成”部署 Azure 现成 VM 和/或 VMSS。 默认为“常规”。

接受的值: Low, Regular, Spot
--private-ip-address

静态专用 IP 地址(例如 10.0.0.5)。

--proxy-agent-mode

指定启用该功能时代理将执行的模式。

接受的值: Audit, Enforce
--public-ip-address

创建一个(默认)或引用现有 IP 地址时公共 IP 地址的名称。 还可以使用 PowerShell 或 --% 运算符通过 ID 引用现有公共 IP,或者为“无”(“”)指定“ 。 对于使用 powershell core 版本 7.3.4 的 Azure CLI,请指定或“”(--public-ip-address 或 --public-ip-address“)。

--public-ip-address-allocation
接受的值: dynamic, static
--public-ip-address-dns-name

新创建的公共 IP 的全局唯一 DNS 名称。

--public-ip-sku

公共 IP SKU。 仅当公共 IP 为“标准”时,才支持在边缘区域创建公共 IP。

接受的值: Basic, Standard
默认值: Standard
--role

系统分配的标识将具有的角色名称或 ID。

--scope

系统分配的标识可以访问的范围。

--secrets

一个或多个密钥库机密作为 JSON 字符串或文件,通过@{path}包含 [{ "sourceVault": { "id": "value" }, "vaultCertificates": [{ "certificateUrl": "value", "certificateStore": "cert store name (only on windows)"}] }]

--security-type

指定虚拟机的安全类型。

接受的值: ConfidentialVM, Standard, TrustedLaunch
--size

要创建的 VM 大小。 请参阅 https://azure.microsoft.com/pricing/details/virtual-machines/ 大小信息。

默认值: Standard_DS1_v2
值来源: az vm list-sizes
--source-disk-restore-point --source-disk-rp

从磁盘还原点创建数据磁盘。 可以使用磁盘还原点的 ID。

--source-disk-restore-point-size-gb --source-rp-size

源磁盘还原点的大小(以 GB 为单位)。

--source-resource --source-snapshots-or-disks

从快照或其他磁盘创建数据磁盘。 可以使用磁盘或快照的 ID。

--source-resource-size --source-snapshots-or-disks-size-gb

源磁盘的大小(以 GB 为单位)。

--specialized

指示源映像是否专用化。

接受的值: false, true
--ssh-dest-key-path

SSH 密钥的 VM 上的目标文件路径。 如果文件已存在,则指定的键将追加到该文件中。 由于 Linux 预配代理中的已知问题,SSH 公钥的目标路径目前仅限于其默认值“/home/username/.ssh/authorized_keys”。

--ssh-key-name

将其用作虚拟机中的公钥。 它应该是 Azure 中的现有 SSH 密钥资源。

--ssh-key-values

SSH 公钥或公钥文件路径的空间分隔列表。

--storage-account

仅在与 --use-unmanaged-disk 一起使用时适用。 创建新存储帐户或引用现有存储帐户时要使用的名称。 如果省略,将使用同一资源组和位置中的相应存储帐户,或创建一个新存储帐户。

--storage-container-name

仅在与 --use-unmanaged-disk 一起使用时适用。 VM OS 磁盘的存储容器的名称。 默认值:vhd。

--storage-sku

要保留 VM 的存储帐户的 SKU。 使用将应用于所有磁盘的单一 SKU,或指定单个磁盘。 用法:[--storage-sku SKU | --storage-sku ID=SKU ID=SKU=SKU...],其中每个 ID 为“os”或 0 索引 lun。 允许的值:Standard_LRS、Premium_LRS、StandardSSD_LRS、UltraSSD_LRS、Premium_ZRS、StandardSSD_ZRS、PremiumV2_LRS。

--subnet

创建新 VNet 或引用现有 VNet 时子网的名称。 还可以按 ID 引用现有子网。 如果省略 vnet 名称和子网,将自动选择适当的 VNet 和子网,或者将创建新的 VNet 和子网。

--subnet-address-prefix

创建采用 CIDR 格式的新 VNet 时要使用的子网 IP 地址前缀。

默认值: 10.0.0.0/24
--tags

空格分隔标记:key[=value] [key[=value] ...]。使用“”清除现有标记。

--ultra-ssd-enabled

启用或禁用具有 1 个或多个具有 UltraSSD_LRS 存储帐户的托管数据磁盘的功能。

接受的值: false, true
--use-unmanaged-disk

不要使用托管磁盘来保留 VM。

默认值: False
--user-data

VM 的 UserData。 它可以作为文件或字符串传入。

--v-cpus-available

指定可用的 vCPU 数。

--v-cpus-per-core

指定 vCPU 与物理核心的比率。 将此属性设置为 1 也意味着禁用超线程处理。

--validate

生成并验证 ARM 模板,而无需创建任何资源。

默认值: False
--vmss

应向其分配虚拟机的现有虚拟机规模集的名称或 ID。 默认情况下,无。

--vnet-address-prefix

以 CIDR 格式创建新 VNet 时要使用的 IP 地址前缀。

默认值: 10.0.0.0/16
--vnet-name

创建新虚拟网络或引用现有虚拟网络时的名称。

--workspace
预览

Log Analytics 工作区的名称或 ID。 如果通过工作区名称指定工作区,则工作区应与 VM 位于同一资源组中,否则将创建新的工作区。

--zone -z

要在其中预配资源的可用性区域。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm deallocate

解除分配 VM,以便不再分配计算资源(费用不再适用)。 状态将从“已停止”更改为“已停止”(已解除分配)。

az vm deallocate [--hibernate {0, 1, f, false, n, no, t, true, y, yes}]
                 [--ids]
                 [--name]
                 [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
                 [--resource-group]
                 [--subscription]

示例

解除分配、通用化和捕获已停止的虚拟机。

az vm deallocate -g MyResourceGroup -n MyVm
az vm generalize -g MyResourceGroup -n MyVm
az vm capture -g MyResourceGroup -n MyVm --vhd-name-prefix MyPrefix

解除分配、通用化和捕获多个已停止的虚拟机。

az vm deallocate --ids vms_ids
az vm generalize --ids vms_ids
az vm capture --ids vms_ids --vhd-name-prefix MyPrefix

解除分配 VM。

az vm deallocate --name MyVm --no-wait --resource-group MyResourceGroup

可选参数

--hibernate

用于休眠虚拟机的可选参数。 (预览版中的功能)。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm delete

删除 VM。

az vm delete [--force-deletion]
             [--ids]
             [--name]
             [--no-wait]
             [--resource-group]
             [--subscription]
             [--yes]

示例

在不提示确认的情况下删除 VM。

az vm delete -g MyResourceGroup -n MyVm --yes

删除资源组中的所有 VM。

az vm delete --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--force-deletion

强制删除虚拟机的可选参数。 默认值为无。

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--yes -y

不提示确认。

默认值: False
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm generalize

将 VM 标记为通用化,以便将其映像化为多个部署。

az vm generalize [--ids]
                 [--name]
                 [--resource-group]
                 [--subscription]

示例

解除分配、通用化和捕获已停止的虚拟机。

az vm deallocate -g MyResourceGroup -n MyVm
az vm generalize -g MyResourceGroup -n MyVm
az vm capture -g MyResourceGroup -n MyVm --vhd-name-prefix MyPrefix

解除分配、通用化和捕获多个已停止的虚拟机。

az vm deallocate --ids vms_ids
az vm generalize --ids vms_ids
az vm capture --ids vms_ids --vhd-name-prefix MyPrefix

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm get-instance-view

获取有关 VM 的实例信息。

az vm get-instance-view [--ids]
                        [--name]
                        [--resource-group]
                        [--subscription]

示例

使用资源组和名称获取 VM 的实例视图信息。

az vm get-instance-view -g MyResourceGroup -n MyVm

获取资源组中所有 VM 的实例视图。

az vm get-instance-view --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm install-patches

在 VM 上安装修补程序。

az vm install-patches --maximum-duration
                      --reboot-setting {Always, IfRequired, Never}
                      [--classifications-to-include-linux {Critical, Other, Security}]
                      [--classifications-to-include-win {Critical, Definition, FeaturePack, Security, ServicePack, Tools, UpdateRollUp, Updates}]
                      [--exclude-kbs-requiring-reboot {false, true}]
                      [--ids]
                      [--kb-numbers-to-exclude]
                      [--kb-numbers-to-include]
                      [--max-patch-publish-date]
                      [--name]
                      [--no-wait]
                      [--package-name-masks-to-exclude]
                      [--package-name-masks-to-include]
                      [--resource-group]
                      [--subscription]

示例

在 Windows VM 上安装修补程序,允许最长时间为 4 小时,并在软件更新操作期间根据需要重新启动 VM。

az vm install-patches -g MyResourceGroup -n MyVm --maximum-duration PT4H --reboot-setting IfRequired --classifications-to-include-win Critical Security --exclude-kbs-requiring-reboot true

在 Linux VM 上安装修补程序,允许最长时间为 4 小时,并在软件更新操作期间根据需要重新启动 VM。

az vm install-patches -g MyResourceGroup -n MyVm --maximum-duration PT4H --reboot-setting IfRequired --classifications-to-include-linux Critical

必需参数

--maximum-duration

指定操作将运行的最大时间量。 它必须是符合 ISO 8601 的持续时间字符串,例如 PT4H(4 小时)。

--reboot-setting

定义在软件更新操作期间重启 VM 是可以接受的。

接受的值: Always, IfRequired, Never

可选参数

--classifications-to-include-linux

要包括 Linux VM 的分类的空间分隔列表。

接受的值: Critical, Other, Security
--classifications-to-include-win

要包括的 Windows VM 的分类的空间分隔列表。

接受的值: Critical, Definition, FeaturePack, Security, ServicePack, Tools, UpdateRollUp, Updates
--exclude-kbs-requiring-reboot

筛选掉未设置“NeverReboots”的重新启动行为的 KB。 仅适用于 Windows VM。

接受的值: false, true
--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--kb-numbers-to-exclude

要排除在修补操作中的 KB 的空间分隔列表。 仅适用于 Windows VM。

--kb-numbers-to-include

要包括在修补操作中的 KB 的空间分隔列表。 仅适用于 Windows VM。

--max-patch-publish-date

此给定最大发布日期或之前发布的安装修补程序的 ISO 8601 时间值。 格式:date (yyyy-mm-dd) 时间 (hh:mm:ss.xxxxx) 时区 (+/-hh:mm)。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--package-name-masks-to-exclude

要排除在修补操作中的包的空间分隔列表。 格式:packageName_packageVersion。 仅适用于 Linux VM。

--package-name-masks-to-include

要包含在修补操作中的包的空间分隔列表。 格式:packageName_packageVersion。 仅适用于 Linux VM。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list

列出虚拟机的详细信息。

--resource-group 可以将空字符串作为参数传入,该参数将输出订阅下的所有 VM 信息。 有关查询有关虚拟机的详细信息,请参阅https://docs.microsoft.com/cli/azure/query-az-cli2

az vm list [--resource-group]
           [--show-details]
           [--vmss]

示例

列出所有 VM。

az vm list

按资源组列出所有 VM。

az vm list -g MyResourceGroup

按资源组列出包含详细信息的所有 VM。

az vm list -g MyResourceGroup -d

可选参数

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--show-details -d

显示公共 IP 地址、FQDN 和电源状态。 命令将运行缓慢。

默认值: False
--vmss

列出特定 VMSS 中的 VM 实例。 请指定 VMSS ID 或 VMSS 名称。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list-ip-addresses

列出与 VM 关联的 IP 地址。

az vm list-ip-addresses [--ids]
                        [--name]
                        [--resource-group]
                        [--subscription]

示例

获取 VM 的 IP 地址。

az vm list-ip-addresses -g MyResourceGroup -n MyVm

获取资源组中所有 VM 的 IP 地址。

az vm list-ip-addresses --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list-sizes

列出 VM 的可用大小。

az vm list-sizes [--ids]
                 [--location]
                 [--subscription]

示例

列出美国西部区域中的可用 VM 大小。

az vm list-sizes -l westus

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--location -l

Location。 az account list-locations 中的值。 可以使用 az configure --defaults location=<location> 配置默认位置。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list-skus

获取与计算相关的资源 SKU 的详细信息。

此命令包含订阅级别限制,提供最准确的信息。

az vm list-skus [--all {false, true}]
                [--location]
                [--resource-type]
                [--size]
                [--zone {false, true}]

示例

列出美国西部区域的所有 SKU。

az vm list-skus -l westus

列出支持可用性区域的美国东部 2 区域中的所有可用 VM 大小。

az vm list-skus -l eastus2 --zone

列出美国东部 2 区域中的所有可用 VM 大小,该区域支持名称为“standard_ds1...”的可用性区域。

az vm list-skus -l eastus2 --zone --size standard_ds1

列出美国西部区域中的可用性集相关 SKU 信息。

az vm list-skus -l westus --resource-type availabilitySets

可选参数

--all

显示所有信息,包括当前订阅下不可用的 VM 大小。

接受的值: false, true
--location -l

Location。 az account list-locations 中的值。 可以使用 az configure --defaults location=<location> 配置默认位置。

--resource-type -r

资源类型,例如“availabilitySets”、“snapshots”、“disks”等。

--size -s

大小名称,接受部分名称。

--zone -z

显示支持可用性区域的 SKU。

接受的值: false, true
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list-usage

列出 VM 的可用使用情况资源。

az vm list-usage --location

示例

获取美国西部区域的计算资源使用情况。

az vm list-usage -l westus

必需参数

--location -l

Location。 az account list-locations 中的值。 可以使用 az configure --defaults location=<location> 配置默认位置。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm list-vm-resize-options

列出 VM 的可用调整大小选项。

az vm list-vm-resize-options [--ids]
                             [--name]
                             [--resource-group]
                             [--subscription]

示例

列出用于调整大小的所有可用 VM 大小。

az vm list-vm-resize-options -g MyResourceGroup -n MyVm

列出资源组中所有 VM 的可用大小。

az vm list-vm-resize-options --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm open-port

将某个 VM 向指定端口上的入站流量开放。

将安全规则添加到附加到 VM 网络接口(NIC)或子网的网络安全组(NSG)。 将使用现有的 NSG,或者将创建一个新 NSG。 规则名称为“open-port-{port}”,并将覆盖具有此名称的现有规则。 对于多 NIC VM 或更精细的控制,请直接使用适当的网络命令(nsg 规则创建等)。

az vm open-port --port
                [--apply-to-subnet]
                [--ids]
                [--name]
                [--nsg-name]
                [--priority]
                [--resource-group]
                [--subscription]

示例

将 VM 上的所有端口打开到入站流量。

az vm open-port -g MyResourceGroup -n MyVm --port '*'

在 VM 上打开一系列端口,以最高优先级的入站流量。

az vm open-port -g MyResourceGroup -n MyVm --port 80-100 --priority 100

打开具有最高优先级的入站流量的端口 555、557、558 和 559。

az vm open-port -g MyResourceGroup -n MyVm --port 555,557-559 --priority 100

打开资源组中所有 VM 的所有端口。

az vm open-port --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv) --port '*'

必需参数

--port

要打开入站流量的端口或端口范围(例如:80-100)。 使用“*”允许发到所有端口的流量。 使用逗号分隔值指定多个端口或端口范围。

可选参数

--apply-to-subnet

允许子网上的入站流量,而不是 NIC。

默认值: False
--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

要打开入站流量的虚拟机的名称。

--nsg-name

要创建的网络安全组的名称(如果不存在)。 如果 NSG 已存在,则忽略。

--priority

规则优先级,介于 100(最高优先级)和 4096 之间(最低优先级)。 对于集合中的每个规则,必须是唯一的。

默认值: 900
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm perform-maintenance

在虚拟机上执行维护的操作。

az vm perform-maintenance [--ids]
                          [--name]
                          [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
                          [--resource-group]
                          [--subscription]

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm reapply

重新应用 VM。

az vm reapply [--ids]
              [--name]
              [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
              [--resource-group]
              [--subscription]

示例

重新应用 VM。

az vm reapply -g MyResourceGroup -n MyVm

重新应用资源组中的所有 VM。

az vm reapply --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm redeploy

重新部署现有 VM。

az vm redeploy [--ids]
               [--name]
               [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
               [--resource-group]
               [--subscription]

示例

重新部署 VM。

az vm redeploy -g MyResourceGroup -n MyVm

重新部署资源组中的所有 VM。

az vm redeploy --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm reimage

重置映像(升级操作系统)虚拟机。

对于具有临时 OS 磁盘的虚拟机,重映像(升级操作系统)虚拟机将重置为初始状态。 注意:保留旧 OS 磁盘取决于 OS 磁盘 deleteOption 的值。 如果 deleteOption 是分离的,则会在重置映像后保留旧的 OS 磁盘。 如果 deleteOption 被删除,则会在重置映像后删除旧的 OS 磁盘。 在执行重置映像之前,应相应地更新 OS 磁盘的 deleteOption。

az vm reimage [--admin-password]
              [--custom-data]
              [--exact-version]
              [--ids]
              [--name]
              [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
              [--resource-group]
              [--subscription]
              [--temp-disk {0, 1, f, false, n, no, t, true, y, yes}]

示例

重置虚拟机映像。

az vm reimage --name MyVm --resource-group MyResourceGroup --admin-password MyPassword --custom-data "dGVzdA==" --temp-disk false --exact-version 0.1

可选参数

--admin-password

指定管理员帐户的密码。

--custom-data

指定自定义数据的 base-64 编码字符串。

--exact-version

以十进制数指定,OS 磁盘应重新映像到的版本。 如果未提供确切版本,OS 磁盘将重新映像到现有版本的 OS 磁盘。

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--temp-disk

指定是否重置临时磁盘的映像。 默认值:false。 注意:只有具有临时 OS 磁盘的 VM/VMSS 才支持此临时磁盘重置映像参数。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm resize

更新 VM 的大小。

az vm resize --size
             [--ids]
             [--name]
             [--no-wait]
             [--resource-group]
             [--subscription]

示例

调整 VM 的大小。

az vm resize -g MyResourceGroup -n MyVm --size Standard_DS3_v2

调整资源组中的所有 VM 的大小。

az vm resize --size Standard_DS3_v2 --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

必需参数

--size

VM 大小。

值来源: az vm list-vm-resize-options

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm restart

重启 VM。

az vm restart [--force]
              [--ids]
              [--name]
              [--no-wait]
              [--resource-group]
              [--subscription]

示例

重启 VM。

az vm restart -g MyResourceGroup -n MyVm

重启资源组中的所有 VM。

az vm restart --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--force

通过重新部署 VM 来强制重启 VM。 如果 VM 无响应,请使用。

默认值: False
--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm show

获取 VM 的详细信息。

az vm show [--ids]
           [--include-user-data]
           [--name]
           [--resource-group]
           [--show-details]
           [--subscription]

示例

显示有关 VM 的信息。

az vm show -g MyResourceGroup -n MyVm -d

获取资源组中所有 VM 的详细信息。

az vm show -d --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--include-user-data -u

在查询结果中包含用户数据属性。

默认值: False
--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--show-details -d

显示公共 IP 地址、FQDN 和电源状态。 命令将运行缓慢。

默认值: False
--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm simulate-eviction

模拟现成 VM 的逐出。

az vm simulate-eviction [--ids]
                        [--name]
                        [--resource-group]
                        [--subscription]

示例

模拟现成 VM 的逐出。

az vm simulate-eviction --resource-group MyResourceGroup --name MyVm

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm start

启动已停止的 VM。

az vm start [--ids]
            [--name]
            [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
            [--resource-group]
            [--subscription]

示例

启动已停止的 VM。

az vm start -g MyResourceGroup -n MyVm

启动资源组中的所有 VM。

az vm start --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

启动已停止的 VM。

az vm start --name MyVm --no-wait --resource-group MyResourceGroup

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name --vm-name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

接受的值: 0, 1, f, false, n, no, t, true, y, yes
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm stop

关闭(停止)正在运行的 VM。

VM 将继续计费。 若要避免这种情况,可以通过“az vm deallocate”解除分配 VM。

az vm stop [--ids]
           [--name]
           [--no-wait]
           [--resource-group]
           [--skip-shutdown]
           [--subscription]

示例

关闭(停止)正在运行的 VM。

az vm stop --resource-group MyResourceGroup --name MyVm

在不关闭的情况下关闭正在运行的 VM。

az vm stop --resource-group MyResourceGroup --name MyVm --skip-shutdown

关闭资源组中的 VM。

az vm stop --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--skip-shutdown

立即跳过关闭和关闭电源。

默认值: False
--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm update

更新 VM 的属性。

使用对应于“az vm show”的路径更新 VM 对象和属性。

az vm update [--add]
             [--capacity-reservation-group]
             [--disk-caching]
             [--disk-controller-type {NVMe, SCSI}]
             [--enable-hibernation {false, true}]
             [--enable-proxy-agent {false, true}]
             [--enable-secure-boot {false, true}]
             [--enable-vtpm {false, true}]
             [--ephemeral-os-disk-placement {CacheDisk, NvmeDisk, ResourceDisk}]
             [--force-string]
             [--host]
             [--host-group]
             [--ids]
             [--license-type {None, RHEL_BASE, RHEL_BASESAPAPPS, RHEL_BASESAPHA, RHEL_BYOS, RHEL_ELS_6, RHEL_EUS, RHEL_SAPAPPS, RHEL_SAPHA, SLES, SLES_BYOS, SLES_HPC, SLES_SAP, SLES_STANDARD, UBUNTU, UBUNTU_PRO, Windows_Client, Windows_Server}]
             [--max-price]
             [--name]
             [--no-wait]
             [--os-disk]
             [--ppg]
             [--priority {Low, Regular, Spot}]
             [--proxy-agent-mode {Audit, Enforce}]
             [--remove]
             [--resource-group]
             [--security-type {TrustedLaunch}]
             [--set]
             [--size]
             [--subscription]
             [--ultra-ssd-enabled {false, true}]
             [--user-data]
             [--v-cpus-available]
             [--v-cpus-per-core]
             [--workspace]
             [--write-accelerator]

示例

添加或更新标记。

az vm update -n name -g group --set tags.tagName=tagValue

删除标记。

az vm update -n name -g group --remove tags.tagName

设置 VM 的主 NIC。

az vm update -n name -g group --set networkProfile.networkInterfaces[1].primary=false networkProfile.networkInterfaces[0].primary=true

将新的非主 NIC 添加到 VM。

az vm update -n name -g group --add networkProfile.networkInterfaces primary=false id={NIC_ID}

从 VM 中删除第四个 NIC。

az vm update -n name -g group --remove networkProfile.networkInterfaces 3

将现有 VM 添加到专用主机

az vm deallocate -n name -g group
az vm update -n name -g group --host my-host
az vm start -n name -g group

将现有 VM 添加到专用主机组

az vm deallocate -n name -g group
az vm update -n name -g group --host-group my-host-group
az vm start -n name -g group

可选参数

--add

通过指定路径和键值对将对象添加到对象列表。 示例:--add property.listProperty <key=value, string or JSON string>

默认值: []
--capacity-reservation-group --crg
预览

用于分配的容量预留组的 ID 或名称。 传入“无”以取消关联容量预留组。 请注意,如果要删除已与容量预留组关联的 VM/VMSS,则需要先取消关联容量预留组。

--disk-caching

使用单一值可应用于各个磁盘,例如“os=ReadWrite 0=None 1=ReadOnly”应启用更新 os 磁盘和 2 个数据磁盘。

--disk-controller-type
预览

指定为 VM 或 VMSS 配置的磁盘控制器类型。

接受的值: NVMe, SCSI
--enable-hibernation

在 VM 上启用或禁用休眠功能的标志。

接受的值: false, true
--enable-proxy-agent

指定是否应在虚拟机或虚拟机规模集上启用代理代理功能。

接受的值: false, true
--enable-secure-boot

启用安全启动。

接受的值: false, true
--enable-vtpm

启用 vTPM。

接受的值: false, true
--ephemeral-os-disk-placement --ephemeral-placement

仅在与 --size 一起使用时适用。 允许选择临时 OS 磁盘预配位置。

接受的值: CacheDisk, NvmeDisk, ResourceDisk
--force-string

使用“set”或“add”时,保留字符串文本,而不是尝试转换为 JSON。

默认值: False
--host
预览

VM 将驻留的专用主机的资源 ID。 --host 和 --host-group 不能一起使用。 应在更新之前解除分配 VM,并在更新后启动 VM。 请查看有关更多示例的帮助。

--host-group
预览

VM 将驻留的专用主机组的名称或资源 ID。 --host 和 --host-group 不能一起使用。 应在更新之前解除分配 VM,并在更新后启动 VM。 请查看有关更多示例的帮助。

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--license-type

指定 Windows 映像或磁盘已在本地获得许可。 若要为 Windows Server 启用Azure 混合权益,请使用“Windows_Server”。 若要为 Windows 10 启用多租户托管权限,请使用“Windows_Client”。 有关详细信息,请参阅 Azure Windows VM 联机文档。

接受的值: None, RHEL_BASE, RHEL_BASESAPAPPS, RHEL_BASESAPHA, RHEL_BYOS, RHEL_ELS_6, RHEL_EUS, RHEL_SAPAPPS, RHEL_SAPHA, SLES, SLES_BYOS, SLES_HPC, SLES_SAP, SLES_STANDARD, UBUNTU, UBUNTU_PRO, Windows_Client, Windows_Server
--max-price
预览

你愿意支付现成 VM/VMSS 的最高价格(以美元为单位)。 -1 表示不应出于价格原因逐出现成 VM/VMSS。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--no-wait

不等待长时间运行的操作完成。

默认值: False
--os-disk

要交换到的托管 OS 磁盘 ID 或名称。

--ppg

VM 应与之关联的邻近放置组的名称或 ID。

--priority

优先级。 使用“Spot”以经济高效的方式运行短期工作负荷。 将来将弃用“低”枚举。 请使用“现成”部署 Azure 现成 VM 和/或 VMSS。 默认为“常规”。

接受的值: Low, Regular, Spot
--proxy-agent-mode

指定启用该功能时代理将执行的模式。

接受的值: Audit, Enforce
--remove

从列表中删除属性或元素。 示例: --remove property.list <indexToRemove> OR --remove propertyToRemove.

默认值: []
--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--security-type

指定虚拟机的安全类型。

接受的值: TrustedLaunch
--set

通过指定要设置的属性路径和值来更新对象。 示例:--set property1.property2=<value>

默认值: []
--size
预览

虚拟机的新大小。 请参阅 https://azure.microsoft.com/pricing/details/virtual-machines/ 大小信息。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--ultra-ssd-enabled

启用或禁用具有 1 个或多个具有 UltraSSD_LRS 存储帐户的托管数据磁盘的功能。

接受的值: false, true
--user-data

VM 的 UserData。 它可以作为文件或字符串传入。 如果传入空字符串,将删除现有值。

--v-cpus-available

指定可用的 vCPU 数。

--v-cpus-per-core

指定 vCPU 与物理核心的比率。 将此属性设置为 1 也意味着禁用超线程处理。

--workspace
预览

Log Analytics 工作区的名称或 ID。 如果通过工作区名称指定工作区,则工作区应与 VM 位于同一资源组中,否则将创建新的工作区。

--write-accelerator

启用/禁用磁盘写入加速器。 对 os 磁盘和数据磁盘使用单一值“true/false”应用,或指定单个磁盘,例如“os=true 1=true 2=true” 和 lun 为 1 和 2 的数据磁盘。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm wait

将 CLI 置于等待状态,直到满足 VM 的条件。

az vm wait [--created]
           [--custom]
           [--deleted]
           [--exists]
           [--ids]
           [--interval]
           [--name]
           [--resource-group]
           [--subscription]
           [--timeout]
           [--updated]

示例

等到创建 VM。

az vm wait -g MyResourceGroup -n MyVm --created

等到删除资源组中的所有 VM。

az vm wait --deleted --ids $(az vm list -g MyResourceGroup --query "[].id" -o tsv)

可选参数

--created

等待在“Succeeded”中使用“provisioningState”创建。

默认值: False
--custom

等待条件满足自定义 JMESPath 查询。 例如 provisioningState!='InProgress', instanceView.statuses[?code=='PowerState/running']。

--deleted

等到删除为止。

默认值: False
--exists

等待资源存在。

默认值: False
--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含“Resource Id”参数的所有信息的完整资源 ID。 应提供 --ids 或其他“Resource Id”参数。

--interval

轮询间隔(以秒为单位)。

默认值: 30
--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--timeout

最大等待(以秒为单位)。

默认值: 3600
--updated

等到 provisioningState 更新为“Succeeded”。

默认值: False
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。