Hello CloudStack community, Could you please take a look to following issue. The similar was described it that topic http://comments.gmane.org/gmane.comp.apache.cloudstack.user/13848 but looks like wasn't resolved.
In my environment I have: CloudStack v. 4.2.1 VMware v. 5.1 Recently I have found that CloudStack UI provide following information for SATA storage: Disk Total 5.00 TB Disk Allocated 7.26 TB I have looked to VMware side and found absolutely different data: Capacity: 5.00 TB Provisioned Space: 4.27 TB As you can see CloudStack show allocated disk space on 3 TB more. My Global Settings that could be helpful for investigation: storage.overprovisioning.factor = 4 storage.cleanup.enabled = true storage.cleanup.interval = 86400 storage.stats.interval = 60000 capacity.check.period = 60000 expunge.delay = 60 expunge.interval = 86400 expunge.workers = 10 I have looked to CloudStack database and found that some Volumes state in 'Destroy' but also I have found a lot of in 'Expunged': mysql> select v.state, sum(v.size) from volumes v, vm_instance vm, vm_root_disk_tags d where v.instance_id=vm.id and d.vm_id=vm.id and d.root_disk_tag like 'sata' group by v.state; +-----------+---------------+ | state | sum(v.size) | +-----------+---------------+ | Destroy | 664646189056 | | Expunged | 5267777388544 | | Expunging | 2147483648 | | Ready | 3833258311680 | +-----------+---------------+ 4 rows in set (0.00 sec) And a lot of VMs that have state=Expunged (in volume table) still present in VMware and on storage. For example all these VMs still present in VMware: mysql> select vm.name,vm.instance_name,vm.state AS VM_state,v.id,v.size,v.state AS VOLUME_state,v.removed,d.root_disk_tag from volumes v, vm_instance vm, vm_root_disk_tags d where v.instance_id=vm.id and d.vm_id=vm.id and v.state like 'Expunged' and d.root_disk_tag like 'sata'; (Names have been changed) +----------+---------------+-----------+-----------+--------------+--------------+---------------------+---------------+ | name | instance_name | VM_state | id | size | VOLUME_state | removed | root_disk_tag | +----------+---------------+-----------+-----------+--------------+--------------+---------------------+---------------+ | name1 | i-43-2147-VM | Expunging | 2195 | 53687091200 | Expunged | 2014-10-16 08:12:04 | sata | | name2 | i-17-2123-VM | Expunging | 2173 | 10737418240 | Expunged | 2014-10-15 19:14:30 | sata | | name3 | i-43-2052-VM | Expunging | 2098 | 10737418240 | Expunged | 2014-10-07 11:57:49 | sata | | name4 | i-191-1954-VM | Expunging | 2000 | 42949672960 | Expunged | 2014-10-01 15:15:04 | sata | | name5 | i-132-1966-VM | Expunging | 2012 | 21474836480 | Expunged | 2014-09-29 20:33:12 | sata | | name6 | i-132-1967-VM | Expunging | 2013 | 21474836480 | Expunged | 2014-09-29 20:33:12 | sata | | name7 | i-132-1962-VM | Expunging | 2008 | 10737418240 | Expunged | 2014-09-29 20:33:11 | sata | | name8 | i-132-1964-VM | Expunging | 2010 | 10737418240 | Expunged | 2014-09-29 20:33:11 | sata | Not all VMs with 'Expunged' state still present in VMware but a lot of from them still weren't removed! mysql> select id,uuid,name,status,capacity_bytes,capacity_iops,tag,disk_used_capacity,disk_reserved_capacity from storage_pool_view; +----+--------------------------------------------------------------+---------------+-------------+----------------+---------------+------+--------------------+------------------------+ | id | uuid | name | status | capacity_bytes | capacity_iops | tag | disk_used_capacity | disk_reserved_capacity | +----+--------------------------------------------------------------+---------------+-------------+----------------+---------------+------+--------------------+------------------------+ | 2 | 096b3b6e-481d-33b4-9b34-7178612a2535 | SATA | Up | 5497289703424 | NULL | sata | 7913594810761 | 0 | +----+--------------------------------------------------------------+---------------+-------------+----------------+---------------+------+--------------------+------------------------+ 5 rows in set (0.02 sec) Also I have found that Expunged volumes have 'chain_info' field: mysql> select name,removed,state,chain_info from volumes where id=2112 \G *************************** 1. row *************************** name: ROOT-2066 removed: 2014-10-09 11:57:52 state: Expunged chain_info: {"diskDeviceBusName":"scsi0:0","diskChain":["[SATA1] i-238-2066-VM/ROOT-2066.vmdk"]} 1 row in set (0.00 sec) BUT Destroyed VMs don't have it: mysql> select name,removed,state,chain_info from volumes where id=2192 \G *************************** 1. row *************************** name: ROOT-2143 removed: 2014-10-15 18:42:48 state: Destroy chain_info: NULL 1 row in set (0.00 sec) So, the questions are: - How CloudStack calculate allocated disk size for storage? Is it use disk size from 'Expunged' volumes? - Can I manually push CloudStack to remove 'Expunged' volumes from VMware? I haven't created bug in Jira but I can if it's needed. Thank you! -- Best regards, Denis