stoney conductor: VM States
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 Virtual Machine and Virtual Machine: Backup for details.
Virtual Machines
Naming of VM states (the second state is only needed for special cases), valid for VMs:
No. | Status | Run Action | Action | Explanation | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Start | Shutdown | Power off | Migrate | Edit | Delete | Use | Users | Groups | |||
1 | Stopped | x | - | - | x | x | x | - | x | x | |
2 | Stopped, streaming [5.1 %] | x | - | - | (x) [1] | (x) [2] | (x) [1] | - | x | x | technically paused |
3 | Stopped, backing up | (x) [1] | - | - | (x) [1] | (x) [2] | (x) [1] | - | x | x | Technically merging, retaining or streaming (sstProvisioningMode). |
4 | Stopped, migrating | (x) [1] | - | - | - | (x) [2] | - | - | x | x | Same state for the vm being migrated to a node and away from a node. |
5 | Starting | - | - | - | - | (x) [2] | - | - | x | x | Technically changing state from stopped or paused to running. |
6 | Starting, streaming [5.1 %] | - | - | - | - | (x) [2] | - | - | x | x | |
7 | Paused, backing up | - | - | - | - | (x) [2] | - | - | x | x | technically migrating to file |
8 | Paused, migrating | - | - | - | - | (x) [2] | - | - | x | x | the vm is being migrated to this node |
9 | Running | - | x | x | x | (x) [2] | - | x | x | x | |
10 | Running, backing up | - | (x) [1] [3] | (x) [1] | (x) [1] | (x) [2] | (x) [1] | (x) [4] | x | x | Technically merging, retaining or streaming (sstProvisioningMode). |
11 | Running, streaming [5.1 %] | - | (x) [1] [3] | (x) [1] | (x) [1] | (x) [2] [1] | (x) [1] | x | x | x | |
12 | Running, migrating | - | (x) [1] [3] | (x) [1] | - | (x) [2] | (x) [1] | x | x | x | The vm is being migrated away from this node. |
13 | Shutting down | - | - | - | - | (x) [2] | - | - | x | x | |
14 | Powering off | - | - | - | - | (x) [2] | - | - | x | x | |
15 | Deleting | - | - | - | - | - | - | - | x | x |
Possible future states:
- Crashed (when vm should be running, but there isn't a QEMU process around)
- Frozen or Non responding (requires QEMU guest agent or a watch dog)
Future editing:
- Certain values like disk, cpu and memory will be able to be changed, even if the vm is running.
Tool-Tips:
- "stopped, streaming (without the percent status)": Show streaming information with vm-name(s) and percent status.
- Save text of Tool-Tips in language files.
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 .
Please keep the Lean Provisioning documentation in mind for displaying the proper action together with the explanations in the Virtual Machine document for the attribute sstVirtualMachineMode
.
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 AND
).
No. | Status | Run Action | Action | Explanation | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Start | Shutdown | Power Off | Migrate | Edit | Delete | Toggle Boot-Drive |
Use | Create persistent VM |
Create dynamic VM | |||
1 | Stopped, ready for use | - | - | - | x | (x) [2] | x | - | - | x | x | If sstVirtualMachineMode is set to ready for use. |
2 | Stopped, streaming | - | - | - | (x) [1] | (x) [2] | - | - | - | x | x | After clicking "+" a list of all the vms (sstDisplayName) should appear with [5.1 %]. |
3 | Stopped, backing up | (x) [1] | - | - | ||||||||
4 | Stopped, migrating | x | - | - | Same state for the vm being migrated to a node and away from a node. | |||||||
5 | Stopped, first installation | x | - | - | x | x | x | x | - | - | - | If sstVirtualMachineMode is set to first installation. |
6 | Stopped, maintenance mode | x | - | - | x | x | x | x | - | - | - | If sstVirtualMachineMode is set to maintenance mode. |
7 | Stopped, Do not use | x | - | - | x | x | x | x | - | - | - | If sstVirtualMachineMode does not exist or set to do not use. |
8 | Starting | - | - | - | Technically changing state from stopped to running. | |||||||
9 | Paused, backing up | (x) [1] | - | - | Technically migrating to file. | |||||||
10 | Paused, migrating | (x) [1] | - | - | The vm is being migrated to this node. | |||||||
11 | Running, backing up | (x) [1] | - | - | Technically merging, retaining, streaming. | |||||||
12 | Running, migrating | - | - | - | The vm is being migrated away from this node. | |||||||
13 | Running, first installation | - | x | x | x | (x) [2] | - | x | x | - | - | If sstVirtualMachineMode is set to first installation. |
14 | Running, maintenance mode | - | x | x | x | (x) [2] | - | x | x | - | - | If sstVirtualMachineMode is set to maintenance mode. |
15 | Running, Do not use | - | x | x | x | (x) [2] | - | x | x | - | - | If sstVirtualMachineMode does not exist. To achieve a self healing effect, the VM-Manager must set sstVirtualMachineMode to does not exist.
|
16 | Shutting down | x | - | - | ||||||||
17 | Powering off | x | - | - | ||||||||
18 | Deleting | - | - | - |
References
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 Later. Should be implementable, but clarification needed on how it works.
- ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 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.
- ↑ 3.0 3.1 3.2 A user connected to the VM can take this action despite being unavailable in the web-interface.
- ↑ While the action is possible, the result may not be satisfying, most probably due to race conditions.