I'm trying to create VMs using ISOs I've uploaded. The ISOs all say they are ready to be used and they show up fine during instance creation. However, once I create the instance, I get an error that says "Unable to create a deployment for VM[User|<vm id>]". Looking through the logs, it seems like the way it's determining resources is different for ISO based and Template based. I can create a VM using the included CentOS 5.6 template with the exact same compute offering. In the logs I get this when creating a VM from a template:
------------- 2012-07-11 03:08:36,893 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) DeploymentPlanner allocation algorithm: firstfit 2012-07-11 03:08:36,893 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Trying to allocate a host and storage pools from dc:2, pod:null,cluster:null, requested cpu: 500, requested ram: 536870912 2012-07-11 03:08:36,893 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Is ROOT volume READY (pool already allocated)?: No 2012-07-11 03:08:36,893 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Searching all possible resources under this Zone: 2 2012-07-11 03:08:36,898 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Listing clusters in order of aggregate capacity, that have (atleast one host with) enough CPU and RAM capacity under this Zone: 2 2012-07-11 03:08:36,900 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) CPUOverprovisioningFactor considered: 3.0 2012-07-11 03:08:36,921 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Checking resources in Cluster: 3 under Pod: 2 2012-07-11 03:08:36,922 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-1:job-51) Calling HostAllocators to find suitable hosts 2012-07-11 03:08:36,922 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Looking for hosts in dc: 2 pod:2 cluster:3 2012-07-11 03:08:36,928 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-1:job-51 FirstFitRoutingAllocator) FirstFitAllocator has 2 hosts to check for allocation: [Host[-1-Routing], Host[-5-Routing]] 2012-07-11 03:08:36,949 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Found 2 hosts for allocation after prioritization: [Host[-5-Routing], Host[-1-Routing]] 2012-07-11 03:08:36,949 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Looking for speed=500Mhz, Ram=512 2012-07-11 03:08:36,972 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Checking if host: 5 has enough capacity for requested CPU: 500 and requested RAM: 536870912 , cpuOverprovisioningFactor : 3.0 2012-07-11 03:08:36,986 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Hosts's actual total CPU: 11172 and CPU after applying overprovisioning: 33516 2012-07-11 03:08:36,986 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Free CPU: 30516 , Requested CPU: 500 2012-07-11 03:08:36,994 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Free RAM: 4830291968 , Requested RAM: 536870912 2012-07-11 03:08:36,994 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-1:job-51 FirstFitRoutingAllocator) Host has enough CPU and RAM available ------------- However, using the exact same compute offering, when I try to create a VM using an ISO, I get the following in the logs: ------------- 2012-07-11 03:13:58,534 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) DeploymentPlanner allocation algorithm: firstfit 2012-07-11 03:13:58,535 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Trying to allocate a host and storage pools from dc:2, pod:null,cluster:null, requested cpu: 500, requested ram: 536870912 2012-07-11 03:13:58,535 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Is ROOT volume READY (pool already allocated)?: No 2012-07-11 03:13:58,535 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Searching all possible resources under this Zone: 2 2012-07-11 03:13:58,539 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Listing clusters in order of aggregate capacity, that have (atleast one host with) enough CPU and RAM capacity under this Zone: 2 2012-07-11 03:13:58,541 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) CPUOverprovisioningFactor considered: 3.0 2012-07-11 03:13:58,558 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Checking resources in Cluster: 3 under Pod: 2 2012-07-11 03:13:58,558 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Calling HostAllocators to find suitable hosts 2012-07-11 03:13:58,558 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-2:job-52 FirstFitRoutingAllocator) Looking for hosts in dc: 2 pod:2 cluster:3 2012-07-11 03:13:58,564 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-2:job-52 FirstFitRoutingAllocator) FirstFitAllocator has 2 hosts to check for allocation: [Host[-1-Routing], Host[-5-Routing]] 2012-07-11 03:13:58,567 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-2:job-52 FirstFitRoutingAllocator) Found 0 hosts for allocation after prioritization: [] 2012-07-11 03:13:58,568 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-2:job-52 FirstFitRoutingAllocator) Looking for speed=500Mhz, Ram=512 2012-07-11 03:13:58,568 DEBUG [allocator.impl.FirstFitAllocator] (Job-Executor-2:job-52 FirstFitRoutingAllocator) Host Allocator returning 0 suitable hosts 2012-07-11 03:13:58,568 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) No suitable hosts found 2012-07-11 03:13:58,568 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) No suitable hosts found under this Cluster: 3 2012-07-11 03:13:58,568 DEBUG [cloud.deploy.FirstFitPlanner] (Job-Executor-2:job-52) Could not find suitable Deployment Destination for this VM under any clusters, returning. 2012-07-11 03:13:58,654 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-2:job-52) VM state transitted from :Starting to Stopped with event: OperationFailedvm's original host id: null new host id: null host id before state tran sition: null 2012-07-11 03:13:58,754 DEBUG [cloud.capacity.CapacityManagerImpl] (Job-Executor-2:job-52) 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 2012-07-11 03:13:58,800 DEBUG [agent.manager.AgentManagerImpl] (AgentManager-Handler-15:null) SeqA 3-187783: Processing Seq 3-187783: { Cmd , MgmtId: -1, via: 3, Ver: v1, Flags: 11, [{"ConsoleProxyLoadReportCommand":{"_proxyVmId":2,"_ loadInfo":"{\n \"connections\": [\n {\n \"id\": 524,\n \"clientInfo\": \"\",\n \"host\": \"10.1.11.3\",\n \"port\": 5906,\n \"tag\": \"\",\n \"createTime\": 1341997999371,\n \"lastUsedTime\": 1341 997999371\n },\n {\n \"id\": 8,\n \"clientInfo\": \"\",\n \"host\": \"10.1.11.4\",\n \"port\": 5902,\n \"tag\": \"c43d83ff-35e0-4eb6-87b4-d56f7a2929f9\",\n \"createTime\": 1341904048748,\n \"las tUsedTime\": 1341998035188\n }\n ]\n}","wait":0}}] } 2012-07-11 03:13:58,857 DEBUG [agent.manager.AgentManagerImpl] (AgentManager-Handler-15:null) SeqA 3-187783: Sending Seq 3-187783: { Ans: , MgmtId: 74142025330, via: 3, Ver: v1, Flags: 100010, [{"AgentControlAnswer":{"result":true,"wa it":0}}] } 2012-07-11 03:13:59,133 INFO [api.commands.DeployVMCmd] (Job-Executor-2:job-52) com.cloud.exception.InsufficientServerCapacityException: Unable to create a deployment for VM[User|i-2-18-VM]Scope=interface com.cloud.dc.DataCenter; id=2 2012-07-11 03:13:59,134 WARN [cloud.api.ApiDispatcher] (Job-Executor-2:job-52) class com.cloud.api.ServerApiException : Unable to create a deployment for VM[User|i-2-18-VM] ------------- So after looking for the exact same thing "Looking for speed=500Mhz, Ram=512" in both cases, the template passes (or atleast proceeds to do further checks, and eventually passing) and the ISO immediately fails. Is there something I'm doing wrong? Is this a bug that needs to be patched or looked in to? Or, is there another way to create a template other than deploying with an ISO and creating a template off that deployment? Environment info: Cloudstack 3.0.2 ISO Tried - CentOS 6.2 minimal (both x86 and x64), Ubuntu Server 12.04, CentOS 5.8 Netinstall Thanks, Caleb