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

az vm

管理 Linux 或 Windows 虚拟机。

命令

az vm aem

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

az vm aem delete

删除 Azure 增强型监视扩展。

az vm aem set

配置 Azure 增强型监视扩展。

az vm aem verify

验证正确配置的 Azure 增强型监视扩展。

az vm application

管理 VM 的应用程序。

az vm application list

列出 VM 的应用程序。

az vm application set

为 VM 设置应用程序。

az vm assess-patches

评估 VM 上的修补程序。

az vm auto-shutdown

管理 VM 的自动关闭。

az vm availability-set

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

az vm availability-set convert

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

az vm availability-set create

创建 Azure 可用性集。

az vm availability-set delete

删除可用性集。

az vm availability-set list

列出可用性集。

az vm availability-set list-sizes

列出可用性集的 VM 大小。

az vm availability-set show

获取可用性集的信息。

az vm availability-set update

更新 Azure 可用性集。

az vm boot-diagnostics

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

az vm boot-diagnostics disable

在 VM 上禁用启动诊断。

az vm boot-diagnostics enable

在 VM 上启用启动诊断。

az vm boot-diagnostics get-boot-log

从 VM 获取启动诊断日志。

az vm boot-diagnostics get-boot-log-uris

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

az vm capture

捕获已停止 VM 的信息。

az vm convert

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

az vm create

创建一个 Azure 虚拟机。

az vm deallocate

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

az vm delete

删除 VM。

az vm diagnostics

配置 Azure 虚拟机诊断扩展。

az vm diagnostics get-default-config

获取 VM 的默认配置设置。

az vm diagnostics set

配置 Azure VM 诊断扩展。

az vm disk

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

az vm disk attach

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

az vm disk detach

从 VM 分离托管磁盘。

az vm encryption

管理 VM 磁盘的加密。

az vm encryption disable

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

az vm encryption enable

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

az vm encryption show

显示加密状态。

az vm extension

管理 VM 上的扩展。

az vm extension delete

删除附加到 VM 的扩展。

az vm extension image

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

az vm extension image list

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

az vm extension image list-names

列出可用扩展的名称。

az vm extension image list-versions

列出可用扩展的版本。

az vm extension image show

显示扩展的信息。

az vm extension list

列出附加到 VM 的扩展。

az vm extension set

设置 VM 的扩展。

az vm extension show

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

az vm extension wait

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

az vm generalize

将 VM 标记为通用化,使 VM 能够针对多个部署进行映像化。

az vm get-instance-view

获取有关 VM 的实例信息。

az vm host

管理虚拟机的专用主机。

az vm host create

创建专用主机。

az vm host delete

删除专用主机。

az vm host get-instance-view

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

az vm host group

管理专用主机组。

az vm host group create

创建专用主机组。

az vm host group delete

删除专用主机组。

az vm host group get-instance-view

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

az vm host group list

列出专用主机组。

az vm host group show

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

az vm host group update

更新专用主机组。

az vm host list

列出专用主机。

az vm host restart

重启专用主机。

az vm host show

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

az vm host update

更新专用主机。

az vm identity

管理服务 VM 标识。

az vm identity assign

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

az vm identity remove

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

az vm identity show

显示 VM 的托管标识信息。

az vm image

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

az vm image accept-terms

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

az vm image list

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

az vm image list-offers

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

az vm image list-publishers

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

az vm image list-skus

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

az vm image show

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

az vm image terms

管理 Azure 市场映像术语。

az vm image terms accept

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

az vm image terms cancel

取消Azure 市场图像术语。

az vm image terms show

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

az vm install-patches

在 VM 上安装修补程序。

az vm list

列出虚拟机的详细信息。

az vm list-ip-addresses

列出与 VM 关联的 IP 地址。

az vm list-sizes

列出 VM 的可用大小。

az vm list-skus

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

az vm list-usage

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

az vm list-vm-resize-options

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

az vm monitor

管理 VM 的监视方面。

az vm monitor log

