仮想マシンとの間でデータ ディスクをアタッチおよびデタッチします。
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/attachDetachDataDisks?api-version=2024-07-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
|
StorageProfile
|
わかりました
|
202 Accepted
|
|
受け入れ られる
ヘッダー
Location: string
|
Other Status Codes
|
CloudError
|
操作が失敗した理由を説明するエラー応答。
|
セキュリティ
azure_auth
Azure Active Directory OAuth2 フロー
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
名前 |
説明 |
user_impersonation
|
ユーザー アカウントを偽装する
|
例
VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen
要求のサンプル
POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/aaaaaaaaaaaaaaaaaaaa/attachDetachDataDisks?api-version=2024-07-01
{
"dataDisksToAttach": [
{
"lun": 1,
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
},
"caching": "ReadOnly",
"deleteOption": "Delete",
"writeAcceleratorEnabled": true
},
{
"lun": 2,
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
},
"caching": "ReadWrite",
"deleteOption": "Detach",
"writeAcceleratorEnabled": false
}
],
"dataDisksToDetach": [
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x",
"detachOption": "ForceDetach"
},
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z",
"detachOption": "ForceDetach"
}
]
}
import com.azure.resourcemanager.compute.models.AttachDetachDataDisksRequest;
import com.azure.resourcemanager.compute.models.CachingTypes;
import com.azure.resourcemanager.compute.models.DataDisksToAttach;
import com.azure.resourcemanager.compute.models.DataDisksToDetach;
import com.azure.resourcemanager.compute.models.DiskDeleteOptionTypes;
import com.azure.resourcemanager.compute.models.DiskDetachOptionTypes;
import com.azure.resourcemanager.compute.models.DiskEncryptionSetParameters;
import java.util.Arrays;
/**
* Samples for VirtualMachines AttachDetachDataDisks.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/
* virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.json
*/
/**
* Sample code: VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
virtualMachineAttachDetachDataDisksMaximumSetGen(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getVirtualMachines().attachDetachDataDisks("rgcompute",
"aaaaaaaaaaaaaaaaaaaa",
new AttachDetachDataDisksRequest().withDataDisksToAttach(Arrays.asList(new DataDisksToAttach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d")
.withLun(1).withCaching(CachingTypes.READ_ONLY).withDeleteOption(DiskDeleteOptionTypes.DELETE)
.withDiskEncryptionSet(new DiskEncryptionSetParameters().withId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"))
.withWriteAcceleratorEnabled(true),
new DataDisksToAttach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e")
.withLun(2).withCaching(CachingTypes.READ_WRITE).withDeleteOption(DiskDeleteOptionTypes.DETACH)
.withDiskEncryptionSet(new DiskEncryptionSetParameters().withId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"))
.withWriteAcceleratorEnabled(false)))
.withDataDisksToDetach(Arrays.asList(new DataDisksToDetach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x")
.withDetachOption(DiskDetachOptionTypes.FORCE_DETACH),
new DataDisksToDetach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z")
.withDetachOption(DiskDetachOptionTypes.FORCE_DETACH))),
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
from azure.identity import DefaultAzureCredential
from azure.mgmt.compute import ComputeManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-compute
# USAGE
python virtual_machine_attach_detach_data_disks_maximum_set_gen.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ComputeManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.virtual_machines.begin_attach_detach_data_disks(
resource_group_name="rgcompute",
vm_name="aaaaaaaaaaaaaaaaaaaa",
parameters={
"dataDisksToAttach": [
{
"caching": "ReadOnly",
"deleteOption": "Delete",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
},
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
"lun": 1,
"writeAcceleratorEnabled": True,
},
{
"caching": "ReadWrite",
"deleteOption": "Detach",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
},
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e",
"lun": 2,
"writeAcceleratorEnabled": False,
},
],
"dataDisksToDetach": [
{
"detachOption": "ForceDetach",
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x",
},
{
"detachOption": "ForceDetach",
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z",
},
],
},
).result()
print(response)
# x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.json
if __name__ == "__main__":
main()
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/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/069a65e8a6d1a6c0c58d9a9d97610b7103b6e8a5/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.json
func ExampleVirtualMachinesClient_BeginAttachDetachDataDisks_virtualMachineAttachDetachDataDisksMaximumSetGen() {
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().BeginAttachDetachDataDisks(ctx, "rgcompute", "aaaaaaaaaaaaaaaaaaaa", armcompute.AttachDetachDataDisksRequest{
DataDisksToAttach: []*armcompute.DataDisksToAttach{
{
Caching: to.Ptr(armcompute.CachingTypesReadOnly),
DeleteOption: to.Ptr(armcompute.DiskDeleteOptionTypesDelete),
DiskEncryptionSet: &armcompute.DiskEncryptionSetParameters{
ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
},
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
Lun: to.Ptr[int32](1),
WriteAcceleratorEnabled: to.Ptr(true),
},
{
Caching: to.Ptr(armcompute.CachingTypesReadWrite),
DeleteOption: to.Ptr(armcompute.DiskDeleteOptionTypesDetach),
DiskEncryptionSet: &armcompute.DiskEncryptionSetParameters{
ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
},
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e"),
Lun: to.Ptr[int32](2),
WriteAcceleratorEnabled: to.Ptr(false),
}},
DataDisksToDetach: []*armcompute.DataDisksToDetach{
{
DetachOption: to.Ptr(armcompute.DiskDetachOptionTypesForceDetach),
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x"),
},
{
DetachOption: to.Ptr(armcompute.DiskDetachOptionTypesForceDetach),
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z"),
}},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.StorageProfile = armcompute.StorageProfile{
// DataDisks: []*armcompute.DataDisk{
// {
// Name: to.Ptr("vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
// Caching: to.Ptr(armcompute.CachingTypesReadOnly),
// CreateOption: to.Ptr(armcompute.DiskCreateOptionTypesAttach),
// DeleteOption: to.Ptr(armcompute.DiskDeleteOptionTypesDelete),
// DiskSizeGB: to.Ptr[int32](30),
// Lun: to.Ptr[int32](1),
// ManagedDisk: &armcompute.ManagedDiskParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
// DiskEncryptionSet: &armcompute.DiskEncryptionSetParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
// },
// StorageAccountType: to.Ptr(armcompute.StorageAccountTypesPremiumLRS),
// },
// WriteAcceleratorEnabled: to.Ptr(true),
// },
// {
// Name: to.Ptr("vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e"),
// Caching: to.Ptr(armcompute.CachingTypesReadWrite),
// CreateOption: to.Ptr(armcompute.DiskCreateOptionTypesAttach),
// DeleteOption: to.Ptr(armcompute.DiskDeleteOptionTypesDetach),
// DiskSizeGB: to.Ptr[int32](100),
// Lun: to.Ptr[int32](2),
// ManagedDisk: &armcompute.ManagedDiskParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e"),
// DiskEncryptionSet: &armcompute.DiskEncryptionSetParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
// },
// StorageAccountType: to.Ptr(armcompute.StorageAccountTypesPremiumLRS),
// },
// WriteAcceleratorEnabled: to.Ptr(false),
// }},
// ImageReference: &armcompute.ImageReference{
// Offer: to.Ptr("WindowsServer"),
// Publisher: to.Ptr("MicrosoftWindowsServer"),
// SKU: to.Ptr("2016-Datacenter"),
// Version: to.Ptr("latest"),
// },
// OSDisk: &armcompute.OSDisk{
// Name: to.Ptr("myOsDisk"),
// Caching: to.Ptr(armcompute.CachingTypesReadWrite),
// CreateOption: to.Ptr(armcompute.DiskCreateOptionTypesFromImage),
// DiskSizeGB: to.Ptr[int32](30),
// ManagedDisk: &armcompute.ManagedDiskParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"),
// StorageAccountType: to.Ptr(armcompute.StorageAccountTypesPremiumLRS),
// },
// OSType: to.Ptr(armcompute.OperatingSystemTypesWindows),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Attach and detach data disks to/from the virtual machine.
*
* @summary Attach and detach data disks to/from the virtual machine.
* x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.json
*/
async function virtualMachineAttachDetachDataDisksMaximumSetGen() {
const subscriptionId = process.env["COMPUTE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["COMPUTE_RESOURCE_GROUP"] || "rgcompute";
const vmName = "aaaaaaaaaaaaaaaaaaaa";
const parameters = {
dataDisksToAttach: [
{
caching: "ReadOnly",
deleteOption: "Delete",
diskEncryptionSet: {
id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
},
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
lun: 1,
writeAcceleratorEnabled: true,
},
{
caching: "ReadWrite",
deleteOption: "Detach",
diskEncryptionSet: {
id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}",
},
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e",
lun: 2,
writeAcceleratorEnabled: false,
},
],
dataDisksToDetach: [
{
detachOption: "ForceDetach",
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x",
},
{
detachOption: "ForceDetach",
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z",
},
],
};
const credential = new DefaultAzureCredential();
const client = new ComputeManagementClient(credential, subscriptionId);
const result = await client.virtualMachines.beginAttachDetachDataDisksAndWait(
resourceGroupName,
vmName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using System.Xml;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Compute;
// Generated from example definition: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MaximumSet_Gen.json
// this example is just showing the usage of "VirtualMachines_AttachDetachDataDisks" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this VirtualMachineResource created on azure
// for more information of creating VirtualMachineResource, please refer to the document of VirtualMachineResource
string subscriptionId = "{subscription-id}";
string resourceGroupName = "rgcompute";
string vmName = "aaaaaaaaaaaaaaaaaaaa";
ResourceIdentifier virtualMachineResourceId = VirtualMachineResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, vmName);
VirtualMachineResource virtualMachine = client.GetVirtualMachineResource(virtualMachineResourceId);
// invoke the operation
AttachDetachDataDisksRequest attachDetachDataDisksRequest = new AttachDetachDataDisksRequest
{
DataDisksToAttach = {new DataDisksToAttach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d")
{
Lun = 1,
Caching = CachingType.ReadOnly,
DeleteOption = DiskDeleteOptionType.Delete,
DiskEncryptionSetId = new ResourceIdentifier("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
WriteAcceleratorEnabled = true,
}, new DataDisksToAttach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e")
{
Lun = 2,
Caching = CachingType.ReadWrite,
DeleteOption = DiskDeleteOptionType.Detach,
DiskEncryptionSetId = new ResourceIdentifier("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"),
WriteAcceleratorEnabled = false,
}},
DataDisksToDetach = {new DataDisksToDetach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x")
{
DetachOption = DiskDetachOptionType.ForceDetach,
}, new DataDisksToDetach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_4_disk4_4d4e784bdafa49baa780eb2d256ff41z")
{
DetachOption = DiskDetachOptionType.ForceDetach,
}},
};
ArmOperation<VirtualMachineStorageProfile> lro = await virtualMachine.AttachDetachDataDisksAsync(WaitUntil.Completed, attachDetachDataDisksRequest);
VirtualMachineStorageProfile result = lro.Value;
Console.WriteLine($"Succeeded: {result}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
location: https://foo.com/operationstatus
{
"imageReference": {
"publisher": "MicrosoftWindowsServer",
"offer": "WindowsServer",
"sku": "2016-Datacenter",
"version": "latest"
},
"osDisk": {
"osType": "Windows",
"name": "myOsDisk",
"createOption": "FromImage",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "Premium_LRS",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
},
"diskSizeGB": 30
},
"dataDisks": [
{
"lun": 1,
"name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
"createOption": "Attach",
"caching": "ReadOnly",
"managedDisk": {
"storageAccountType": "Premium_LRS",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
}
},
"deleteOption": "Delete",
"diskSizeGB": 30,
"writeAcceleratorEnabled": true
},
{
"lun": 2,
"name": "vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e",
"createOption": "Attach",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "Premium_LRS",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_2_disk3_7d5e664bdafa49baa780eb2d128ff38e",
"diskEncryptionSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}"
}
},
"deleteOption": "Detach",
"diskSizeGB": 100,
"writeAcceleratorEnabled": false
}
]
}
location: https://foo.com/operationstatus
VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen
要求のサンプル
POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachines/azure-vm/attachDetachDataDisks?api-version=2024-07-01
{
"dataDisksToAttach": [
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"
}
],
"dataDisksToDetach": [
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x"
}
]
}
import com.azure.resourcemanager.compute.models.AttachDetachDataDisksRequest;
import com.azure.resourcemanager.compute.models.DataDisksToAttach;
import com.azure.resourcemanager.compute.models.DataDisksToDetach;
import java.util.Arrays;
/**
* Samples for VirtualMachines AttachDetachDataDisks.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/
* virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.json
*/
/**
* Sample code: VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
virtualMachineAttachDetachDataDisksMinimumSetGen(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getVirtualMachines().attachDetachDataDisks("rgcompute",
"azure-vm",
new AttachDetachDataDisksRequest().withDataDisksToAttach(Arrays.asList(new DataDisksToAttach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d")))
.withDataDisksToDetach(Arrays.asList(new DataDisksToDetach().withDiskId(
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x"))),
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
from azure.identity import DefaultAzureCredential
from azure.mgmt.compute import ComputeManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-compute
# USAGE
python virtual_machine_attach_detach_data_disks_minimum_set_gen.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ComputeManagementClient(
credential=DefaultAzureCredential(),
subscription_id="{subscription-id}",
)
response = client.virtual_machines.begin_attach_detach_data_disks(
resource_group_name="rgcompute",
vm_name="azure-vm",
parameters={
"dataDisksToAttach": [
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"
}
],
"dataDisksToDetach": [
{
"diskId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x"
}
],
},
).result()
print(response)
# x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.json
if __name__ == "__main__":
main()
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/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/069a65e8a6d1a6c0c58d9a9d97610b7103b6e8a5/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.json
func ExampleVirtualMachinesClient_BeginAttachDetachDataDisks_virtualMachineAttachDetachDataDisksMinimumSetGen() {
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().BeginAttachDetachDataDisks(ctx, "rgcompute", "azure-vm", armcompute.AttachDetachDataDisksRequest{
DataDisksToAttach: []*armcompute.DataDisksToAttach{
{
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
}},
DataDisksToDetach: []*armcompute.DataDisksToDetach{
{
DiskID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x"),
}},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.StorageProfile = armcompute.StorageProfile{
// DataDisks: []*armcompute.DataDisk{
// {
// Name: to.Ptr("vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
// Caching: to.Ptr(armcompute.CachingTypesReadWrite),
// CreateOption: to.Ptr(armcompute.DiskCreateOptionTypesAttach),
// DiskSizeGB: to.Ptr[int32](30),
// Lun: to.Ptr[int32](0),
// ManagedDisk: &armcompute.ManagedDiskParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"),
// StorageAccountType: to.Ptr(armcompute.StorageAccountTypesPremiumLRS),
// },
// }},
// ImageReference: &armcompute.ImageReference{
// Offer: to.Ptr("WindowsServer"),
// Publisher: to.Ptr("MicrosoftWindowsServer"),
// SKU: to.Ptr("2016-Datacenter"),
// Version: to.Ptr("latest"),
// },
// OSDisk: &armcompute.OSDisk{
// Name: to.Ptr("myOsDisk"),
// Caching: to.Ptr(armcompute.CachingTypesReadWrite),
// CreateOption: to.Ptr(armcompute.DiskCreateOptionTypesFromImage),
// DiskSizeGB: to.Ptr[int32](30),
// ManagedDisk: &armcompute.ManagedDiskParameters{
// ID: to.Ptr("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"),
// StorageAccountType: to.Ptr(armcompute.StorageAccountTypesPremiumLRS),
// },
// OSType: to.Ptr(armcompute.OperatingSystemTypesWindows),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Attach and detach data disks to/from the virtual machine.
*
* @summary Attach and detach data disks to/from the virtual machine.
* x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.json
*/
async function virtualMachineAttachDetachDataDisksMinimumSetGen() {
const subscriptionId = process.env["COMPUTE_SUBSCRIPTION_ID"] || "{subscription-id}";
const resourceGroupName = process.env["COMPUTE_RESOURCE_GROUP"] || "rgcompute";
const vmName = "azure-vm";
const parameters = {
dataDisksToAttach: [
{
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
},
],
dataDisksToDetach: [
{
diskId:
"/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x",
},
],
};
const credential = new DefaultAzureCredential();
const client = new ComputeManagementClient(credential, subscriptionId);
const result = await client.virtualMachines.beginAttachDetachDataDisksAndWait(
resourceGroupName,
vmName,
parameters,
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using System.Xml;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Compute;
// Generated from example definition: specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2024-07-01/examples/virtualMachineExamples/VirtualMachine_AttachDetachDataDisks_MinimumSet_Gen.json
// this example is just showing the usage of "VirtualMachines_AttachDetachDataDisks" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this VirtualMachineResource created on azure
// for more information of creating VirtualMachineResource, please refer to the document of VirtualMachineResource
string subscriptionId = "{subscription-id}";
string resourceGroupName = "rgcompute";
string vmName = "azure-vm";
ResourceIdentifier virtualMachineResourceId = VirtualMachineResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, vmName);
VirtualMachineResource virtualMachine = client.GetVirtualMachineResource(virtualMachineResourceId);
// invoke the operation
AttachDetachDataDisksRequest attachDetachDataDisksRequest = new AttachDetachDataDisksRequest
{
DataDisksToAttach = { new DataDisksToAttach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d") },
DataDisksToDetach = { new DataDisksToDetach("/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_1_disk1_1a4e784bdafa49baa780eb2d128ff65x") },
};
ArmOperation<VirtualMachineStorageProfile> lro = await virtualMachine.AttachDetachDataDisksAsync(WaitUntil.Completed, attachDetachDataDisksRequest);
VirtualMachineStorageProfile result = lro.Value;
Console.WriteLine($"Succeeded: {result}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
location: https://foo.com/operationstatus
{
"imageReference": {
"publisher": "MicrosoftWindowsServer",
"offer": "WindowsServer",
"sku": "2016-Datacenter",
"version": "latest"
},
"osDisk": {
"osType": "Windows",
"name": "myOsDisk",
"createOption": "FromImage",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "Premium_LRS",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk"
},
"diskSizeGB": 30
},
"dataDisks": [
{
"lun": 0,
"name": "vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d",
"createOption": "Attach",
"caching": "ReadWrite",
"managedDisk": {
"storageAccountType": "Premium_LRS",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/vmss3176_vmss3176_0_disk2_6c4f554bdafa49baa780eb2d128ff39d"
},
"diskSizeGB": 30
}
]
}
location: https://foo.com/operationstatus
定義
名前 |
説明 |
ApiEntityReference
|
ソース リソース識別子。 スナップショットまたはディスクの作成元のディスク復元ポイントを指定できます。
|
ApiError
|
API エラー。
|
ApiErrorBase
|
API エラーベース。
|
AttachDetachDataDisksRequest
|
仮想マシンでのデータ ディスクのアタッチ操作とデタッチ操作に指定されたパラメーター。
|
CachingTypes
|
キャッシュ要件を指定します。 指定できる値は、None、ReadOnly、ReadWrite です。 既定の動作は、Standard Storage の場合は [なし] です。Premium Storage の ReadOnly。
|
CloudError
|
コンピューティング サービスからのエラー応答。
|
DataDisk
|
仮想マシンにデータ ディスクを追加するために使用するパラメーターを指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
|
DataDisksToAttach
|
接続するマネージド データ ディスクの一覧。
|
DataDisksToDetach
|
デタッチするマネージド データ ディスクの一覧。
|
DiffDiskOptions
|
オペレーティング システム ディスクのエフェメラル ディスク設定を指定します。
|
DiffDiskPlacement
|
オペレーティング システム ディスクのエフェメラル ディスクの配置を指定します。 指定できる値は、CacheDisk、ResourceDisk、NvmeDisk です。 既定の動作は、vm サイズ用に構成されている場合は CacheDisk を 、それ以外の場合は ResourceDisk するか、NvmeDisk 使用されます。 キャッシュ ディスクを公開する VM サイズを確認するには、https://docs.microsoft.com/azure/virtual-machines/windows/sizes の Windows VM と https://docs.microsoft.com/azure/virtual-machines/linux/sizes の Linux VM の VM サイズに関するドキュメントを参照してください。 NvmeDisk の最小 API バージョン: 2024-03-01。
|
DiffDiskSettings
|
仮想マシンで使用されるオペレーティング システム ディスクのエフェメラル ディスク設定を指定します。
|
DiskControllerTypes
|
VM 用に構成されたディスク コントローラーの種類を指定します。
注: このプロパティは、指定された最小 API バージョンのオペレーティング システム ディスクと VM サイズの機能に基づいて、"hyperVGeneration" を V2 に設定して仮想マシンが作成されている場合、既定のディスク コントローラーの種類に設定されます。 VM の割り当てを暗黙的に解除して再割り当てする VM 構成の VM サイズを更新しない限り、ディスク コントローラーの種類を更新する前に VM の割り当てを解除する必要があります。 最小 API バージョン: 2022-08-01。
|
DiskCreateOptionTypes
|
仮想マシン ディスクの作成方法を指定します。 指定できる値は アタッチ: この値は、特殊なディスクを使用して仮想マシンを作成するときに使用されます。
FromImage: この値は、イメージを使用して仮想マシンを作成するときに使用されます。 プラットフォーム イメージを使用している場合は、上記の imageReference 要素も使用する必要があります。 マーケットプレース イメージを使用している場合は、前に説明した plan 要素も使用する必要があります。
|
DiskDeleteOptionTypes
|
VM の削除時に OS ディスクを削除するかデタッチするかを指定します。 指定できる値は、Delete です。 この値を使用すると、VM の削除時に OS ディスクが削除されます。 切り離す。 この値を使用すると、VM が削除された後も os ディスクが保持されます。 既定値は、[デタッチに設定されます。 エフェメラル OS ディスクの場合、既定値は Deleteに設定されます。 ユーザーは、一時的な OS ディスクの削除オプションを変更できません。
|
DiskDetachOptionTypes
|
ディスクのデタッチ中に使用するデタッチ動作、または仮想マシンからのデタッチ処理中のデタッチ動作を指定します。 サポートされている値: ForceDetach。 detachOption: ForceDetach は、マネージド データ ディスクにのみ適用されます。 仮想マシンからの予期しない障害が原因でデータ ディスクの以前のデタッチ試行が完了せず、ディスクがまだ解放されていない場合は、最後の手段として強制デタッチを使用して、ディスクを VM から強制的にデタッチします。 このデタッチ動作を使用する場合、すべての書き込みがフラッシュされていない可能性があります。 detachOption: 'ForceDetach' の設定と共に、データ ディスクの更新を 'true' に強制的にデタッチするには。
|
DiskEncryptionSetParameters
|
マネージド ディスクのカスタマー マネージド ディスク暗号化セットのリソース ID を指定します。
|
DiskEncryptionSettings
|
OS ディスクの暗号化設定を指定します。 最小 API バージョン: 2015-06-15。
|
ImageReference
|
使用するイメージに関する情報を指定します。 プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージに関する情報を指定できます。 この要素は、プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージを使用する場合に必要ですが、他の作成操作では使用されません。
|
InnerError
|
内部エラーの詳細。
|
KeyVaultKeyReference
|
Key Vault 内のキー暗号化キーの場所を指定します。
|
KeyVaultSecretReference
|
ディスク暗号化キー (Key Vault シークレット) の場所を指定します。
|
ManagedDiskParameters
|
マネージド ディスクのパラメーター。
|
OperatingSystemTypes
|
オペレーティング システムの種類。
|
OSDisk
|
仮想マシンで使用されるオペレーティング システム ディスクに関する情報を指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
|
securityEncryptionTypes
|
マネージド ディスクの EncryptionType を指定します。 VMGuestState BLOB と共にマネージド ディスクの暗号化を行う場合は DiskWithVMGuestState、VMGuestState BLOB のみを暗号化する場合は VMGuestStateOnly、VMGuestState BLOB にファームウェア状態を保持しない場合は NonPersistedTPM に設定されます。
注: 機密 VM にのみ設定できます。
|
StorageAccountTypes
|
マネージド ディスクのストレージ アカウントの種類を指定します。 注: UltraSSD_LRSはデータ ディスクでのみ使用できます。OS ディスクでは使用できません。
|
StorageProfile
|
仮想マシン ディスクのストレージ設定を指定します。
|
SubResource
|
|
VirtualHardDisk
|
仮想ハード ディスク。
|
VMDiskSecurityProfile
|
マネージド ディスクのセキュリティ プロファイルを指定します。
|
ApiEntityReference
ソース リソース識別子。 スナップショットまたはディスクの作成元のディスク復元ポイントを指定できます。
名前 |
型 |
説明 |
id
|
string
|
/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..の形式の ARM リソース ID。
|
ApiError
API エラー。
名前 |
型 |
説明 |
code
|
string
|
エラー コード。
|
details
|
ApiErrorBase[]
|
Api エラーの詳細
|
innererror
|
InnerError
|
Api 内部エラー
|
message
|
string
|
エラー メッセージ。
|
target
|
string
|
特定のエラーのターゲット。
|
ApiErrorBase
API エラーベース。
名前 |
型 |
説明 |
code
|
string
|
エラー コード。
|
message
|
string
|
エラー メッセージ。
|
target
|
string
|
特定のエラーのターゲット。
|
AttachDetachDataDisksRequest
仮想マシンでのデータ ディスクのアタッチ操作とデタッチ操作に指定されたパラメーター。
CachingTypes
キャッシュ要件を指定します。 指定できる値は、None、ReadOnly、ReadWrite です。 既定の動作は、Standard Storage の場合は [なし] です。Premium Storage の ReadOnly。
名前 |
型 |
説明 |
None
|
string
|
|
ReadOnly
|
string
|
|
ReadWrite
|
string
|
|
CloudError
コンピューティング サービスからのエラー応答。
DataDisk
仮想マシンにデータ ディスクを追加するために使用するパラメーターを指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
名前 |
型 |
説明 |
caching
|
CachingTypes
|
キャッシュ要件を指定します。 指定できる値は、None、ReadOnly、ReadWrite です。 既定の動作は、Standard Storage の場合は [なし] です。Premium Storage の ReadOnly。
|
createOption
|
DiskCreateOptionTypes
|
仮想マシン ディスクの作成方法を指定します。 指定できる値は アタッチ: この値は、特殊なディスクを使用して仮想マシンを作成するときに使用されます。
FromImage: この値は、イメージを使用して仮想マシン データ ディスクを作成するときに使用されます。 プラットフォーム イメージを使用している場合は、上記の imageReference 要素も使用する必要があります。 マーケットプレース イメージを使用している場合は、前に説明した plan 要素も使用する必要があります。
空: この値は、空のデータ ディスクを作成するときに使用されます。
コピー: この値は、スナップショットまたは別のディスクからデータ ディスクを作成するために使用されます。
復元: この値は、ディスク復元ポイントからデータ ディスクを作成するために使用されます。
|
deleteOption
|
DiskDeleteOptionTypes
|
VM の削除時にデータ ディスクを削除するかデタッチするかを指定します。 指定できる値は、Delete です。 この値を使用すると、VM の削除時にデータ ディスクが削除されます。 切り離す。 この値を使用すると、VM が削除された後もデータ ディスクが保持されます。 既定値は、[デタッチに設定されます。
|
detachOption
|
DiskDetachOptionTypes
|
ディスクのデタッチ中に使用するデタッチ動作、または仮想マシンからのデタッチ処理中のデタッチ動作を指定します。 サポートされている値: ForceDetach。 detachOption: ForceDetach は、マネージド データ ディスクにのみ適用されます。 仮想マシンからの予期しない障害が原因でデータ ディスクの以前のデタッチ試行が完了せず、ディスクがまだ解放されていない場合は、最後の手段として強制デタッチを使用して、ディスクを VM から強制的にデタッチします。 このデタッチ動作を使用する場合、すべての書き込みがフラッシュされていない可能性があります。 detachOption: 'ForceDetach' の設定と共に、データ ディスクの更新を 'true' に強制的にデタッチするには。
|
diskIOPSReadWrite
|
integer
|
StorageAccountType がUltraSSD_LRSされている場合のマネージド ディスクの Read-Write IOPS を指定します。 VirtualMachine ScaleSet VM ディスクの場合にのみ返されます。 VirtualMachine Scale Set の更新によってのみ更新できます。
|
diskMBpsReadWrite
|
integer
|
StorageAccountType がUltraSSD_LRSされている場合のマネージド ディスクの帯域幅 (MB/秒) を指定します。 VirtualMachine ScaleSet VM ディスクの場合にのみ返されます。 VirtualMachine Scale Set の更新によってのみ更新できます。
|
diskSizeGB
|
integer
|
空のデータ ディスクのサイズをギガバイト単位で指定します。 この要素を使用して、仮想マシン イメージ内のディスクのサイズを上書きできます。 プロパティ 'diskSizeGB' は、ディスクのバイト数 x 1024^3 であり、値を 1023 より大きくすることはできません。
|
image
|
VirtualHardDisk
|
ソース ユーザー イメージの仮想ハード ディスク。 仮想ハード ディスクは、仮想マシンに接続される前にコピーされます。 SourceImage が指定されている場合、移行先の仮想ハード ドライブは存在しない必要があります。
|
lun
|
integer
|
データ ディスクの論理ユニット番号を指定します。 この値は、VM 内のデータ ディスクを識別するために使用されるため、VM に接続されているデータ ディスクごとに一意である必要があります。
|
managedDisk
|
ManagedDiskParameters
|
マネージド ディスクのパラメーター。
|
name
|
string
|
ディスク名。
|
sourceResource
|
ApiEntityReference
|
ソース リソース識別子。 スナップショットまたはディスクの作成元のディスク復元ポイントを指定できます。
|
toBeDetached
|
boolean
|
データ ディスクが VirtualMachine/VirtualMachineScaleset からデタッチ中かどうかを指定します。
|
vhd
|
VirtualHardDisk
|
仮想ハード ディスク。
|
writeAcceleratorEnabled
|
boolean
|
ディスクで writeAccelerator を有効または無効にするかどうかを指定します。
|
DataDisksToAttach
接続するマネージド データ ディスクの一覧。
名前 |
型 |
説明 |
caching
|
CachingTypes
|
キャッシュ要件を指定します。 指定できる値は、None、ReadOnly、ReadWrite です。 既定の動作は、Standard Storage の場合は [なし] です。Premium Storage の ReadOnly。
|
deleteOption
|
DiskDeleteOptionTypes
|
VM の削除時にデータ ディスクを削除するかデタッチするかを指定します。 指定できる値は、Delete です。 この値を使用すると、VM の削除時にデータ ディスクが削除されます。 切り離す。 この値を使用すると、VM が削除された後もデータ ディスクが保持されます。 既定値は、[デタッチに設定されます。
|
diskEncryptionSet
|
DiskEncryptionSetParameters
|
マネージド ディスクのカスタマー マネージド ディスク暗号化セットのリソース ID を指定します。
|
diskId
|
string
|
マネージド データ ディスクの ID。
|
lun
|
integer
|
データ ディスクの論理ユニット番号。 この値は、VM 内のデータ ディスクを識別するために使用されるため、VM に接続されているデータ ディスクごとに一意である必要があります。 指定しない場合、lun は自動的に割り当てられます。
|
writeAcceleratorEnabled
|
boolean
|
ディスクで writeAccelerator を有効または無効にするかどうかを指定します。
|
DataDisksToDetach
デタッチするマネージド データ ディスクの一覧。
名前 |
型 |
説明 |
detachOption
|
DiskDetachOptionTypes
|
VM からディスクをデタッチするために使用できるサポートされているオプション。 詳細については、DetachOption オブジェクトリファレンスを参照してください。
|
diskId
|
string
|
マネージド データ ディスクの ID。
|
DiffDiskOptions
オペレーティング システム ディスクのエフェメラル ディスク設定を指定します。
DiffDiskPlacement
オペレーティング システム ディスクのエフェメラル ディスクの配置を指定します。 指定できる値は、CacheDisk、ResourceDisk、NvmeDisk です。 既定の動作は、vm サイズ用に構成されている場合は CacheDisk を 、それ以外の場合は ResourceDisk するか、NvmeDisk 使用されます。 キャッシュ ディスクを公開する VM サイズを確認するには、https://docs.microsoft.com/azure/virtual-machines/windows/sizes の Windows VM と https://docs.microsoft.com/azure/virtual-machines/linux/sizes の Linux VM の VM サイズに関するドキュメントを参照してください。 NvmeDisk の最小 API バージョン: 2024-03-01。
名前 |
型 |
説明 |
CacheDisk
|
string
|
|
NvmeDisk
|
string
|
|
ResourceDisk
|
string
|
|
DiffDiskSettings
仮想マシンで使用されるオペレーティング システム ディスクのエフェメラル ディスク設定を指定します。
DiskControllerTypes
VM 用に構成されたディスク コントローラーの種類を指定します。
注: このプロパティは、指定された最小 API バージョンのオペレーティング システム ディスクと VM サイズの機能に基づいて、"hyperVGeneration" を V2 に設定して仮想マシンが作成されている場合、既定のディスク コントローラーの種類に設定されます。 VM の割り当てを暗黙的に解除して再割り当てする VM 構成の VM サイズを更新しない限り、ディスク コントローラーの種類を更新する前に VM の割り当てを解除する必要があります。 最小 API バージョン: 2022-08-01。
名前 |
型 |
説明 |
NVMe
|
string
|
|
SCSI
|
string
|
|
DiskCreateOptionTypes
仮想マシン ディスクの作成方法を指定します。 指定できる値は アタッチ: この値は、特殊なディスクを使用して仮想マシンを作成するときに使用されます。
FromImage: この値は、イメージを使用して仮想マシンを作成するときに使用されます。 プラットフォーム イメージを使用している場合は、上記の imageReference 要素も使用する必要があります。 マーケットプレース イメージを使用している場合は、前に説明した plan 要素も使用する必要があります。
名前 |
型 |
説明 |
Attach
|
string
|
|
Copy
|
string
|
|
Empty
|
string
|
|
FromImage
|
string
|
|
Restore
|
string
|
|
DiskDeleteOptionTypes
VM の削除時に OS ディスクを削除するかデタッチするかを指定します。 指定できる値は、Delete です。 この値を使用すると、VM の削除時に OS ディスクが削除されます。 切り離す。 この値を使用すると、VM が削除された後も os ディスクが保持されます。 既定値は、[デタッチに設定されます。 エフェメラル OS ディスクの場合、既定値は Deleteに設定されます。 ユーザーは、一時的な OS ディスクの削除オプションを変更できません。
名前 |
型 |
説明 |
Delete
|
string
|
|
Detach
|
string
|
|
DiskDetachOptionTypes
ディスクのデタッチ中に使用するデタッチ動作、または仮想マシンからのデタッチ処理中のデタッチ動作を指定します。 サポートされている値: ForceDetach。 detachOption: ForceDetach は、マネージド データ ディスクにのみ適用されます。 仮想マシンからの予期しない障害が原因でデータ ディスクの以前のデタッチ試行が完了せず、ディスクがまだ解放されていない場合は、最後の手段として強制デタッチを使用して、ディスクを VM から強制的にデタッチします。 このデタッチ動作を使用する場合、すべての書き込みがフラッシュされていない可能性があります。 detachOption: 'ForceDetach' の設定と共に、データ ディスクの更新を 'true' に強制的にデタッチするには。
名前 |
型 |
説明 |
ForceDetach
|
string
|
|
DiskEncryptionSetParameters
マネージド ディスクのカスタマー マネージド ディスク暗号化セットのリソース ID を指定します。
名前 |
型 |
説明 |
id
|
string
|
リソース ID
|
DiskEncryptionSettings
OS ディスクの暗号化設定を指定します。 最小 API バージョン: 2015-06-15。
ImageReference
使用するイメージに関する情報を指定します。 プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージに関する情報を指定できます。 この要素は、プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージを使用する場合に必要ですが、他の作成操作では使用されません。
名前 |
型 |
説明 |
communityGalleryImageId
|
string
|
VM デプロイのコミュニティ ギャラリー イメージの一意の ID を指定しました。 これは、コミュニティ ギャラリー イメージの GET 呼び出しからフェッチできます。
|
exactVersion
|
string
|
仮想マシンの作成に使用されるプラットフォーム イメージまたはマーケットプレース イメージのバージョンを 10 進数で指定します。 この読み取り専用フィールドは、'version' フィールドに指定された値が 'latest' の場合にのみ、'version' と異なります。
|
id
|
string
|
リソース ID
|
offer
|
string
|
仮想マシンの作成に使用するプラットフォーム イメージまたはマーケットプレース イメージのオファーを指定します。
|
publisher
|
string
|
イメージの発行元。
|
sharedGalleryImageId
|
string
|
VM デプロイの共有ギャラリー イメージの一意の ID を指定しました。 これは、共有ギャラリー イメージの GET 呼び出しからフェッチできます。
|
sku
|
string
|
イメージ SKU。
|
version
|
string
|
仮想マシンの作成に使用するプラットフォーム イメージまたはマーケットプレース イメージのバージョンを指定します。 使用できる形式は Major.Minor.Build または 'latest' です。 メジャー、マイナー、ビルドは 10 進数です。 デプロイ時に使用可能なイメージの最新バージョンを使用するには、'latest' を指定します。 "最新" を使用している場合でも、新しいバージョンが使用可能になった場合でも、デプロイ後に VM イメージが自動的に更新されることはありません。 ギャラリー イメージのデプロイにはフィールド 'version' を使用しないでください。ギャラリー イメージは常に 'id' フィールドを使用する必要があります。ギャラリー イメージの '最新' バージョンを使用するには、バージョン入力なしで '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleryName}/images/{imageName}' を 'id' フィールドに設定してください。
|
InnerError
内部エラーの詳細。
名前 |
型 |
説明 |
errordetail
|
string
|
内部エラー メッセージまたは例外ダンプ。
|
exceptiontype
|
string
|
例外の種類。
|
KeyVaultKeyReference
Key Vault 内のキー暗号化キーの場所を指定します。
名前 |
型 |
説明 |
keyUrl
|
string
|
Key Vault のキー暗号化キーを参照する URL。
|
sourceVault
|
SubResource
|
キーを含む Key Vault の相対 URL。
|
KeyVaultSecretReference
ディスク暗号化キー (Key Vault シークレット) の場所を指定します。
名前 |
型 |
説明 |
secretUrl
|
string
|
Key Vault 内のシークレットを参照する URL。
|
sourceVault
|
SubResource
|
シークレットを含む Key Vault の相対 URL。
|
ManagedDiskParameters
マネージド ディスクのパラメーター。
OperatingSystemTypes
オペレーティング システムの種類。
名前 |
型 |
説明 |
Linux
|
string
|
|
Windows
|
string
|
|
OSDisk
仮想マシンで使用されるオペレーティング システム ディスクに関する情報を指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
名前 |
型 |
説明 |
caching
|
CachingTypes
|
キャッシュ要件を指定します。 指定できる値は、None、ReadOnly、ReadWrite です。 既定の動作は、Standard Storage の場合は [なし] です。Premium Storage の ReadOnly。
|
createOption
|
DiskCreateOptionTypes
|
仮想マシン ディスクの作成方法を指定します。 指定できる値は アタッチ: この値は、特殊なディスクを使用して仮想マシンを作成するときに使用されます。
FromImage: この値は、イメージを使用して仮想マシンを作成するときに使用されます。 プラットフォーム イメージを使用している場合は、上記の imageReference 要素も使用する必要があります。 マーケットプレース イメージを使用している場合は、前に説明した plan 要素も使用する必要があります。
|
deleteOption
|
DiskDeleteOptionTypes
|
VM の削除時に OS ディスクを削除するかデタッチするかを指定します。 指定できる値は、Delete です。 この値を使用すると、VM の削除時に OS ディスクが削除されます。 切り離す。 この値を使用すると、VM が削除された後も os ディスクが保持されます。 既定値は、[デタッチに設定されます。 エフェメラル OS ディスクの場合、既定値は Deleteに設定されます。 ユーザーは、一時的な OS ディスクの削除オプションを変更できません。
|
diffDiskSettings
|
DiffDiskSettings
|
仮想マシンで使用されるオペレーティング システム ディスクのエフェメラル ディスク設定を指定します。
|
diskSizeGB
|
integer
|
空のデータ ディスクのサイズをギガバイト単位で指定します。 この要素を使用して、仮想マシン イメージ内のディスクのサイズを上書きできます。 プロパティ 'diskSizeGB' は、ディスクのバイト数 x 1024^3 であり、値を 1023 より大きくすることはできません。
|
encryptionSettings
|
DiskEncryptionSettings
|
OS ディスクの暗号化設定を指定します。 最小 API バージョン: 2015-06-15。
|
image
|
VirtualHardDisk
|
ソース ユーザー イメージの仮想ハード ディスク。 仮想ハード ディスクは、仮想マシンに接続される前にコピーされます。 SourceImage が指定されている場合、移行先の仮想ハード ドライブは存在しない必要があります。
|
managedDisk
|
ManagedDiskParameters
|
マネージド ディスクのパラメーター。
|
name
|
string
|
ディスク名。
|
osType
|
OperatingSystemTypes
|
このプロパティを使用すると、ユーザー イメージまたは特殊化された VHD から VM を作成する場合に、ディスクに含まれる OS の種類を指定できます。 使用可能な値は、Windows Linuxです。
|
vhd
|
VirtualHardDisk
|
仮想ハード ディスク。
|
writeAcceleratorEnabled
|
boolean
|
ディスクで writeAccelerator を有効または無効にするかどうかを指定します。
|
securityEncryptionTypes
マネージド ディスクの EncryptionType を指定します。 VMGuestState BLOB と共にマネージド ディスクの暗号化を行う場合は DiskWithVMGuestState、VMGuestState BLOB のみを暗号化する場合は VMGuestStateOnly、VMGuestState BLOB にファームウェア状態を保持しない場合は NonPersistedTPM に設定されます。
注: 機密 VM にのみ設定できます。
名前 |
型 |
説明 |
DiskWithVMGuestState
|
string
|
|
NonPersistedTPM
|
string
|
|
VMGuestStateOnly
|
string
|
|
StorageAccountTypes
マネージド ディスクのストレージ アカウントの種類を指定します。 注: UltraSSD_LRSはデータ ディスクでのみ使用できます。OS ディスクでは使用できません。
名前 |
型 |
説明 |
PremiumV2_LRS
|
string
|
|
Premium_LRS
|
string
|
|
Premium_ZRS
|
string
|
|
StandardSSD_LRS
|
string
|
|
StandardSSD_ZRS
|
string
|
|
Standard_LRS
|
string
|
|
UltraSSD_LRS
|
string
|
|
StorageProfile
仮想マシン ディスクのストレージ設定を指定します。
名前 |
型 |
説明 |
dataDisks
|
DataDisk[]
|
仮想マシンにデータ ディスクを追加するために使用するパラメーターを指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
|
diskControllerType
|
DiskControllerTypes
|
VM 用に構成されたディスク コントローラーの種類を指定します。
注: このプロパティは、指定された最小 API バージョンのオペレーティング システム ディスクと VM サイズの機能に基づいて、"hyperVGeneration" を V2 に設定して仮想マシンが作成されている場合、既定のディスク コントローラーの種類に設定されます。 VM の割り当てを暗黙的に解除して再割り当てする VM 構成の VM サイズを更新しない限り、ディスク コントローラーの種類を更新する前に VM の割り当てを解除する必要があります。 最小 API バージョン: 2022-08-01。
|
imageReference
|
ImageReference
|
使用するイメージに関する情報を指定します。 プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージに関する情報を指定できます。 この要素は、プラットフォーム イメージ、マーケットプレース イメージ、または仮想マシン イメージを使用する場合に必要ですが、他の作成操作では使用されません。
|
osDisk
|
OSDisk
|
仮想マシンで使用されるオペレーティング システム ディスクに関する情報を指定します。 ディスクの詳細については、「Azure 仮想マシンのディスクと VHD について」を参照してください。
|
SubResource
名前 |
型 |
説明 |
id
|
string
|
リソース ID
|
VirtualHardDisk
仮想ハード ディスク。
名前 |
型 |
説明 |
uri
|
string
|
仮想ハード ディスクの URI を指定します。
|
VMDiskSecurityProfile
マネージド ディスクのセキュリティ プロファイルを指定します。
名前 |
型 |
説明 |
diskEncryptionSet
|
DiskEncryptionSetParameters
|
カスタマー マネージド キーで暗号化された ConfidentialVM OS ディスクと VMGuest BLOB に使用されるマネージド ディスクのカスタマー マネージド ディスク暗号化セット リソース ID を指定します。
|
securityEncryptionType
|
securityEncryptionTypes
|
マネージド ディスクの EncryptionType を指定します。 VMGuestState BLOB と共にマネージド ディスクの暗号化を行う場合は DiskWithVMGuestState、VMGuestState BLOB のみを暗号化する場合は VMGuestStateOnly、VMGuestState BLOB にファームウェア状態を保持しない場合は NonPersistedTPM に設定されます。
注: 機密 VM にのみ設定できます。
|