gpt4 book ai didi

java - 如何使用java sdk在Azure ARM中删除VM时删除磁盘?

转载 作者:行者123 更新时间:2023-12-03 04:29:10 24 4
gpt4 key购买 nike

我正在从 azure ARM 中删除虚拟机。当我使用java-sdk删除VM时,VM删除成功,但磁盘和网络未删除。它将 VHD 文件保存在存储中。我也尝试分离磁盘,但同样它会将磁盘与虚拟机分离,但不会删除 VHD。

删除虚拟机:-

azure.virtualMachines().delete("resourceGroupName", "vmName");

分离磁盘:-

azure.virtualMachines().getByGroup("resourceGroupName", "vmName");
vm.update().withoutDataDisk("diskName").apply();

即使执行上述操作后,存储中仍存在 VHD 文件。删除虚拟机时如何永久删除所有附加磁盘?

最佳答案

Azure-Storage 解决了这个问题。您必须从附加的存储帐户中删除 blob vhd 文件。

        CloudStorageAccount cloudStorageAccount = CloudStorageAccount.parse(storageConnectionString);
CloudBlobClient cloudBlobClient = cloudStorageAccount.createCloudBlobClient();
Iterable<CloudBlobContainer> containersList= cloudBlobClient.listContainers();
for(CloudBlobContainer container:containersList)
{
String currentContainerName = container.getName();
logger.debug("Current Container Name : "+currentContainerName);
CloudBlobContainer blobContainer = cloudBlobClient.getContainerReference(currentContainerName);
CloudPageBlob pageBlob = blobContainer.getPageBlobReference(diskName);
if(pageBlob.exists())
return pageBlob.deleteIfExists();
}

更多详情请参阅azure storage git

关于java - 如何使用java sdk在Azure ARM中删除VM时删除磁盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39233129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com