管理 VM 的 Log Analytics 工作区。

az vm monitor log show

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

az vm monitor metrics

管理 VM 的指标。

az vm monitor metrics list-definitions

列出 VM 的指标定义。

az vm monitor metrics tail

列出 VM 的指标值。

az vm nic

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

az vm nic add

将现有 NIC 添加到 VM。

az vm nic list

列出 VM 上可用的 NIC。

az vm nic remove

从 VM 中删除 NIC。

az vm nic set

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

az vm nic show

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

az vm open-port

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

az vm perform-maintenance

对虚拟机执行维护的操作。

az vm reapply

重新应用 VM。

az vm redeploy

重新部署现有 VM。

az vm repair

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

az vm repair create

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

az vm repair list-scripts

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

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 中的数据磁盘。

az vm repair run

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

az vm resize

更新 VM 的大小。

az vm restart

重启 VM。

az vm run-command

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

az vm run-command create

用于创建 run 命令的操作。

az vm run-command delete

要删除 run 命令的操作。

az vm run-command invoke

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

az vm run-command list

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

az vm run-command show

获取特定的运行命令。

az vm run-command update

用于更新 run 命令的操作。

az vm run-command wait

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

az vm secret

管理 VM 机密。

az vm secret add

将机密添加到 VM。

az vm secret format

将机密转换为可由 VM 和 VMSS 使用的窗体。

az vm secret list

列出 VM 上的机密。

az vm secret remove

从 VM 中删除机密。

az vm show

获取 VM 的详细信息。

az vm simulate-eviction

模拟现成 VM 的逐出。

az vm start

启动已停止的 VM。

az vm stop

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

az vm unmanaged-disk

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

az vm unmanaged-disk attach

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

az vm unmanaged-disk detach

从 VM 分离非托管磁盘。

az vm unmanaged-disk list

列出 VM 的非托管磁盘。

az vm update

更新 VM 的属性。

az vm user

管理 VM 的用户帐户。

az vm user delete

从 VM 中删除用户帐户。

az vm user reset-ssh

重置 VM 上的 SSH 配置。

az vm user update

更新用户帐户。

az vm wait

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

az vm assess-patches

评估 VM 上的修补程序。

az vm assess-patches [--ids]
                     [--name]
                     [--resource-group]

示例

评估 VM 上的修补程序。

az vm assess-patches -g MyResourceGroup -n MyVm

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

az vm auto-shutdown

管理 VM 的自动关闭。

az vm auto-shutdown [--email]
                    [--ids]
                    [--location]
                    [--name]
                    [--off]
                    [--resource-group]
                    [--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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--location -l

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--off

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

--resource-group -g

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

--time

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

--webhook

通知将发送到的 Webhook URL。

az vm capture

捕获已停止 VM 的信息。

有关端到端教程,请参阅 https://docs.microsoft.com/azure/virtual-machines/linux/capture-image

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

示例

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

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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--overwrite

覆盖现有磁盘文件。

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

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

--storage-container

要在其中保存磁盘的存储帐户容器名称。

默认值: vhds

az vm convert

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

az vm convert [--ids]
              [--name]
              [--resource-group]

示例

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

az vm convert -g MyResourceGroup -n MyVm

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

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

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

az vm create

创建一个 Azure 虚拟机。

有关端到端教程,请参阅 https://docs.microsoft.com/azure/virtual-machines/linux/quick-create-cli

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]
             [--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-secure-boot {false, true}]
             [--enable-vtpm {false, true}]
             [--encryption-at-host {false, true}]
             [--ephemeral-os-disk {false, true}]
             [--ephemeral-os-disk-placement {CacheDisk, 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, 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, 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]
             [--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, TrustedLaunch}]
             [--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 {1, 2, 3}]

示例

使用自动 SSH 身份验证创建默认 Ubuntu VM。

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

使用映像 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

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

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

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

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

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

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

使用密钥保管库机密创建 Debian 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 debian --secrets "$vm_secrets"

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

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

使用用户分配的标识创建 debian VM。

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

