-
Notifications
You must be signed in to change notification settings - Fork 7
/
CHANGES
253 lines (167 loc) · 8.78 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
# 11.0.0
* Perform version check against agant and handle unknown commands
* Implement storage backend for statistics and synchronisation between nodes
* Implement CPU/memory usage statistics for virtual machines and nodes
* Improve logging during Pyro4 exceptions in expose
* Update hard drive objects to use IDs and move configuration outside of virtual machine configuration
* Update storage backend to use custom config object
* Implement virtual machine delete protection, which stops a VM from being deleted
* Implement virtual machine IDs.
* Implement ability to attach/detatch hard drives to/rom virtual machines
* Fix issues around registration/unregister when a VM is no longer registered with Libvirt
* Implement ability to import a hard drive
# 10.0.1
# 10.0.0
# 9.1.0
* Add IDs to storage backends and identity volumes
* Fix minor issues with storage backend creation
# 9.0.0
* Implement storage backends, allowing multiple volume groups
* Implement file-based storage
* Fix issues with DRBD VM move
* Implement transaction, improving reliability of DRBD volume creation
* Replace --delete-data flag with --keep-config --keep-disks flags for removing VM
# 8.3.0
# 8.2.0
# 8.1.0
# 8.0.0
# 7.3.9
* Fix issue with performing 'drbd list' on a node outside of a DRBD cluster
# 7.3.8
# 7.3.7
# 7.3.6
# 7.3.5
* Fix issue relating to adding networks with interfaces which do not have IP addresses
* Fix issues with GitAdd and GitRemove
# 7.3.4
Fix issues with generating LibVirt configuration, caused by changes made to caching CertificateGenerator objects
# 7.3.3
* Fix further issues with certificate generation on intial run
# 7.3.2
* Fix Debian control version
# 7.3.1
* Fix minor issue causing warning in init.d scripts
* Fix issue with certification generator object creation in sign_csr
# 7.3.0
* Improve caching of Pyro objects
* Add support to increase size of DRBD volumes
* Fix issue with loss of UUID when VM is unregistered/registered
# 7.2.0
* Add VM autostart watchdog, allowing VMs to be started on boot or on poll
# 7.1.0
* Add support for multiple VMs for start, stop and resetting in parser
* Implement expiration to RPC sessions
* Implement caching of last used credentials
# 7.0.0
* Add DH key and cipher limitations to SSL
* Add verification of storage before creating VM/hard drives
* Improve naming of commands in parser to be more consistent
* Improve method of generating DRBD secret
* Fix bug relating to adding of libvirt's 'default' network
* Add unit tests for LDAP
# 6.0.0
* Fix DRBD hooks to support rpc
* Add support for Windows 10
* Implement hooks for DRBD re-sync handler
* Fix remaining issues with clusters greater than 2 nodes
* Add DRBD resync comment
# 5.0.0
* Implement LDAP authentication
# 4.0.0
* Implemented an MCVirt daemon that accepts commands through RPC.
* Switched to using RPC-over-SSL from a custom command script using SSH
* Implemented a user authentication system that is synchronised across nodes.
* Added the ability to create and remove users.
* Implemented logging.
* Added check to ensure that the cluster IP address has been set and that the local hostname resolves to this.
* Added check of MCVirt version of nodes when running a command.
# 3.1.0
* Added ability to switch ISOs whilst VM is running.
* Added 'node' and 'available nodes' to the output of the 'info' command.
* Added the ability to remotely start/stop/reset VMs.
* Added functionality to pass ISO name whilst starting a remote VM.
* Added functionality to allow the selection of the driver used for hard drives.
# 3.0.3
* Updated network module to start network on creation and destroy on deletion.
* Updated DRBD connection to only connect if the DRBD volume is not in an 'ok' state.
# 3.0.2
* Added a fix for an issue which caused the wrong permissions to be applied to the '.git' directory.
# 3.0.1
* Added a rety when performing a DRBD 'secondary' to fix issues where DRBD occasionally holds the device open.
# 3.0.0
* Implemented online-migration, adding the ability to migrate DRBD-backed VMs between nodes, whilst the VM is running.
* Fixed output after a VM is added, to return the name of the ISO, instead of the object.
* Fixed exception, which was thrown whilst attempting to remove an ISO on a node within a cluster, where VMs were registered on the remote node.
* Implemented bash-completion.
* Added default libvirt network to default MCVirt configuration, to allow it be removed/managed through MCVirt.
* Updated documentation to provide use-case based information and information about configuring 'sudo' for MCVirt.
* Fixed issues around file permissions on remote node configuration in git-backed configuration clusters.
* Added ability to configure the VM storage volume group, cluster IP address and superusers through MCVirt directly.
# 2.2.2
* Implemented functionality to reset VMs.
* Fixed formatting of epilog/description in parser, so the output is not line-wrapped.
* Updated cache mode for DRBD-backed disk from 'directsync' to 'writeback', to fix issues around DRBD synchronisation.
# 2.2.1
* Fixed issue around creation of DRBD volumes, as large volumes could cause nodes to become unresponsive, as 'dd' (used to wipe the backing logical volumes before use) would consume all available RAM.
* Fixed issues around adding an ISO from a URL.
# 2.2.0
* Fixed issues with permissions on the MCVirt configuration directory, which caused issues whilst attaching ISOs to VMs.
* Fixed default storage type on single-node instances of MCVirt, which caused an exception if it was not specified.
* Implemented DRBD status, which provides the status/configuration for all MCVirt-configured DRBD volumes on the node.
* Implemented functionality to list the networks present on the node.
# 2.1.0
* Switched graphic driver from 'cirrus' to 'vmvga', which increases graphics support among Linux distributions.
* Implemented functionality to support adding ISOs to MCVirt nodes, either from a path or URL, as well as listing the present ISOs.
* Switched VM HDD caching from 'none' to 'directsync', to improve performance.
# 2.0.2
* Fixed various issues around DRBD verification.
* Enabled redirection of mcvirt-drbd.py output to syslog, instead of discarding it.
* Updated debian dependencies to require libvirt-bin.
# 2.0.1
* Fixed issue around exceptions when performing commands as a non-superuser.
# 2.0.0
* Fixed build scrip to always specify the last tag and to always provide the git commit SHA ID.
* Fixed bug where MCVirt was unable to create the base configuration directory.
* Fixed bug around class name in DRBD enabling functionality.
* Added functionality to be able to migrate VMs away from a failed node, whilst the node is offline.
# 1.0.0
* Converted MCVirt project for use with Git/GitHub.
* Made MCVirt open source, under GPLv2 license.
* Updated MCVirt to conform to PEP8 coding standards
* Added epilog and description to parser output.
* Fixed bug in conversion between integer and string, which caused errors after re-registering/migration a VM after the memory allocation/CPU count had been updated after creation.
* Added ability for superusers to 'ignore cluster', so that commands may be run whilst a node in the cluster is offline.
* Fixed debian package dependencies.
* Fixed race-condition in DRBD verification.
# 0.10
* Implemented support for Cluster and DRBD for distributed VM storage.
* Implemented VM duplication in MCVirt.
* Implemented offline migration, for migrating powered off VMs between nodes in a cluster.
* Implemented git support for retaining history of the MCVirt/VM configurations.
# 0.9
* Implemented functionality to add/remove node networks in MCVirt.
# 0.8
* Added test framework and unit tests to MCVirt.
# 0.7
* Added clones and clone parents parameters to VM in '--info' output.
# 0.6
* Added '--info' parameter to provide information about a VM configuration
* Added '--list' parameter to list the VMs within MCVirt
# 0.5
* Updated VM starting functionality, so that any attached ISOs are detached.
* Implemented functionality to perform 'cloning' of VMs
* Switched VM backend-storage from using raw disks to LVM logical volumes.
* Added shell-like functionality to the MCVirt.
* Implemented authorisation into MCVirt, allowing users to be given access, using SUDO, providing different levels of permissions through user groups.
# 0.4
* Implemented functionality to add/remove network interfaces to/from VMs.
* Implemented functionality to add/increase hard drives attached to VMs.
* Implemented functionality to update RAM allocation/CPU count on VMs
* Added lock, so that only one instance of MCVirt can be run at once.
# 0.3
* Implemented functionality to boot from ISO.
# 0.2
* Implemented functionality to create/delete VMs.
# 0.1
* Created initial implementation, allowing for starting/stopping VMs and documentation for creating VMs.
* Created deb configuration for deb package creation.