[openstack-dev] [OpenStack][Nova][cold migration] Why we need confirm resize after cold migration

Jay Lau jay.lau.513 at gmail.com
Wed Jan 8 23:12:07 UTC 2014


2014/1/9 Russell Bryant <rbryant at redhat.com>

> On 01/08/2014 09:53 AM, John Garbutt wrote:
> > On 8 January 2014 10:02, David Xie <david.scriptfan at gmail.com> wrote:
> >> In nova/compute/api.py#2289, function resize, there's a parameter named
> >> flavor_id, if it is None, it is considered as cold migration. Thus, nova
> >> should skip resize verifying. However, it doesn't.
> >>
> >> Like Jay said, we should skip this step during cold migration, does it
> make
> >> sense?
> >
> > Not sure.
> >
> >> On Wed, Jan 8, 2014 at 5:52 PM, Jay Lau <jay.lau.513 at gmail.com> wrote:
> >>>
> >>> Greetings,
> >>>
> >>> I have a question related to cold migration.
> >>>
> >>> Now in OpenStack nova, we support live migration, cold migration and
> >>> resize.
> >>>
> >>> For live migration, we do not need to confirm after live migration
> >>> finished.
> >>>
> >>> For resize, we need to confirm, as we want to give end user an
> opportunity
> >>> to rollback.
> >>>
> >>> The problem is cold migration, because cold migration and resize share
> >>> same code path, so once I submit a cold migration request and after
> the cold
> >>> migration finished, the VM will goes to verify_resize state, and I
> need to
> >>> confirm resize. I felt a bit confused by this, why do I need to verify
> >>> resize for a cold migration operation? Why not reset the VM to original
> >>> state directly after cold migration?
> >
> > I think the idea was allow users/admins to check everything went OK,
> > and only delete the original VM when the have confirmed the move went
> > OK.
> >
> > I thought there was an auto_confirm setting. Maybe you want
> > auto_confirm cold migrate, but not auto_confirm resize?
>
> I suppose we could add an API parameter to auto-confirm these things.
> That's probably a good compromise.
>
OK, will use auto-confirm to handle this.


>
> >>> Also, I think that probably we need split compute.api.resize() to two
> >>> apis: one is for resize and the other is for cold migrations.
> >>>
> >>> 1) The VM state can be either ACTIVE and STOPPED for a resize operation
> >>> 2) The VM state must be STOPPED for a cold migrate operation.
> >
> > We just stop the VM them perform the migration.
> > I don't think we need to require its stopped first.
> > Am I missing something?
>
> Don't think so ... I think we should leave it as is.
>
OK, will leave this as it is for now.

>
> --
> Russell Bryant
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140109/43efaf6f/attachment.html>


More information about the OpenStack-dev mailing list