使用系统和用户分配的标识创建 debian VM。

az vm create -n MyVm -g rg1 --image debian --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 Centos --zone 1

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

az vm create -n MyVm -g MyResourceGroup --image centos --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 一起使用的身份验证类型。 默认为适用于 Linux 的 Windows 和 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 或名称。 传入“None”以取消关联容量预留组。 请注意,如果要删除已与容量预留组关联的 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-disk、-attach-os-disk、 --boot-diagnostics-storage、--computer-name、--host、-host-group、--nics、-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、 --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

禁用安装来宾证明扩展的默认行为,并启用已启用受信任启动的 VM 和 VMSS 的系统分配标识。

--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-secure-boot

启用安全启动。

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

启用 vTPM。

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

为 VM 或 VMSS 启用主机加密。 这将为主机本身的所有磁盘(包括 Resource/Temp 磁盘)启用加密。

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

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

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

仅适用于与 --ephemeral-os-disk. 允许选择临时 OS 磁盘预配位置。

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

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

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

生成 SSH 公钥和私钥文件(如果缺少)。 密钥将存储在 ~/.ssh 目录中。

--host

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

--host-group

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

--image

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

值来自: az vm image list, az vm image show, az sig image-version show-shared
--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, 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

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

--nsg

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

--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, 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 内应用修补程序。 在此模式下,将禁用自动更新;paramater --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) 。

--public-ip-address

