Using associated VM host id only in case of data disk. Also moved the allocation logic for local disk from FirstFit to LocalStoragePoolAllocator.
Reviewed-by: Nitin
Following scenarios are not allowed in case local storage is disabled on zone:
-Creation of volume (new or from snapshot) with local disk offering.
-Attach/reattach of volume with local disk offering.
Reviewed-by: Nitin
Using migrateVolumes method which does not perform input validation. Some input validation in the migrateVolume method prevented migration of volume in READY state. Also using volume disk offering to check if it is a local or shared one.
Reviewed-by: Nitin
- Zone level config to enable/disable local storage usage for service and disk offerings.
- Local storage gets discovered when a host is added/reconnected if zone level config is enabled. When disabled existing local storages are not removed but any new local storage is not added.
- Deploy VM command validates service and disk offerings based on local storage config.
- Upgrade uses the global config 'use.local.storage' to set the zone level config for local storage.
Reviewed-by: Abhi, Nitin
Description:
1) With this commit in the series for this bug,
removed all occurrances of db IDs being passed
when raising InvalidParameterValueException.
2) Renamed HyervisorTemplateAdapter.java to
HypervisorTemplateAdapter.java.
Following changes are made:
- Create disk offering API now takes an extra parameter to denote storage type (local or shared). This is similar to storage type in service offering.
- Create/delete of data volume on local storage
- Attach/detach for local data volumes. Re-attach is allowed as long as vm host and data volume storage pool host is same.
- Migration of VM instance is not supported if it uses local root or data volumes.
- Migrate is not supported for local volumes.
Reviewed-by: Abhi
Issue happens when ROOT volume gets created and there is subsequent failure in starting the VM. During retry if allocator assigns a different storage pool the scenario was not handled. Now in case of local storage the volume get recreated on the newly assigned pool and old one gets cleaned up. In case of shared storage the existing volume is migrated to new storage pool.
Reviewed-by: Prachi, Edison, Nitin
Reviewed-by: devdeep.singh@citrix.com
Change:
1. Before creating the snapshot, we synchronized checkresourcelimit to allow the users to create the snapshot and increment the resource count.
2. Depending on the failure of snapshot creation/ backup, we are decrementing the resource count.
2) added "tags" request parameter to the banch of list* Api commands (listVirtualMachines, listSnapshots - all commands are listed in the resource tags functional spec)
With this fix both SSVM and CPVM will get public IP's in case of basic zone with EIP service.
A static NAT rule is implicitly configured on the EIP service provider to map public IP to a
guest IP address associated with SSVM/CPVM
UploadVolume API is async now with the guidance for all the new apis added in 3.0.x need to be async. Though the success/failure wont be available through the queryAsync job which will report only the initial validation success or failure. The success or failure and the progress will all be available through listVolumes api.
turn on debug log, if zone is not ready to start ssvm/cpvm.
"Zone host is ready, but console proxy template" means system vm template is not in "Downloaded" state on secondary storage
"Primary storage is not ready" means the template is not been downloaded to primary storage, possible reasons: haven't add primary storage, or primary storage download is not finished/failed.