Marcus Sorensen created CLOUDSTACK-2281:
-------------------------------------------
Summary: VM fails to deploy due to planner selecting deleted pool
Key: CLOUDSTACK-2281
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-2281
Project: CloudStack
Issue Type: Bug
Security Level: Public (Anyone can view this level - this is the default.)
Components: Management Server
Affects Versions: 4.1.0
Reporter: Marcus Sorensen
Priority: Blocker
Fix For: 4.1.0
Having trouble tracking this down. Here's what I did:
Created a 4.1 advanced zone
added primary storage A
deployed a template
deployed vms
added new primary storages
migrated VMs from primary storage A to others
removed initial primary storage A
try to deploy new vm from template, not working. It looks like the allocator
correctly finds and decides to use pool id 204, but somehow deployment is
actually attempted on deleted pool 202. See "Returning Deployment Destination"
and "DeploymentPlan is provided":
2013-04-29 13:25:49,293 DEBUG [allocator.impl.FirstFitAllocator]
(Job-Executor-10:job-9908 FirstFitRoutingAllocator) Found a suitable host,
adding to list: 19
2013-04-29 13:25:49,294 DEBUG [allocator.impl.FirstFitAllocator]
(Job-Executor-10:job-9908 FirstFitRoutingAllocator) Host Allocator returning 4
suitable hosts
2013-04-29 13:25:49,297 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Checking suitable pools for volume (Id, Type):
(10663,ROOT)
2013-04-29 13:25:49,297 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) We need to allocate new storagepool for this volume
2013-04-29 13:25:49,299 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Calling StoragePoolAllocators to find suitable pools
2013-04-29 13:25:49,302 DEBUG [storage.allocator.FirstFitStoragePoolAllocator]
(Job-Executor-10:job-9908) Looking for pools in dc: 1 pod:1 cluster:1
2013-04-29 13:25:49,304 DEBUG [storage.allocator.FirstFitStoragePoolAllocator]
(Job-Executor-10:job-9908) FirstFitStoragePoolAllocator has 1 pools to check
for allocation
2013-04-29 13:25:49,304 DEBUG [storage.allocator.AbstractStoragePoolAllocator]
(Job-Executor-10:job-9908) Checking if storage pool is suitable, name:
sansrv-row2-rack0 ,poolId: 204
2013-04-29 13:25:49,304 DEBUG [storage.allocator.AbstractStoragePoolAllocator]
(Job-Executor-10:job-9908) Is localStorageAllocationNeeded? false
2013-04-29 13:25:49,305 DEBUG [storage.allocator.AbstractStoragePoolAllocator]
(Job-Executor-10:job-9908) Is storage pool shared? true
2013-04-29 13:25:49,309 DEBUG [cloud.storage.StorageManagerImpl]
(Job-Executor-10:job-9908) Checking pool 204 for storage, totalSize:
11984676742758, usedBytes: 879609302221, usedPct: 0.07339449541286318, disable
threshold: 0.85
2013-04-29 13:25:49,327 DEBUG [cloud.storage.StorageManagerImpl]
(Job-Executor-10:job-9908) Checking pool: 204 for volume allocation
[Vol[10663|vm=6189|ROOT]], maxSize : 11984676742758, totalAllocatedSize :
588879744000, askingSize : 8589934592, allocated disable threshold: 0.85
2013-04-29 13:25:49,327 DEBUG [storage.allocator.FirstFitStoragePoolAllocator]
(Job-Executor-10:job-9908) FirstFitStoragePoolAllocator returning 1 suitable
storage pools
2013-04-29 13:25:49,327 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Trying to find a potenial host and associated
storage pools from the suitable host/pool lists for this VM
2013-04-29 13:25:49,327 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Checking if host: 17 can access any suitable storage
pool for volume: ROOT
2013-04-29 13:25:49,330 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Host: 17 can access pool: 204
2013-04-29 13:25:49,330 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Found a potential host id: 17 name: ksrv2-000 and
associated storage pools for this VM
2013-04-29 13:25:49,332 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Returning Deployment Destination:
Dest[Zone(Id)-Pod(Id)-Cluster(Id)-Host(Id)-Storage(Volume(Id|Type-->Pool(Id))]
:
Dest[Zone(1)-Pod(1)-Cluster(1)-Host(17)-Storage(Volume(10663|ROOT-->Pool(204))]
2013-04-29 13:25:49,370 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-10:job-9908) VM state transitted from :Stopped to Starting with
event: StartRequestedvm's original host id: null new host id: null host id
before state transition: null
2013-04-29 13:25:49,370 DEBUG [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-10:job-9908) Successfully transitioned to start state for
VM[User|marcus-deleteme] reservation id = dd7783f0-800a-481a-a407-88ec5262a397
2013-04-29 13:25:49,387 DEBUG [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-10:job-9908) Trying to deploy VM, vm has dcId: 1 and podId: null
2013-04-29 13:25:49,387 DEBUG [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-10:job-9908) advanceStart: DeploymentPlan is provided, using
dcId:1, podId: 1, clusterId: 1, hostId: 17, poolId: 202
2013-04-29 13:25:49,387 DEBUG [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-10:job-9908) Deploy avoids pods: null, clusters: null, hosts: null
2013-04-29 13:25:49,389 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) DeploymentPlanner allocation algorithm: random
2013-04-29 13:25:49,390 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Trying to allocate a host and storage pools from
dc:1, pod:1,cluster:1, requested cpu: 2200, requested ram: 1073741824
2013-04-29 13:25:49,390 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Is ROOT volume READY (pool already allocated)?: Yes
2013-04-29 13:25:49,390 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) DeploymentPlan has host_id specified, making no
checks on this host, looks like admin test: 17
2013-04-29 13:25:49,391 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Looking for suitable pools for this host under zone:
1, pod: 1, cluster: 1
2013-04-29 13:25:49,393 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Checking suitable pools for volume (Id, Type):
(10663,ROOT)
2013-04-29 13:25:49,393 DEBUG [cloud.deploy.FirstFitPlanner]
(Job-Executor-10:job-9908) Volume has pool already allocated, checking if pool
can be reused, poolId: null
2013-04-29 13:25:49,411 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-10:job-9908) VM state transitted from :Starting to Stopped with
event: OperationFailedvm's original host id: null new host id: null host id
before state transition: null
2013-04-29 13:25:49,417 DEBUG [cloud.vm.UserVmManagerImpl]
(Job-Executor-10:job-9908) Destroying vm VM[User|marcus-deleteme] as it failed
to create on Host with Id:null
2013-04-29 13:25:49,438 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-10:job-9908) VM state transitted from :Stopped to Error with
event: OperationFailedToErrorvm's original host id: null new host id: null host
id before state transition: null
2013-04-29 13:25:49,528 ERROR [cloud.async.AsyncJobManagerImpl]
(Job-Executor-10:job-9908) Unexpected exception while executing
org.apache.cloudstack.api.command.user.vm.DeployVMCmd
java.lang.NullPointerException
at
com.cloud.deploy.FirstFitPlanner.findSuitablePoolsForVolumes(FirstFitPlanner.java:758)
at com.cloud.deploy.FirstFitPlanner.plan(FirstFitPlanner.java:174)
at
com.cloud.vm.VirtualMachineManagerImpl.advanceStart(VirtualMachineManagerImpl.java:709)
at
com.cloud.vm.VirtualMachineManagerImpl.start(VirtualMachineManagerImpl.java:471)
at
org.apache.cloudstack.engine.cloud.entity.api.VMEntityManagerImpl.deployVirtualMachine(VMEntityManagerImpl.java:212)
at
org.apache.cloudstack.engine.cloud.entity.api.VirtualMachineEntityImpl.deploy(VirtualMachineEntityImpl.java:209)
at
com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3873)
at
com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3466)
at
com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:3452)
at
com.cloud.utils.component.ComponentInstantiationPostProcessor$InterceptorDispatcher.intercept(ComponentInstantiationPostProcessor.java:125)
at
org.apache.cloudstack.api.command.user.vm.DeployVMCmd.execute(DeployVMCmd.java:385)
at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:162)
at
com.cloud.async.AsyncJobManagerImpl$1.run(AsyncJobManagerImpl.java:437)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:679)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira