pvc/node-daemon/pvcd
Joshua Boniface 5995353597 Implement VM metadata and use it
Implements the storing of three VM metadata attributes:
1. Node limits - allows specifying a list of hosts on which the VM must
run. This limit influences the migration behaviour of VMs.
2. Per-VM node selectors - allows each VM to have its migration
autoselection method specified, to automatically allow different methods
per VM based on the administrator's preferences.
3. VM autorestart - allows a VM to be automatically restarted from a
stopped state, presumably due to a failure to find a target node (either
due to limits or otherwise) during a flush/fence recovery, on the next
node unflush/ready state of its home hypervisor. Useful mostly in
conjunction with limits to ensure that VMs which were shut down due to
there being no valid migration targets are started back up when their
node becomes ready again.

Includes the full client interaction with these metadata options,
including printing, as well as defining a new function to modify this
metadata. For the CLI it is set/modified either on `vm define` or via the
`vm meta` command. For the API it is set/modified either on a POST to
the `/vm` endpoint (during VM definition) or on POST to the `/vm/<vm>`
endpoint. For the API this replaces the previous reserved word for VM
creation from scratch as this will no longer be implemented in-daemon
(see #22).

Closes #52
2019-10-12 01:17:39 -04:00
..
CephInstance.py Add clone_volume backend command 2019-10-10 14:09:07 -04:00
DNSAggregatorInstance.py Fix record duplication bug and general cleanup 2019-08-01 13:11:45 -04:00
Daemon.py Bump version to 0.5 2019-08-08 20:56:27 -04:00
NodeInstance.py Implement VM metadata and use it 2019-10-12 01:17:39 -04:00
VMConsoleWatcherInstance.py Rename "Domain" to "VM" in various class names 2019-07-07 15:20:37 -04:00
VMInstance.py Implement VM metadata and use it 2019-10-12 01:17:39 -04:00
VXNetworkInstance.py Improve dnsmasq interface handling 2019-07-31 10:03:56 -04:00
__init__.py Massive rejigger into single daemon 2018-10-14 02:40:54 -04:00
common.py Implement VM metadata and use it 2019-10-12 01:17:39 -04:00
dnsmasq-zookeeper-leases.py Remove extra whitespaces on blank lines 2019-06-25 22:33:23 -04:00
fencing.py Implement VM metadata and use it 2019-10-12 01:17:39 -04:00
fixrbdlocks Move to YAML config and allow split functions 2019-03-11 01:47:40 -04:00
log.py Implement hup for log rotation 2019-07-10 22:22:02 -04:00
zkhandler.py Revamp renamekey function 2019-07-26 16:38:05 -04:00