cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marcus Sorensen" <>
Subject Re: Review Request 14381: KVM: add connect/disconnect capabilities to StorageAdaptors so that external storage services can attach/detach devices on-demand
Date Sat, 28 Sep 2013 04:51:36 GMT

This is an automatically generated e-mail. To reply, visit:

(Updated Sept. 28, 2013, 4:51 a.m.)

Review request for cloudstack and Mike Tutkowski.

Repository: cloudstack-git


MigrateCommand: pass vmTO object so we can see which disks/storage pool types belong to the
vm when migrating a VM. This facilitates being able to call disconnectPhysicalDisksViaVmSpec

VirtualMachineManagerImpl: pass VirtualMachineTO when migrating so that we can see which disks
belong to the VM and what storage pools/adaptors should be used

LibvirtComputingResource: add calls KVMStoragePoolManager's connectPhysicalDiskViaVmSpec and
disconnectPhysicalDiskViaVmSpec calls where appropriate (when starting a vm, migrating a vm).
Ensure that we create 'raw' format XML disk definitions when the storage format is RAW.

KVMStoragePoolManager:  add connectPhysicalDisk, disconnectPhysicalDisk, connectPhysicalDiskViaVmSpec,
disconnectPhysicalDiskViaVmSpec. These all call the specific StorageAdaptor's connectPhysicalDisk
or disconnectPhysicalDisk calls.

KVMStorageProcessor: Call connectPhysicalDisk/disconnectPhysicalDisk on the storage adaptor.
Whether or not this is implemented is up to the storage adaptor.

LibvirtStorageAdaptor: need to implement dummy connectPhysicalDisk/disconnectPhysicalDisk

StorageAdaptor: define connectPhysicalDisk/disconnectPhysicalDisk in the interface

TODO: figure out how to disconnect disks on StopCommand. Currently cloudstack only passes
us a VM name, which is sufficient to stop the vm, and we can see which disks are attached
to the vm, but we don't really know which storage adaptors to call to disconnect, unless we
can do fancy parsing of the disk path to determine adaptor type. We could maybe do a 'disconnectPhysicalDiskByPath
in the KVMStoragePoolManager to determine adaptor by path and call adaptor. I looked around,
and adding new info to StopCommand to be passed along seems less than trivial, like it was
for migrate.


  core/src/com/cloud/agent/api/ 5042b8c 
  plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/ c69f9b0

  plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/ 4956d8d

  server/src/com/cloud/vm/ d46bbb0 



Basic testing with my storage adaptor


Marcus Sorensen

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message