Use my tiny centos image. I'm not sure what's up with that crufty old default centos template.
Register this qcow2 template: http://marcus.mlsorensen.com/cloudstack-extras/tiny-centos-63.qcow2 Needs a service offering with at least 192MB to run. On Oct 8, 2013 11:36 PM, "Mike Tutkowski" <mike.tutkow...@solidfire.com> wrote: > Perhaps you might know something about this, Marcus. > > My instance suffers a Kernel panic while booting up. > > I'm just using the built-in KVM template (CentOS 5.5(64-bit) no GUI (KVM)) > with 1 CPU and 512 MB memory. > > http://i.imgur.com/QuPH2Ub.png > > I tried to just use an ISO instead, but apparently that functionality is > broken, as well (related to Disk Offerings). > > > On Tue, Oct 8, 2013 at 10:39 PM, Mike Tutkowski < > mike.tutkow...@solidfire.com> wrote: > >> OK, all is good now. >> >> I have both system VMs up and running and the Agent States read as "Up," >> as well. >> >> >> On Tue, Oct 8, 2013 at 9:50 PM, Mike Tutkowski < >> mike.tutkow...@solidfire.com> wrote: >> >>> I believe we've been down this road before: >>> >>> 2013-10-09 03:47:41,281 ERROR [cloud.agent.AgentShell] (main:null) >>> Unable to start agent: Resource class not found: >>> com.cloud.storage.resource.PremiumSecondaryStorageResource due to: >>> java.lang.ClassNotFoundException: >>> com.cloud.storage.resource.PremiumSecondaryStorageResource >>> >>> The solution was to compile without -Dnoredist. >>> >>> I will try that now. >>> >>> >>> On Tue, Oct 8, 2013 at 9:36 PM, Marcus Sorensen <shadow...@gmail.com>wrote: >>> >>>> You may be able to find a stack trace for the java process in >>>> /var/log/cloud or the messages file, on the system vm. >>>> On Oct 8, 2013 9:21 PM, "Mike Tutkowski" <mike.tutkow...@solidfire.com> >>>> wrote: >>>> >>>>> Interesting...I ran the following: >>>>> >>>>> /usr/local/cloud/systemvm/ssvm-check.sh >>>>> >>>>> It says the Java process is not running. >>>>> >>>>> This is the KVM system template I'm using: >>>>> >>>>> >>>>> http://download.cloud.com/templates/4.2/systemvmtemplate-2013-06-12-master-kvm.qcow2.bz2 >>>>> >>>>> I just picked the one that was referenced in the VM_Template table in >>>>> 4.3. >>>>> >>>>> >>>>> On Tue, Oct 8, 2013 at 9:05 PM, Mike Tutkowski < >>>>> mike.tutkow...@solidfire.com> wrote: >>>>> >>>>>> Found it. >>>>>> >>>>>> As an FYI, this is the doc I was referring to: >>>>>> >>>>>> >>>>>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/SSVM%2C+templates%2C+Secondary+storage+troubleshooting >>>>>> >>>>>> >>>>>> On Tue, Oct 8, 2013 at 9:04 PM, Mike Tutkowski < >>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>> >>>>>>> CS MS can ping the SSVM's public IP address. >>>>>>> >>>>>>> SSVM can ping CS MS. >>>>>>> >>>>>>> I think we had a nice debug document for SSVM mentioned on a CS >>>>>>> e-mail...I'll try to find it. >>>>>>> >>>>>>> >>>>>>> On Tue, Oct 8, 2013 at 8:29 PM, Marcus Sorensen <shadow...@gmail.com >>>>>>> > wrote: >>>>>>> >>>>>>>> You could start by trying to ping them from mgmt server, or trying >>>>>>>> to VNC to them if the OS isn't up. I'm assuming you prepped a current >>>>>>>> system vm template (maybe you're even reusing a secondary storage). If >>>>>>>> you >>>>>>>> can ping their 169.254 addresses, you can "cloudstack-ssh 169.254.x.x" >>>>>>>> as >>>>>>>> root on the kvm host to get in >>>>>>>> On Oct 8, 2013 7:31 PM, "Mike Tutkowski" < >>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>> >>>>>>>>> Looks like I'll have to dig up that doc on debugging SSVM...it's >>>>>>>>> been about 30 mins since the VMs came up. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Oct 8, 2013 at 7:29 PM, Marcus Sorensen < >>>>>>>>> shadow...@gmail.com> wrote: >>>>>>>>> >>>>>>>>>> You may just have to wait a bit. That means the VMS are started >>>>>>>>>> but the services aren't up. Usually takes 5-10 min to get both up in >>>>>>>>>> my >>>>>>>>>> fusion vm. If that doesn't get better you may have to log into the >>>>>>>>>> system >>>>>>>>>> VMS and see what's going on. >>>>>>>>>> On Oct 8, 2013 7:25 PM, "Mike Tutkowski" < >>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>> >>>>>>>>>>> Doh! I didn't restart the necessary service after exporting my >>>>>>>>>>> NFS share. >>>>>>>>>>> >>>>>>>>>>> The system VMs come up now; however, SSVM has a dash (-) for its >>>>>>>>>>> Agent State and the CS MS console keeps printing out the following: >>>>>>>>>>> >>>>>>>>>>> INFO [o.a.c.s.e.DefaultEndPointSelector] >>>>>>>>>>> (StatsCollector-3:ctx-018adc41) No running ssvm is found, so >>>>>>>>>>> command will >>>>>>>>>>> be sent to LocalHostEndPoint >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, Oct 8, 2013 at 4:35 PM, Marcus Sorensen < >>>>>>>>>>> shadow...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Can you mount the secondary storage from your KVM host? >>>>>>>>>>>> On Oct 8, 2013 4:01 PM, "Mike Tutkowski" < >>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Although the host is added to KVM, I do see the following >>>>>>>>>>>>> issues in the CS MS console (any thoughts on this?): >>>>>>>>>>>>> >>>>>>>>>>>>> WARN [c.c.u.d.Merovingian2] (secstorage-1:ctx-c1c573ee) Was >>>>>>>>>>>>> unable to find lock for the key template_spool_ref2 and thread id >>>>>>>>>>>>> 2049868806 >>>>>>>>>>>>> INFO [c.c.v.VirtualMachineManagerImpl] >>>>>>>>>>>>> (secstorage-1:ctx-c1c573ee) Unable to contact resource. >>>>>>>>>>>>> com.cloud.exception.StorageUnavailableException: Resource >>>>>>>>>>>>> [StoragePool:1] is unreachable: Unable to create >>>>>>>>>>>>> Vol[1|vm=1|ROOT]:com.cloud.utils.exception.CloudRuntimeException: >>>>>>>>>>>>> org.libvirt.LibvirtException: internal error Child process >>>>>>>>>>>>> (/bin/mount >>>>>>>>>>>>> 192.168.233.10:/mnt/secondary/template/tmpl/1/3 >>>>>>>>>>>>> /mnt/334b3c4e-764b-362a-be2c-ebe8c490d0a9) status unexpected: >>>>>>>>>>>>> exit status 32 >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.engine.orchestration.VolumeOrchestrator.recreateVolume(VolumeOrchestrator.java:1027) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.engine.orchestration.VolumeOrchestrator.prepare(VolumeOrchestrator.java:1069) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachineManagerImpl.java:830) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachineManagerImpl.java:649) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.storage.secondary.SecondaryStorageManagerImpl.startSecStorageVm(SecondaryStorageManagerImpl.java:261) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.storage.secondary.SecondaryStorageManagerImpl.allocCapacity(SecondaryStorageManagerImpl.java:693) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.storage.secondary.SecondaryStorageManagerImpl.expandPool(SecondaryStorageManagerImpl.java:1265) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.secstorage.PremiumSecondaryStorageManagerImpl.scanPool(PremiumSecondaryStorageManagerImpl.java:123) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.secstorage.PremiumSecondaryStorageManagerImpl.scanPool(PremiumSecondaryStorageManagerImpl.java:50) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.SystemVmLoadScanner.loadScan(SystemVmLoadScanner.java:101) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.SystemVmLoadScanner.access$100(SystemVmLoadScanner.java:33) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.SystemVmLoadScanner$1.reallyRun(SystemVmLoadScanner.java:78) >>>>>>>>>>>>> at >>>>>>>>>>>>> com.cloud.vm.SystemVmLoadScanner$1.runInContext(SystemVmLoadScanner.java:71) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53) >>>>>>>>>>>>> at >>>>>>>>>>>>> org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>>>>>>>>>>> at >>>>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>>>>>>>>>>> at java.lang.Thread.run(Thread.java:724) >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Tue, Oct 8, 2013 at 3:58 PM, Mike Tutkowski < >>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> So...got some good news: >>>>>>>>>>>>>> >>>>>>>>>>>>>> I spent a couple hours setting up a KVM environment on Ubuntu >>>>>>>>>>>>>> 12.04.1 from scratch (Installing SSH, Open iSCSI, Java 7, KVM, >>>>>>>>>>>>>> Git, >>>>>>>>>>>>>> CloudStack, CloudStack DEBs, KVM system template, etc.) and I >>>>>>>>>>>>>> can now add >>>>>>>>>>>>>> this KVM host to CloudStack (on a related note, no errors in >>>>>>>>>>>>>> agent.err >>>>>>>>>>>>>> either). >>>>>>>>>>>>>> >>>>>>>>>>>>>> I have no idea what is messed up with my old KVM install on >>>>>>>>>>>>>> Ubuntu, but the new one works. >>>>>>>>>>>>>> >>>>>>>>>>>>>> That being the case, I can close out the JIRA ticket I logged >>>>>>>>>>>>>> a while back and start integrating your code into mine. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Mon, Oct 7, 2013 at 7:46 PM, Mike Tutkowski < >>>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Right...yeah, I didn't mean we'd commit to 4.2, but maybe I >>>>>>>>>>>>>>> should work off of 4.2 since master seems to be un-stable in >>>>>>>>>>>>>>> this regard. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I plan to set up a machine in the lab tomorrow with Ubuntu >>>>>>>>>>>>>>> 12.04 from scratch to see if it works when I start clean, but - >>>>>>>>>>>>>>> if it >>>>>>>>>>>>>>> doesn't - I should just use 4.2 for development. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Mon, Oct 7, 2013 at 7:05 PM, Marcus Sorensen < >>>>>>>>>>>>>>> shadow...@gmail.com> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> We can't. This patch will never see 4.2. You can still >>>>>>>>>>>>>>>> start working on your plugin on 4.2, but the change >>>>>>>>>>>>>>>> represented by this >>>>>>>>>>>>>>>> patch can only go into master. >>>>>>>>>>>>>>>> On Oct 7, 2013 5:01 PM, "Mike Tutkowski" < >>>>>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> So, now that I'm getting back to this, do you think I >>>>>>>>>>>>>>>>> should just try to make this work with 4.2 (like we >>>>>>>>>>>>>>>>> originally talked >>>>>>>>>>>>>>>>> about)? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> I updated again from master, rebuilt, redeployed DEBs and >>>>>>>>>>>>>>>>> still get this JNA error message: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> log4j:WARN No appenders could be found for logger >>>>>>>>>>>>>>>>> (org.apache.commons.httpclient.params.DefaultHttpParams). >>>>>>>>>>>>>>>>> log4j:WARN Please initialize the log4j system properly. >>>>>>>>>>>>>>>>> log4j:WARN See >>>>>>>>>>>>>>>>> http://logging.apache.org/log4j/1.2/faq.html#noconfig for >>>>>>>>>>>>>>>>> more info. >>>>>>>>>>>>>>>>> java.lang.reflect.InvocationTargetException >>>>>>>>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native >>>>>>>>>>>>>>>>> Method) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>>>>>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:606) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:243) >>>>>>>>>>>>>>>>> Caused by: java.lang.UnsatisfiedLinkError: Can't obtain >>>>>>>>>>>>>>>>> updateLastError method for class com.sun.jna.Native >>>>>>>>>>>>>>>>> at com.sun.jna.Native.initIDs(Native Method) >>>>>>>>>>>>>>>>> at com.sun.jna.Native.<clinit>(Native.java:139) >>>>>>>>>>>>>>>>> at org.libvirt.jna.Libvirt.<clinit>(Unknown Source) >>>>>>>>>>>>>>>>> at org.libvirt.Library.<clinit>(Unknown Source) >>>>>>>>>>>>>>>>> at org.libvirt.Connect.<init>(Unknown Source) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.hypervisor.kvm.resource.LibvirtConnection.getConnection(LibvirtConnection.java:44) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.hypervisor.kvm.resource.LibvirtConnection.getConnection(LibvirtConnection.java:37) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.hypervisor.kvm.resource.LibvirtComputingResource.configure(LibvirtComputingResource.java:733) >>>>>>>>>>>>>>>>> at com.cloud.agent.Agent.<init>(Agent.java:161) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.agent.AgentShell.launchAgent(AgentShell.java:415) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.agent.AgentShell.launchAgentFromClassInfo(AgentShell.java:370) >>>>>>>>>>>>>>>>> at >>>>>>>>>>>>>>>>> com.cloud.agent.AgentShell.launchAgent(AgentShell.java:351) >>>>>>>>>>>>>>>>> at com.cloud.agent.AgentShell.start(AgentShell.java:448) >>>>>>>>>>>>>>>>> ... 5 more >>>>>>>>>>>>>>>>> Cannot start daemon >>>>>>>>>>>>>>>>> Service exit with a return value of 5 >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Mon, Oct 7, 2013 at 2:31 PM, Mike Tutkowski < >>>>>>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Sure, that's a good plan. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> I'll get to it. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Mon, Oct 7, 2013 at 2:29 PM, Marcus Sorensen < >>>>>>>>>>>>>>>>>> shadow...@gmail.com> wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I know you mentioned you might need some minor changes >>>>>>>>>>>>>>>>>>> to it, as well as other minor changes just for master >>>>>>>>>>>>>>>>>>> (attach volume >>>>>>>>>>>>>>>>>>> switched to pool vs adapter or something). My hope was that >>>>>>>>>>>>>>>>>>> you would be >>>>>>>>>>>>>>>>>>> able to send an update that works for your plugin on >>>>>>>>>>>>>>>>>>> master, I'll test >>>>>>>>>>>>>>>>>>> against existing libvirtd storage and apply it. >>>>>>>>>>>>>>>>>>> On Oct 7, 2013 1:49 PM, "Mike Tutkowski" < >>>>>>>>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> This is an automatically generated e-mail. To >>>>>>>>>>>>>>>>>>>> reply, visit: https://reviews.apache.org/r/14381/ >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> This looks reasonable to me, Marcus. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> When do you think you might start the process of getting >>>>>>>>>>>>>>>>>>>> this into master? >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> - Mike Tutkowski >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> On September 30th, 2013, 5:14 p.m. UTC, Marcus Sorensen >>>>>>>>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>>>>>>>> Review request for cloudstack, edison su and Mike >>>>>>>>>>>>>>>>>>>> Tutkowski. >>>>>>>>>>>>>>>>>>>> By Marcus Sorensen. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> *Updated Sept. 30, 2013, 5:14 p.m.* >>>>>>>>>>>>>>>>>>>> *Repository: * cloudstack-git >>>>>>>>>>>>>>>>>>>> Description >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> With custom storage plugins comes the need to prep the KVM >>>>>>>>>>>>>>>>>>>> host prior to utilizing the disks. e.g. an iscsi initiator >>>>>>>>>>>>>>>>>>>> needs to log into the target and scan for the lun before >>>>>>>>>>>>>>>>>>>> it can be used on the host. This patch is an example I >>>>>>>>>>>>>>>>>>>> developed against 4.2, minor changes may be necessary to >>>>>>>>>>>>>>>>>>>> apply to master, but I want to share with others who are >>>>>>>>>>>>>>>>>>>> working on storage so they can ensure it works for them. >>>>>>>>>>>>>>>>>>>> Please tweak as you see fit. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> 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. Move cleanupDisk logic to storage adaptors >>>>>>>>>>>>>>>>>>>> so that each adaptor type can clean up its disks in is own >>>>>>>>>>>>>>>>>>>> way. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> KVMStoragePoolManager: add connectPhysicalDisk, >>>>>>>>>>>>>>>>>>>> disconnectPhysicalDisk, connectPhysicalDiskViaVmSpec, >>>>>>>>>>>>>>>>>>>> disconnectPhysicalDiskViaVmSpec, >>>>>>>>>>>>>>>>>>>> disconnectPhysicalDiskByPath. These all call the specific >>>>>>>>>>>>>>>>>>>> StorageAdaptor's connectPhysicalDisk, >>>>>>>>>>>>>>>>>>>> disconnectPhysicalDisk, or disconnectPhysicalDiskByPath >>>>>>>>>>>>>>>>>>>> calls. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> KVMStorageProcessor: Call >>>>>>>>>>>>>>>>>>>> connectPhysicalDisk/disconnectPhysicalDisk on the storage >>>>>>>>>>>>>>>>>>>> adaptor. Whether or not this is implemented is up to the >>>>>>>>>>>>>>>>>>>> storage adaptor. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> LibvirtStorageAdaptor: implement dummy >>>>>>>>>>>>>>>>>>>> connectPhysicalDisk/disconnectPhysicalDisk, move >>>>>>>>>>>>>>>>>>>> cleanupDisk logic from LibvirtComputingResource to >>>>>>>>>>>>>>>>>>>> disconnectPhysicalDiskByPath >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> StorageAdaptor: define >>>>>>>>>>>>>>>>>>>> connectPhysicalDisk/disconnectPhysicalDisk/disconnectPhysicalDiskByPath >>>>>>>>>>>>>>>>>>>> in the interface >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Testing >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Basic testing with my storage adaptor >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Diffs >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> - core/src/com/cloud/agent/api/MigrateCommand.java >>>>>>>>>>>>>>>>>>>> (5042b8c) >>>>>>>>>>>>>>>>>>>> - >>>>>>>>>>>>>>>>>>>> plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java >>>>>>>>>>>>>>>>>>>> (3ee811f) >>>>>>>>>>>>>>>>>>>> - >>>>>>>>>>>>>>>>>>>> plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java >>>>>>>>>>>>>>>>>>>> (e09c9ba) >>>>>>>>>>>>>>>>>>>> - >>>>>>>>>>>>>>>>>>>> plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java >>>>>>>>>>>>>>>>>>>> (c69f9b0) >>>>>>>>>>>>>>>>>>>> - >>>>>>>>>>>>>>>>>>>> plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/LibvirtStorageAdaptor.java >>>>>>>>>>>>>>>>>>>> (123a9f1) >>>>>>>>>>>>>>>>>>>> - >>>>>>>>>>>>>>>>>>>> plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/StorageAdaptor.java >>>>>>>>>>>>>>>>>>>> (4956d8d) >>>>>>>>>>>>>>>>>>>> - server/src/com/cloud/vm/VirtualMachineManagerImpl.java >>>>>>>>>>>>>>>>>>>> (d46bbb0) >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> View Diff <https://reviews.apache.org/r/14381/diff/> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>>>>>>>>> *™* >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>>>>>>>> *™* >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>>>>>> *™* >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>>>>> *™* >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>>>> *™* >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Mike Tutkowski* >>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>>>> o: 303.746.7302 >>>>>>>>>>> Advancing the way the world uses the >>>>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>>>> *™* >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Mike Tutkowski* >>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>>>> e: mike.tutkow...@solidfire.com >>>>>>>>> o: 303.746.7302 >>>>>>>>> Advancing the way the world uses the >>>>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>>>> *™* >>>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Mike Tutkowski* >>>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>>> e: mike.tutkow...@solidfire.com >>>>>>> o: 303.746.7302 >>>>>>> Advancing the way the world uses the >>>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>>> *™* >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Mike Tutkowski* >>>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>>> e: mike.tutkow...@solidfire.com >>>>>> o: 303.746.7302 >>>>>> Advancing the way the world uses the >>>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>>> *™* >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> *Mike Tutkowski* >>>>> *Senior CloudStack Developer, SolidFire Inc.* >>>>> e: mike.tutkow...@solidfire.com >>>>> o: 303.746.7302 >>>>> Advancing the way the world uses the >>>>> cloud<http://solidfire.com/solution/overview/?video=play> >>>>> *™* >>>>> >>>> >>> >>> >>> -- >>> *Mike Tutkowski* >>> *Senior CloudStack Developer, SolidFire Inc.* >>> e: mike.tutkow...@solidfire.com >>> o: 303.746.7302 >>> Advancing the way the world uses the >>> cloud<http://solidfire.com/solution/overview/?video=play> >>> *™* >>> >> >> >> >> -- >> *Mike Tutkowski* >> *Senior CloudStack Developer, SolidFire Inc.* >> e: mike.tutkow...@solidfire.com >> o: 303.746.7302 >> Advancing the way the world uses the >> cloud<http://solidfire.com/solution/overview/?video=play> >> *™* >> > > > > -- > *Mike Tutkowski* > *Senior CloudStack Developer, SolidFire Inc.* > e: mike.tutkow...@solidfire.com > o: 303.746.7302 > Advancing the way the world uses the > cloud<http://solidfire.com/solution/overview/?video=play> > *™* >