2016-08-30 2 views
0

azure ARM에서 VM을 삭제합니다. java-sdk를 사용하여 VM을 삭제하면 VM이 성공적으로 삭제되지만 디스크와 네트워크는 삭제되지 않습니다. VHD 파일을 저장소에 보관했습니다. 나 또한 디스크를 분리하려고했지만 VM에서 디스크를 분리하지만 VHD를 삭제하지는 않습니다.Azure에서 VM을 삭제하는 동안 디스크를 삭제하는 방법 java sdk를 사용 하시겠습니까?

삭제 VM : -

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

분리 디스크 : -

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

도 작동 VHD 파일 위에 수행 한 후 저장 존재합니다. VM을 삭제할 때 어떻게 모든 연결된 디스크를 영구적으로 삭제할 수 있습니까?

+0

보기 [VM을 제거한 후 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(); } 

(http://stackoverflow.com/a/35210518/5221149). – Andreas

답변

0

@PawanSharma VM 및 관련 모든 리소스를 한 번 삭제하려면 VM 및 기타 모든 리소스가 포함 된 리소스 그룹을 삭제하거나 수동으로 삭제해야합니다 .

코드에 따르면 Azure SDK for Java 버전 1.0.0-beta을 사용하고 있으므로 아래 코드를 사용하여 시도해 볼 수 있다고 제안합니다.

azure.resourceGroups().delete("<resource-group-name>"); 

참고로, 당신은 GitHub의에 sample code를 참조 할 수 있습니다.

한편, Azure SDK가없는 또 다른 방법은 Azure REST API Delete a resource group을 사용하는 것이 더 이해하기 쉬운 방법이라고 생각합니다.

+0

@ peter-pan-msft 이것은 작동 중입니다. 나는 이것이 작동하는지 시험해 보았다. 내 요구 사항에 따라 리소스 그룹을 삭제하지 않으려면 디스크 만 삭제하십시오. 디스크를 삭제할 수 있습니까? 저장소에서 BLOB 삭제를 찾았습니다. 그것이 효과가 있는지 없는지 당신은 어떤 생각을 가지고 있습니까? –

+0

@PawanSharma REST API ['Delete VM Image'] (https://msdn.microsoft.com/en-us/library/azure/dn499769.aspx) 또는 함수''VirtualMachineVMImageOperations.deleteAsync (String vmImageName)을 사용해보십시오. , boolean deleteFromStorage)]] (http://azure.github.io/azure-sdk-for-java/com/microsoft/windowsazure/management/compute/VirtualMachineVMImageOperations.html#deleteAsync-java.lang.String-boolean-) ASM의 Azure Java SDK –

+0

@ peter-pan-msft Azure ASM은 다른 개념을 가지고 있습니다. 당신이 제안한대로 ASM에서 가능하지만 Azure ARM SDk를 찾고 있습니다. –

0

이것은 Azure-Storage에 의해 해결되었습니다. 첨부 된 저장소 계정에서 blob vhd 파일을 삭제해야합니다. 더 자세하게는 azure storage git