重置映像 () 没有临时 OS 磁盘的虚拟机升级操作系统,对于具有临时 OS 磁盘的虚拟机,虚拟机将重置为初始状态。 注意:保留旧 OS 磁盘取决于 OS 磁盘的 deleteOption 值。 如果分离 deleteOption,旧 OS 磁盘将在重置映像后保留。 如果 deleteOption 为 delete,则会在重置映像后删除旧的 OS 磁盘。 在执行重置映像之前,应相应地更新 OS 磁盘的 deleteOption。
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage?api-version=2024-03-01
URI 参数
名称 |
在 |
必需 |
类型 |
说明 |
resourceGroupName
|
path |
True
|
string
|
资源组的名称。
|
subscriptionId
|
path |
True
|
string
|
唯一标识 Microsoft Azure 订阅的订阅凭据。 此订阅 ID 是每个服务调用的 URI 的一部分。
|
vmName
|
path |
True
|
string
|
虚拟机的名称。
|
api-version
|
query |
True
|
string
|
客户端 API 版本。
|
请求正文
响应
名称 |
类型 |
说明 |
200 OK
|
|
确定
|
202 Accepted
|
|
已接受
|
Other Status Codes
|
CloudError
|
描述操作失败原因的错误响应。
|
安全性
azure_auth
Azure Active Directory OAuth2 流
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
名称 |
说明 |
user_impersonation
|
模拟用户帐户
|
示例
Reimage a Non-Ephemeral Virtual Machine.
Sample Request
POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVMName/reimage?api-version=2024-03-01
{
"tempDisk": true,
"exactVersion": "aaaaaa",
"osProfile": {
"adminPassword": "{your-password}",
"customData": "{your-custom-data}"
}
}
import com.azure.resourcemanager.compute.models.OSProfileProvisioningData;
import com.azure.resourcemanager.compute.models.VirtualMachineReimageParameters;
/**
* Samples for VirtualMachines Reimage.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/examples/
* virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json
*/
/**
* Sample code: Reimage a Non-Ephemeral Virtual Machine.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void reimageANonEphemeralVirtualMachine(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getVirtualMachines().reimage(
"myResourceGroup", "myVMName", new VirtualMachineReimageParameters().withTempDisk(true)
.withExactVersion("aaaaaa").withOsProfile(new OSProfileProvisioningData()
.withAdminPassword("fakeTokenPlaceholder").withCustomData("{your-custom-data}")),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armcompute_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/92de53a5f1e0e03c94b40475d2135d97148ed014/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/examples/virtualMachineExamples/VirtualMachine_Reimage_NonEphemeralVMs.json
func ExampleVirtualMachinesClient_BeginReimage_reimageANonEphemeralVirtualMachine() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armcompute.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewVirtualMachinesClient().BeginReimage(ctx, "myResourceGroup", "myVMName", &armcompute.VirtualMachinesClientBeginReimageOptions{Parameters: &armcompute.VirtualMachineReimageParameters{
ExactVersion: to.Ptr("aaaaaa"),
OSProfile: &armcompute.OSProfileProvisioningData{
AdminPassword: to.Ptr("{your-password}"),
CustomData: to.Ptr("{your-custom-data}"),
},
TempDisk: to.Ptr(true),
},
})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
_, err = poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
Location: https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2024-03-01
Reimage a Virtual Machine.
Sample Request
POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVMName/reimage?api-version=2024-03-01
{
"tempDisk": true
}
import com.azure.resourcemanager.compute.models.VirtualMachineReimageParameters;
/**
* Samples for VirtualMachines Reimage.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/examples/
* virtualMachineExamples/VirtualMachine_Reimage.json
*/
/**
* Sample code: Reimage a Virtual Machine.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void reimageAVirtualMachine(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getVirtualMachines().reimage("myResourceGroup", "myVMName",
new VirtualMachineReimageParameters().withTempDisk(true), com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armcompute_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/92de53a5f1e0e03c94b40475d2135d97148ed014/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-03-01/examples/virtualMachineExamples/VirtualMachine_Reimage.json
func ExampleVirtualMachinesClient_BeginReimage_reimageAVirtualMachine() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armcompute.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewVirtualMachinesClient().BeginReimage(ctx, "myResourceGroup", "myVMName", &armcompute.VirtualMachinesClientBeginReimageOptions{Parameters: &armcompute.VirtualMachineReimageParameters{
TempDisk: to.Ptr(true),
},
})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
_, err = poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample Response
Location: https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2024-03-01
定义
ApiError
API 错误。
名称 |
类型 |
说明 |
code
|
string
|
错误代码。
|
details
|
ApiErrorBase[]
|
API 错误详细信息
|
innererror
|
InnerError
|
Api 内部错误
|
message
|
string
|
错误消息。
|
target
|
string
|
特定错误的目标。
|
ApiErrorBase
API 错误基。
名称 |
类型 |
说明 |
code
|
string
|
错误代码。
|
message
|
string
|
错误消息。
|
target
|
string
|
特定错误的目标。
|
CloudError
来自计算服务的错误响应。
InnerError
内部错误详细信息。
名称 |
类型 |
说明 |
errordetail
|
string
|
内部错误消息或异常转储。
|
exceptiontype
|
string
|
异常类型。
|
OSProfileProvisioningData
指定重置非临时 OS 磁盘映像所需的信息。
名称 |
类型 |
说明 |
adminPassword
|
string
|
指定管理员帐户的密码。
Windows) 最小长度 (: 8 个字符
Linux) 最小长度 (: 6 个字符
最大长度 (Windows) : 123 个字符
最大长度 (Linux) : 72 个字符
复杂性要求: 需要满足以下 4 个条件中的 3 个 包含较低字符 包含大写字符 有一个数字 具有一个特殊字符 (正则表达式匹配 [\W_])
不允许的值: “abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!”
有关重置密码的信息,请参阅 如何在 Windows VM 中重置远程桌面服务或其登录密码
有关重置 root 密码的信息,请参阅使用 VMAccess 扩展管理用户、SSH 和检查或修复 Azure Linux VM 上的磁盘
|
customData
|
string
|
指定自定义数据的 Base-64 编码的字符串。 Base-64 编码的字符串将解码为一个二元数组并作为一个文件保存在虚拟机上。 该二元数组的最大长度为 65535 字节。 注意:请勿在 customData 属性中传递任何机密或密码。 创建 VM 后,无法更新此属性。 将属性 customData 传递给 VM 以保存为文件,有关详细信息,请参阅 Azure VM 上的自定义数据。 如果对 Linux VM 使用 cloud-init,请参阅 在创建期间使用 cloud-init 自定义 Linux VM。
|
VirtualMachineReimageParameters
提供给“重置虚拟机映像”操作的参数。
名称 |
类型 |
说明 |
exactVersion
|
string
|
以十进制数字指定 OS 磁盘应重置映像到的版本。 如果未提供确切版本,OS 磁盘将重置为 OS 磁盘的现有版本。
|
osProfile
|
OSProfileProvisioningData
|
指定重置非临时 OS 磁盘映像所需的信息。
|
tempDisk
|
boolean
|
指定是否对临时磁盘重置映像。 默认值:false。 注意:只有具有临时 OS 磁盘的 VM/VMSS 才支持此临时磁盘重置映像参数。
|