Changes

stoney conductor: VM States

5,425 bytes added, 15:00, 27 December 2013
Naming of VM states (the second state is only needed for special cases). The following attributes need to be read:* '''sstStatus''': Located directly in virtual machine leaf.* '''sstVirtualMachineMode''': Located directly in virtual machine leaf.* '''sstProvisioningMode''': Located in the virtual machine backup sub tree(s). See the descriptions in the document [[stoney conductor: OpenLDAP directory data organisation]] in the chapter [[stoney_conductor:_OpenLDAP_directory_data_organisation#Virtual_Machine | Virtual Machine]] and [[stoney_conductor:_OpenLDAP_directory_data_organisation#Virtual_Machine:_Backup | Virtual Machine: Backup]] for details.
== Virtual Machines ==
| align="left" | Stopped
| align="center" | x
| align="center" | -| align="center" | -
| align="center" | x
| align="center" | x
| align="center" | x
| align="center" | -
| align="center" | x
| align="center" | x
| align="left" |
|-
| align="left" | Stopped, streaming [5.1 %]
| align="center" | x
| align="center" | -| align="center" | -| align="center" | (x) <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | (x) <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>| align="center" | -
| align="center" | x| align="center" | x
| align="left" | technically paused
|-
| align="left" | 3
| align="left" | Stopped, backing up
| align="center" | (x) <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>| align="center" | -| align="center" | -| align="center" | (x) <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | (x) <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>| align="center" | -
| align="center" | x| align="center" | x
| align="left" | Technically merging, retaining or streaming (sstProvisioningMode).
|-
| align="left" | 4
| align="left" | Stopped, backing up
| align="center" |
| align="center" |
| align="center" |
| align="center" |
 
| align="center" |
| align="center" |
| align="center" |
 
| align="center" |
| align="center" |
| align="left" |
|-
 
| align="left" | 5
| align="left" | Stopped, migrating
| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="LaterTechnicalClarificationNeededRestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" | Same state for the vm being migrated to a node and away from a node.
|-
| align="left" | 65
| align="left" | Starting
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" | Technically changing state from stopped or paused to running.
|-
| align="left" | 76
| align="left" | Starting, streaming [5.1 %]
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" |
|-
| align="left" | 87
| align="left" | Paused, backing up
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" | technically migrating to file
|-
| align="left" | 98
| align="left" | Paused, migrating
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" | the vm is being migrated to this node
|-
| align="left" | 109
| align="left" | Running
| align="center" | -| align="center" | x| align="center" | x| align="center" | x
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | -| align="center" | x
| align="center" | x| align="center" | x
| align="left" |
|-
| align="left" | 1110
| align="left" | Running, backing up
| align="center" | -| align="center" | (x) <ref name="TechnicalClarificationNeeded"/> <ref name="UserCanTakeAction"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | (x) <ref name="InterferencePossible"/>
| align="center" | x| align="center" | x
| align="left" | Technically merging, retaining or streaming (sstProvisioningMode).
|-
| align="left" | 1211
| align="left" | Running, streaming [5.1 %]
| align="center" | -| align="center" | (x) <ref name="TechnicalClarificationNeeded"/> <ref name="UserCanTakeAction"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/> <ref name="LaterTechnicalClarificationNeededTechnicalClarificationNeeded"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | x
| align="center" | x| align="center" | x
| align="left" |
|-
| align="left" | 1312
| align="left" | Running, migrating
| align="center" | -| align="center" | (x) <ref name="TechnicalClarificationNeeded"/> <ref name="UserCanTakeAction"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | -
| align="center" | (x) <ref name="LaterRestrictionsRequiredRestrictionsRequired"/>| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" | x
| align="center" | x| align="center" | x
| align="left" | The vm is being migrated away from this node.
|-
| align="left" | 1413
| align="left" | Shutting down
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" |
|-
| align="left" | 1514
| align="left" | Powering off
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" |
|-
| align="left" | 1615
| align="left" | Deleting
| align="center" | -| align="center" | -| align="center" | -| align="center" | -
| align="center" | -| align="center" | -| align="center" | -
| align="center" | x| align="center" | x
| align="left" |
|-
== VM Templates ==
Naming of VM states (the second state is only needed for special cases), valid for VM Templates. Since VM Templates are basically VMs with additional metadata and can be cloned from, most of the runtime states are the same as for VMs and therefore not explicitly copied below and the respective entries are shaded <span style="background-color:Silver; border:1px solid black;">&nbsp;&nbsp;&nbsp;</span>. Please keep the [[stoney conductor: Lean Provisioning | Lean Provisioning]] documentation in mind for displaying the proper action together with the explanations in the [[stoney_conductor:_OpenLDAP_directory_data_organisation#Virtual_Machine | Virtual Machine]] document for the attribute <code>sstVirtualMachineMode</code>. VM-(Sub)States (''streaming'', ''backing-up'', ...) and Machine Modes (''ready to use'', ''maintenance'', ...) are orthogonal concepts even though they are not shown as such in the table below. Permit an action only if both VM-State and Machine Mode permit it (logical <code>AND</code>). 
{| border="1" style="border-collapse: collapse; font-size:100%;"
|-
! colspan="6" | '''Action'''
! rowspan="2" | '''Explanation'''
|-
| align="center" width="70px" | '''start'''
| align="center" width="70px" | '''shutdown'''
| align="center" width="70px" | '''destroy'''
| align="center" width="70px" | '''migrate'''
| align="center" width="70px" | '''edit'''
| align="center" width="70px" | '''delete'''
| align="center" width="70px" | '''toggle'''
| align="center" width="70px" | '''use'''
| align="center" width="70px" | '''persistent'''
| align="center" width="70px" | '''dynamic'''
|-
| align="center" width="70px" | '''Start'''
| align="center" width="70px" | '''Shutdown'''
| align="center" width="70px" | '''Power Off'''
| align="center" width="70px" | '''Migrate'''
| align="center" width="70px" | '''Edit'''
| align="center" width="70px" | '''Delete'''
| align="center" width="70px" | '''Toggle<br/>Boot-Drive'''
| align="center" width="70px" | '''Use'''
| align="center" width="70px" | '''Create<br/>persistent VM'''
| align="center" width="70px" | '''Create<br/>dynamic VM'''
|-
| align="left" | 1
| align="left" | Stopped, ready for use| align="center" | x-| align="center" | -| align="center" | -
| align="center" | x
| align="center" | (x) <ref name="RestrictionsRequired"/>
| align="center" | x
| align="center" | -
| align="center" | -
| align="center" | x
| align="center" | x
| align="center" | | align="center" | x| align="center" | x| align="left" | |-If sstVirtualMachineMode is set to ready for use.
|-
| align="left" | 2
| align="left" | Stopped, streaming
| align="center" | -| align="center" | -| align="center" | -| align="center" | (x) <ref name="TechnicalClarificationNeeded"/>
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | -| align="center" | -| align="center" | x| align="center" | x| align="left" | After clicking "+" a list of all the vms (sstDisplayName) should appear with [5.1 %].|-
|-
| align="left" | 3
| align="left" | Stopped, backing up
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -| align="left" | |-
|-
| align="left" | 4
| align="left" | Stopped, migrating
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | x| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | Same state for the vm being migrated to a node and away from a node.
 
|-
 
 
| align="left" | 5
| align="left" | Stopped, first installation
| align="center" | x| align="center" | -| align="center" | -| align="center" | x
| align="center" | x| align="center" | x| align="center" | x| align="center" | -| align="center" | -| align="center" | -
| align="left" | If sstVirtualMachineMode is set to first installation.
|-
|-
| align="left" | 6
| align="left" | Stopped, maintenance mode
| align="center" | x| align="center" | -| align="center" | -| align="center" | x
| align="center" | x| align="center" | x| align="center" | x| align="center" | -| align="center" | -| align="center" | -
| align="left" | If sstVirtualMachineMode is set to maintenance mode.
|-
|-
| align="left" | 7
| align="left" | Stopped, Do not use
| align="center" | x
| align="center" | -
| align="center" | -
| align="center" | x
 
| align="center" | x
| align="center" | x
| align="center" | x
| align="center" | -
| align="center" | -
| align="center" | -
| align="left" | If sstVirtualMachineMode does not exist or set to do not use.
 
|-
| align="left" | 8
| align="left" | Starting
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | -| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | Technically changing state from stopped to running.
|-
|-| align="left" | 89
| align="left" | Paused, backing up
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | Technically migrating to file.
|-
|-| align="left" | 910
| align="left" | Paused, migrating
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | The vm is being migrated to this node.
|-
| align="left" | 10
| align="left" | Running
| align="center" |
| align="center" |
| align="center" |
| align="center" |
 
| align="center" |
| align="center" |
| align="center" |
| align="center" |
| align="center" |
| align="center" |
| align="left" |
|-
 
| align="left" | 11
| align="left" | Running, backing up
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | (x) <ref name="TechnicalClarificationNeeded"/>| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | Technically merging, retaining, streaming.
|-
|-
| align="left" | 12
| align="left" | Running, migrating
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | -| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" | The vm is being migrated away from this node.
|-
|-
| align="left" | 13
| align="left" | Running, first installation
| align="center" | -| align="center" | x| align="center" | x| align="center" | x
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | x| align="center" | x| align="center" | -| align="center" | -
| align="left" | If sstVirtualMachineMode is set to first installation.
|-
|-
| align="left" | 14
| align="left" | Running, maintenance mode
| align="center" | -| align="center" | x| align="center" | x| align="center" | x
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | x| align="center" | x| align="center" | -| align="center" | -
| align="left" | If sstVirtualMachineMode is set to maintenance mode.
|-
|-
| align="left" | 15
| align="left" | Shutting downRunning, Do not use| align="center" | -| align="center" | x| align="center" | x| align="center" | x
| align="center" | (x) <ref name="RestrictionsRequired"/>| align="center" | -| align="center" | x| align="center" | x| align="center" | -| align="center" | -| align="left" | |If <code>sstVirtualMachineMode</code> does not exist. To achieve a '''self healing''' effect, the [[VM-Manager]] must set <code>sstVirtualMachineMode</code> to '''does not exist'''.
|-
| align="left" | 16
| align="left" | Powering offShutting down| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | x| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" |
|-
|-
| align="left" | 17
| align="left" | DeletingPowering off| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | x| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -
| align="left" |
|-
|-
| align="left" | 18
| align="left" | Do not useDeleting| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" |
| align="center" style="background-color:Silver;" | | align="center" style="background-color:Silver;" | | align="center" | -| align="center" style="background-color:Silver;" | | align="center" | -| align="center" | -| align="left" | If sstVirtualMachineMode does not exist.|-
|}
==References==
<references>
<ref name=LaterTechnicalClarificationNeededTechnicalClarificationNeeded>Later. Should be implementable, but clarification needed on how it works.</ref><ref name=LaterRestrictionsRequiredRestrictionsRequired>Later. Function can be made available partially. For example: Editing the name, description or even IP of a VM may be always possible, while changing the memory and/or disk size depends heavily on the state of the VM.</ref><ref name="UserCanTakeAction">A user connected to the VM can take this action despite being unavailable in the web-interface.</ref><ref name="InterferencePossible">While the action is possible, the result may not be satisfying, most probably due to race conditions.</ref>
</references>
[[Category:stoney conductor]][[Category: Lean Provisioning]]
SLB, editor, reviewer
3,368
edits