<div dir="ltr"><div>Hi,</div><div>As you know we can use Ceph as ephemeral storage in nova. But we have some problems with its integration. First of all, total storage of compute nodes is calculated incorrectly. (more details here <a href="https://bugs.launchpad.net/nova/+bug/1387812">https://bugs.launchpad.net/nova/+bug/1387812</a>). I want to fix this problem. Now size of total storage is only a sum of storage of all compute nodes. And information about the total storage is got directly from db. (<a href="https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/api.py#L663-L691">https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/api.py#L663-L691</a>). </div><div>To fix the problem we should check type of using storage. If type of storage is RBD we should get information about total storage directly from Ceph storage.</div><div>I proposed a patch (<a href="https://review.openstack.org/#/c/132084/">https://review.openstack.org/#/c/132084/</a>) which should fix this problem, but I got the fair comment that we shouldn't check type of storage on the API layer.</div><div><br></div><div>The other problem is that information about size of compute node incorrect too. Now size of each node equal to size of whole Ceph cluster. </div><div><br></div><div>On one hand it is good to do not check type of storage on the API layer, on the other hand there are some reasons to check it on API layer:</div><div>1. It would be useful for live migration because now a user has to send information about storage with API request.</div><div>2. It helps to fix problem with total storage.</div><div>3. It helps to fix problem with size of compute nodes. </div><div><br></div><div>So I want to ask you: "Is this a good idea to get information about type of storage on API layer? If no - Is there are any ideas to get correct information about Ceph storage?"</div></div>