...
- Add golden PS property in StoragePool, VirtualMachineTemplate, PrimaryDataStoreTO, TemplateObjectTO class.
- DeploymentPlanningManager class:
New method planGoldenDeployment return DeployDestination for Golden image deployment.
Change method findSuitablePoolsForVolumes to find suitables pool based on 3 type: golden, normal and up to all. - DeployDestination class:
New property DeployDestination goldenDest link to golden deployment of parent image. - VolumeOrchestrator class:
Change prepare method to check VM DeployDestination have a golden deployment, if yes we will clone from template on that golden deployment. - VolumeService class:
New method CreateBaseImage - XenServerStorageProcessor class:
New method copy_vhd_from_pool_to_pool to move a cloned ROOT volume from golden PS to ROOT PS. - vmopsSnapshot plugin:
2 new plugin: setVhdParent and copy_vhd_from_pool_to_pool
- In case of migrate volume, currently Xen Server will merge VHD chain of VM volume and migrate it to a new primary storage. In this case, we can simply move child image to new storage repository by calling plugin copy_vhd_from_pool_to_pool. This plugin is reference to OpenStack Xen Server plugin.
- In case of snapshot volume, it still follow CloudStack normal process.
- Migrate VM: must find a suitable host for live-migrate VM, if host can not access golden PS, so it will be add to avoid list. (e.g: golden PS is local storage)
- Taking VM snapshot: still follow CloudStack normal process. Because VM snapshot automatically exploits the capabilities of the underlying storage repository in which the VM's disk images are stored, so it will reside on ROOT PS.
Web API changes
- No new Apis are added
- Add new parameter enableGoldenPs to API createStoragePool, updateStoragePool, registerTemplate, updateTemplate.
- New parameter enableGoldenPs is added to listStoragePools, listTemplates response.
...
{"serverDuration": 178, "requestCorrelationId": "63d8d09a763250bf"}