nova/doc/source/vmstates.rst

4.0 KiB

Virtual Machine States and Transitions

Preconditions for commands

The following diagrams show the required virtual machine (VM) states and task states for various commands issued by the user:

digraph states {

node [fontsize=10 fontname="Monospace"] /* states */ building [label="BUILDING"]

active [label="ACTIVE"] paused [label="PAUSED"] suspended [label="SUSPENDED"] stopped [label="STOPPED"] rescued [label="RESCUED"] resized [label="RESIZED"] soft_deleted [label="SOFT_DELETED"] deleted [label="DELETED"] error [label="ERROR"] shelved [label="SHELVED"] shelved_offloaded [label="SHELVED_OFFLOADED"]

/* apis */ create [shape="rectangle"] create -> active create -> error building -> create

delete [shape="rectangle"] delete -> deleted building -> delete paused -> delete suspended -> delete stopped -> delete rescued -> delete soft_deleted -> delete error -> delete

soft_delete [shape="rectangle"] soft_delete -> soft_deleted soft_delete -> error active -> soft_delete stopped -> soft_delete

restore [shape="rectangle"] restore -> active restore -> error soft_deleted -> restore

pause [shape="rectangle"] pause -> paused pause -> error active -> pause

unpause [shape="rectangle"] unpause -> active unpause -> error paused -> unpause

suspend [shape="rectangle"] suspend -> suspended suspend -> error active -> suspend

resume [shape="rectangle"] resume -> active resume -> error suspended -> resume

start [shape="rectangle"] start -> active start -> error stopped -> start

stop [shape="rectangle"] stop -> stopped stop -> error active -> stop error -> stop

rescue [shape="rectangle"] rescue -> rescued rescue -> error active -> rescue stopped -> rescue error -> rescue

unrescue [shape="rectangle"] unrescue -> active rescued -> unrescue

resize [shape="rectangle"] resize -> resized resize -> error active -> resize stopped -> resize

confirm_resize [shape="rectangle"] confirm_resize -> active confirm_resize -> error resized -> confirm_resize confirm_resize [shape="rectangle"]

revert_resize -> active revert_resize -> error resized -> revert_resize

snapshot [shape="rectangle"] snapshot -> active snapshot -> stopped snapshot -> error active -> snapshot stopped -> snapshot

backup [shape="rectangle"] backup -> active backup -> stopped backup -> error active -> backup stopped -> backup

rebuild [shape="rectangle"] rebuild -> active rebuild -> error active -> rebuild stopped -> rebuild

set_admin_password [shape="rectangle"] set_admin_password -> active set_admin_password -> error active -> set_admin_password

reboot [shape="rectangle"] reboot -> active reboot -> error active -> reboot stopped -> reboot paused -> reboot suspended -> reboot error -> reboot

live_migrate [shape="rectangle"] live_migrate -> active live_migrate -> error active -> live_migrate

shelve [shape="rectangle"] shelve -> shelved shelve -> shelved_offloaded shelve -> error active -> shelve stopped -> shelve paused -> shelve suspended -> shelve

shelve_offload [shape="rectangle"] shelve_offload -> shelved_offloaded shelve_offload -> error shelved -> shelve_offload

unshelve [shape="rectangle"] unshelve -> active unshelve -> error shelved -> unshelve shelved_offloaded -> unshelve

}

image

image

Create instance states

The following diagram shows the sequence of VM states, task states, and power states when a new VM instance is created.

image