[Nutanix] Delete container fail “Storage container cannot be removed because it contains file(s)"

因曾把一個Container機器作了移轉到另一個Container後(註) 打算把這原以為是空的要作刪除,卻出現了錯誤 “Storage container cannot be removed because it contains file(s)

(註) Online/Offline migrate VM to other Container
~ Entire VM
# acli vm.update_container {VirtualMachine-name} container={Target-container-name} wait=false

~ Per vDisk
# acli vm.get {VirtualMachine-name} // 先取得VM vDisk UUID
# cli vm.update_container {VirtualMachine-name} device_uuid_list={VM-disk-UUID} container=target-container wait=false

check list
1. all VMs vDisk 是否都位於新的Container
2. delete VMs snapshot
3. delete Images

再試著刪除還是無法刪除同樣錯誤。因看來它搬移像是利用clone vDisks還是有部份檔案於舊的 Container.

Resolution:
# ncli container list // 查出目前無法刪除 Container ID
PS: 是 ID: 154807


# edit_vdisk_config –vdisk_id={vdisk id} –editor=vim // 檢查裡頭是否有 container_id: 154807 底下有無標記著 to_remove: true ;若無則手動加入標記它要移除。

# ncli container remove name=IMAGE-Container ignore-small-files=true force=true

Done.

Reference :
1. vknowledge.net – Nutanix: Unable to delete container / VDisk(s) not marked for removal
2. Multi-Cloud Life – Storage container cannot be removed because it contains files(s)