Hello Abhishek,

I am sorry I dont have an answer for your question. I would have to
try my self everything to give answer because I never experienced this
use case you describe.

I would suggest also to specify what version of Openstack you are
working with. Because the behaviour can change a lot in different
versions.

Cheers,

Saverio


2017-07-10 9:00 GMT+02:00 Kekane, Abhishek <abhishek.kek...@nttdata.com>:
> Hi Operators,
>
> Could you please let me know your opinion on below scenario? It will help me 
> to proceed my work.
>
> Thank you,
>
> Abhishek
>
> -----Original Message-----
> From: Kekane, Abhishek [mailto:abhishek.kek...@nttdata.com]
> Sent: Tuesday, July 04, 2017 2:52 PM
> To: OpenStack Development Mailing List (not for usage questions); 
> openstack-operators@lists.openstack.org
> Subject: Re: [Openstack-operators] [openstack-dev] [masakari][nova] Allow 
> evacuation of instances in resized state
>
> Hi operators,
>
> I want to know how evacuation of resized instances is handled in real 
> environment.
> For example if the vm is in resized state and if the compute host on which 
> the vm is resized goes down, then how will operator evacuate the vm.
>
> One possible way is to reset that vm state to error and then evacuate it to 
> new compute host.
> Please refer below scenario for reference:
>
> Scenario:
> =========
>
> Pre-conditions:
> --------------------
> 1. Config option allow_resize_to_same_host is False.
> 2. Instance path is not mounted on shared storage.
> 3. Three compute nodes: "compute node A", "compute node B" and "compute node 
> C"
>
> Steps:
> --------
> 1. Boot an instance on "compute node A".
> 2. User tries to resize the newly created instance and nova-scheduler selects 
> "compute node B" as a destination node for resize.
>    In this case nova creates a instance directory on destination "compute 
> node B" and mark the instance directory which is present on the source 
> "compute node A" as "*_resize".
>
> Note that the resize operation is yet not confirmed and "compute node B" goes 
> down.
>
> 3. Reset instance state to ERROR as nova allows evacuation only if instance 
> state is 'ACTIVE', 'STOPPED' or 'ERROR'.
> 4. Evacuate the instance to "compute node C" using target_host option.
>    As a result, instance files which were on "compute node B" will be cleaned 
> up after compute service on it is up again, but instance files which were on 
> "compute node A" marked as "*_resize" will never be cleaned up. As of now 
> there is no periodic task in nova to perform cleanup of these kinds of 
> scenarios.
>
>
> Questions:
> 1. is this the only possible way of evacuating the resized instances in real 
> world scenario?
> 2. If yes is there any way to cleanup unused (*_resize) instance files from 
> the source compute node other than cleaning up it manually?
> 3. Should we add support of evacuating of resized instances in nova?
>
> Please let me know your opinions about the same.
>
>
> Thank you,
>
> Abhishek Kekane
>
>
>
> -----Original Message-----
> From: Kekane, Abhishek [mailto:abhishek.kek...@nttdata.com]
> Sent: Thursday, June 29, 2017 5:57 PM
> To: OpenStack Development Mailing List (not for usage questions)
> Subject: Re: [openstack-dev] [masakari][nova] Allow evacuation of instances 
> in resized state
>
> Hi Chris,
>
> IMO we cannot perform auto-confirm as confirming or reverting is user's 
> choice, whereas reverting is not possible as the node where the instance is 
> resized is down.
> As suggested by you allowing this in nova require additional work. It is 
> possible if we take power-state into consideration for evacuation operation, 
> i.e. while evacuation if instance vmstate is resized and power-state is 
> shutoff then we can stop that instance after evacuation.
>
> Thank you,
>
> Abhishek Kekane
>
> -----Original Message-----
> From: Chris Friesen [mailto:chris.frie...@windriver.com]
> Sent: Wednesday, June 28, 2017 8:54 PM
> To: openstack-...@lists.openstack.org
> Subject: Re: [openstack-dev] [masakari][nova] Allow evacuation of instances 
> in resized state
>
> On 06/28/2017 05:50 AM, Kekane, Abhishek wrote:
>
>> In masakari, we are setting an instance to an error state if the
>> vmstate is resized before evacuating it to a new host.
>
> Arguably the instance should be set to an error state as soon as you notice 
> that the compute node is down.
>
>> Once an instance (which was in
>> resized state) is evacuated then it becomes active on the new host.
>> The main problem with this implementation from user’s point of view is
>> the instance goes into active state after evacuation, it should be in
>> stopped state if the prior action on the instance before resizing was
>> stop. In masakari, It’s possible to set the vm state to stopped state
>> after evacuation but for a short period the instance will go into the active 
>> state which is unacceptable.
>
> That's a valid point, I think.
>
>> *Proposing changes to Nova:*
>>
>> In the current nova code, if the instance is in stopped state before
>> evacuation, then it remains in the stopped state after evacuation is
>> complete. On the similar lines, we are proposing nova should allow
>> instance to be evacuated in resized state and after evacuation the
>> instance should remain in stopped state if the prior action on the instance 
>> is stopped before resizing.
>
> The current nova code looks at the vm_state to decide whether or not it's 
> allowable to evacuate, and while "stopped" is a valid state to evacuate from 
> "resized" is not.  In your scenario it's both "stopped" *and* "resized"
> simultaneously, but there's no way to represent that in the vmstate so I 
> think we'd have to check the power state, which would mean extending the
> check_instance_state() routine since it doesn't currently handle the power 
> state.
>
> The trickier question is how to handle the "resized" state...after evacuating 
> an instance in the "resized" state should you be able to revert the resize?  
> If so, how would that work in the case where the instance was resized on the 
> same host originally and that host is no longer available?  If not, then 
> you'll end up with resources permanently reserved on the host the instance 
> was on before the resize.  I suppose one option would be to auto-confirm the 
> resize in the case of a resize-to-same-host, but that'll be tricky to process 
> with the host not available.
>
> Also, it should be noted that when rebuilding/evacuating a "stopped" instance 
> the nova code just boots it up as normal and sets the vm_state to "active", 
> then realizes that it's supposed to be stopped and sets the task_state to 
> "powering_off" and goes down the normal path to stop the instance, eventually 
> setting the vm_state to "stopped".  So you're still going to end up with the 
> same state transitions as what you have now, though the timing will probably 
> be a bit tighter.  If you really want a stopped instance to not actually 
> start up on a rebuild/evacuate then that would be additional work.
>
> Chris
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> ______________________________________________________________________
> Disclaimer: This email and any attachments are sent in strictest confidence 
> for the sole use of the addressee and may contain legally privileged, 
> confidential, and proprietary data. If you are not the intended recipient, 
> please advise the sender by replying promptly to this email and then delete 
> and destroy this email and any attachments without any further use, copying 
> or forwarding.
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> ______________________________________________________________________
> Disclaimer: This email and any attachments are sent in strictest confidence 
> for the sole use of the addressee and may contain legally privileged, 
> confidential, and proprietary data. If you are not the intended recipient, 
> please advise the sender by replying promptly to this email and then delete 
> and destroy this email and any attachments without any further use, copying 
> or forwarding.
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
>
> ______________________________________________________________________
> Disclaimer: This email and any attachments are sent in strictest confidence
> for the sole use of the addressee and may contain legally privileged,
> confidential, and proprietary data. If you are not the intended recipient,
> please advise the sender by replying promptly to this email and then delete
> and destroy this email and any attachments without any further use, copying
> or forwarding.
> _______________________________________________
> OpenStack-operators mailing list
> OpenStack-operators@lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

_______________________________________________
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

Reply via email to