Allow for soft errors which indicate a failure that leaves the VM active

Registered by Andrew Laski

There are cases in Nova where a failure may occur, or a pre-condition for an action may not be met, which currently puts the VM into a status of ERROR. This is somewhat problematic as it limits the actions that can now be taken on that instance, even though the instance may be in exactly the same state that it was before the ERROR state. An example would be a failed set_password, or failing a precondition check before a resize. In cases like that it makes sense to leave the instance state alone, but indicate to a user that an error has occurred.

I propose that a distinction be made between a failure to do something, and an instance being in an ERROR state. Perhaps it can be considered a soft error state, or we can add the concept of a task error as opposed to a vm error.

The difficulty in this lies with the v2 API and it's restriction on Status and displaying instance faults. Mainly there's not a good way to indicate a task error without setting the instance to ERROR. A proposed solution is to take advantage of the extended-status extension which already has support in novaclient and use that to indicate a soft error. Perhaps if vm_state=error and power_state=1 we can consider the vm to be in a soft error state and display that differently in the client.

Blueprint information

Status:
Complete
Approver:
Russell Bryant
Priority:
Undefined
Drafter:
Andrew Laski
Direction:
Approved
Assignee:
Andrew Laski
Definition:
Obsolete
Series goal:
None
Implementation:
Not started
Milestone target:
None
Completed by
John Garbutt

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.