<div><div>Hi,all</div><div><br></div><div>      This is the spec [0] about rebuild the volumed backed server.The question raised in the spec is about how to bandle the root volume.Finally,in Nova team,we think that the cleanest / best solution to this is to add a volume action API to cinder for re-imaging the volume.Once that is available in a new cinder v3 microversion, nova can use it. The reason I think this should be done in Cinder with re-imaging the volume there is (1) it's cleaner from the nova side and (2) then Cinder is in control of how that re-image should happen, along with any details it needs to update, e.g. the volume's "volume_image_metadata" information would need to be updated.We really aren't suitable to do the volume create/delete/swap orchestration thing since that entails issues with the volume type being gone, going over quota, what to do about deleting the old volume, etc.</div><div>      So Nova team want Cinder to achieve the re-image api.But, I see a spec about volume revert by snapshot[1].It is so good for rebuild operation.In short,I have two ideas,one is change the volume revert by snapshot spec to re-image spec,not only it can let the volume revert by snapshot,but also can re-image the volume which the image's size is greater than 0;another idea is add a only re-image spec,it only can re-image the volume which the image's size is greater than 0.</div><div>      What do you think of the two ideas?Any suggestion is welcome.Thank you!</div><div>      Note:the instance snapshot for image backed server's image size is greater than 0,but the volume backed server 's image size is equal 0.</div><div>      Re:</div><div>      [0]https://review.openstack.org/#/c/532407/</div><div>      [1]https://specs.openstack.org/openstack/cinder-specs/specs/pike/cinder-volume-revert-by-snapshot.html</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>Best Regards</div><div>Rambo</div></div><div><tincludetail></tincludetail></div><!--<![endif]--><div id="gtx-trans" style="position: absolute; left: -18px; top: 631px;"><div class="gtx-trans-icon"></div></div>