创建一个 (默认) 或引用现有 IP 地址时的公共 IP 地址的名称。 还可以使用 PowerShell 或 --% 运算符) 通过 ID 引用现有公共 IP,或者为 Azure CLI 中的 None ('“”指定“”“”。

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

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

--public-ip-sku

公共 IP SKU。 默认情况下,它设置为“基本”。 仅当公共 IP 为“标准”时,才支持在边缘区域中创建。

接受的值: Basic, Standard
--role

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

--scope

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

--secrets

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

--security-type

指定虚拟机的安全类型。

接受的值: ConfidentialVM, TrustedLaunch
--size

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

默认值: Standard_DS1_v2
值来自: az vm list-sizes
--specialized

指示源映像是否专用。

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

用于 SSH 密钥的 VM 上的目标文件路径。 如果文件已存在,则指定的键 (s) 追加到该文件中。 由于 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 ID=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

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

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

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

--user-data

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

--v-cpus-available

指定可用的 vCPU 数。

--v-cpus-per-core

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

--validate

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

--vmss

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

--vnet-address-prefix

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

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

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

--workspace

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

--zone -z

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

接受的值: 1, 2, 3

az vm deallocate

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

有关端到端教程,请参阅 https://docs.microsoft.com/azure/virtual-machines/linux/capture-image

az vm deallocate [--hibernate]
                 [--ids]
                 [--name]
                 [--no-wait]
                 [--resource-group]

示例

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

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

解除分配 VM。 自动生成的 ()

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

可选参数

--hibernate

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

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm delete

删除 VM。

az vm delete [--force-deletion]
             [--ids]
             [--name]
             [--no-wait]
             [--resource-group]
             [--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

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

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

--yes -y

不提示确认。

az vm generalize

将 VM 标记为通用化,使 VM 能够针对多个部署进行映像化。

有关端到端教程,请参阅 https://docs.microsoft.com/azure/virtual-machines/linux/capture-image

az vm generalize [--ids]
                 [--name]
                 [--no-wait]
                 [--resource-group]

示例

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

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

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm get-instance-view

获取有关 VM 的实例信息。

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

示例

使用资源组和名称获取 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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

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]
                      [--name]
                      [--no-wait]
                      [--package-name-masks-to-exclude]
                      [--package-name-masks-to-include]
                      [--resource-group]

示例

在 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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--kb-numbers-to-exclude

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

--kb-numbers-to-include

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--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> 配置默认组。

az vm list

列出虚拟机的详细信息。

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

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

示例

列出所有 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 和电源状态。 命令将运行缓慢。

az vm list-ip-addresses

列出与 VM 关联的 IP 地址。

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

示例

获取 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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

az vm list-sizes

列出 VM 的可用大小。

az vm list-sizes --location

示例

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

az vm list-sizes -l westus

必需参数

--location -l

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

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

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

--resource-type -r

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

--size -s

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

--zone -z

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

接受的值: false, true

az vm list-usage

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

az vm list-usage --location

示例

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

az vm list-usage -l westus

必需参数

--location -l

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

az vm list-vm-resize-options

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

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

示例

列出用于调整大小的所有可用 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(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

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]

示例

将 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。

--ids

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

--name -n

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

--nsg-name

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

--priority

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

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

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

az vm perform-maintenance

对虚拟机执行维护的操作。

az vm perform-maintenance [--ids]
                          [--name]
                          [--resource-group]

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

az vm reapply

重新应用 VM。

az vm reapply [--ids]
              [--name]
              [--no-wait]
              [--resource-group]

示例

重新应用 VM。

az vm reapply -g MyResourceGroup -n MyVm

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

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

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm redeploy

重新部署现有 VM。

az vm redeploy [--ids]
               [--name]
               [--no-wait]
               [--resource-group]

示例

重新部署 VM。

az vm redeploy -g MyResourceGroup -n MyVm

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

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

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm resize

更新 VM 的大小。

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

示例

调整 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(以空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm restart

重启 VM。

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

示例

重启 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 无响应,请使用。

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm show

获取 VM 的详细信息。

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

示例

显示有关 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(以空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--include-user-data -u

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

--show-details -d

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

az vm simulate-eviction

模拟现成 VM 的逐出。

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

示例

模拟现成 VM 的逐出。

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

可选参数

--ids

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

az vm start

启动已停止的 VM。

az vm start [--ids]
            [--name]
            [--no-wait]
            [--resource-group]

示例

启动已停止的 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(以空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

az vm stop

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

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

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

示例

关闭 (停止) 正在运行的 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(以空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--resource-group -g

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

--skip-shutdown

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

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-secure-boot {false, true}]
             [--enable-vtpm {false, true}]
             [--ephemeral-os-disk-placement {CacheDisk, 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, Windows_Client, Windows_Server}]
             [--max-price]
             [--name]
             [--no-wait]
             [--os-disk]
             [--ppg]
             [--priority {Low, Regular, Spot}]
             [--remove]
             [--resource-group]
             [--set]
             [--size]
             [--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 或 JSON 字符串>。

--capacity-reservation-group --crg

用于分配的容量预留组的 ID 或名称。 传入“None”以取消关联容量预留组。 请注意,如果要删除已与容量预留组关联的 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-secure-boot

启用安全启动。

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

启用 vTPM。

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

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

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

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

--host

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

--host-group

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

--ids

一个或多个资源 ID(以空格分隔)。 它应该是包含所有“资源 ID”参数信息的完整资源 ID。 应提供 --id 或其他“资源 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, Windows_Client, Windows_Server
--max-price

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

--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--no-wait

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

--os-disk

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

--ppg

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

--priority

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

接受的值: Low, Regular, Spot
--remove

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

--resource-group -g

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

--set

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

--size

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

--ultra-ssd-enabled

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

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

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

--v-cpus-available

指定可用的 vCPU 数。

--v-cpus-per-core

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

--workspace

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

--write-accelerator

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

az vm wait

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

az vm wait [--created]
           [--custom]
           [--deleted]
           [--exists]
           [--ids]
           [--interval]
           [--name]
           [--resource-group]
           [--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

等待,直到使用“provisioningState”在“Succeeded”创建。

--custom

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

--deleted

等到删除。

--exists

等待资源存在。

--ids

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

--interval

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

默认值: 30
--name -n

虚拟机的名称。 You can configure the default using az configure --defaults vm=<name>.

--resource-group -g

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

--timeout

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

默认值: 3600
--updated

等待,直到使用 provisioningState 在“Succeeded”更新。