https://github.com/kvaps/opennebula-addon-tmsave-tmrestore
Experiment to add presave postsave prerestore postrestore actions to tm driver
https://github.com/kvaps/opennebula-addon-tmsave-tmrestore
Last synced: 6 months ago
JSON representation
Experiment to add presave postsave prerestore postrestore actions to tm driver
- Host: GitHub
- URL: https://github.com/kvaps/opennebula-addon-tmsave-tmrestore
- Owner: kvaps
- License: apache-2.0
- Created: 2019-04-25T11:24:58.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-25T11:41:25.000Z (about 7 years ago)
- Last Synced: 2025-05-18T22:11:30.884Z (about 1 year ago)
- Language: Shell
- Size: 5.86 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OpenNebula tmsave / tmrestore addon
In contionue to this discussion https://forum.opennebula.org/t/shared-mode-for-the-ceph-based-system-datastires/7164/9
This addon to adds `tm/presave` `tm/postsave` `tm/prerestore` `tm/postrestore` actions call to vmm driver.
So saving VM state will looks like:
|#|driver|action|execution|description|
|-|-|-|-|-|
|1|tm|presave|frontend|preparing the place and setups checkpoint file symlink|
|2|vmm|save|remote|saves VM state into checkpoint file (or device) under symlink|
|3|tm|postsave|frontend|optional disconnects the device with checkpoint from the compute-node|
Restoring:
|#|driver|action|execution|description|
|-|-|-|-|-|
|1|tm|prerestore|frontend|connects the device with checkpoint to the compute-node, and setups symlink on it|
|2|vmm|restore|remote|restores VM action from the symlink|
|3|tm|postrestore|frontend|removes old checkpoint file|
## Installation
1. put [tmsave](tmsave) and [tmrestore](tmrestore) into to your vmm driver path, eg. `/var/lib/one/remotes/vmm/kvm`
2. Update your VM_MAD in oned.conf
```diff
VM_MAD = [
NAME = "kvm",
SUNSTONE_NAME = "KVM",
EXECUTABLE = "one_vmm_exec",
- ARGUMENTS = "-t 15 -r 0 kvm",
+ ARGUMENTS = "-t 15 -r 0 kvm -l save=tmsave,restore=tmrestore",
DEFAULT = "vmm_exec/vmm_exec_kvm.conf",
TYPE = "kvm",
KEEP_SNAPSHOTS = "yes",
IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
resume, delete, reboot, reboot-hard, resched, unresched, disk-attach,
disk-detach, nic-attach, nic-detach, snapshot-create, snapshot-delete"
]
```
3. Restart OpenNebula service