在群里,有朋友问到,使用kvm的主机,迁移VM失败。在迁移的时候UI上选择迁移主机的时候提示(notsuitable),迁移操作后的报错log如下:log写道2013-05-1012:21:12,906DEBUG[agent.transport.Request](StatsCollector-1:null)Seq12-
在群里,有朋友问到,使用kvm的主机,迁移VM失败。在迁移的时候UI上选择迁移主机的时候提示(not
suitable),迁移操作后的报错log如下:
log 写道2013-05-10 12:21:12,906 DEBUG [agent.transport.Request]
(StatsCollector-1:null) Seq 12-1822163042: Received: { Ans: ,
MgmtId: 165160840324569, via: 12, Ver: v1, Flags: 10, {
GetStorageStatsAnswer } }
DEBUG [cloud.async.AsyncJobManagerImpl] (catalina-exec-23:null)
submit async job-110, details: AsyncJobVO {id:110, userId: 2,
accountId: 2, sessionKey: null, instanceType: None, instanceId:
null, cmd: com.cloud.api.commands.MigrateVMCmd, cmdOriginator:
null, cmdInfo:
{"response":"json","sessionkey":"+UUFHn2vEgL8D23672YRc8DKh6s\u003d","virtualmachineid":"577fecb0-5e1a-4d8e-a986-e9b5ff482a41","hostid":"837fc7af-4c52-4945-a85a-a1e581241eeb","ctxUserId":"2","_":"1368159672367","ctxAccountId":"2","ctxStartEventId":"370"},
cmdVersion: 0, callbackType: 0, callbackAddress: null, status: 0,
processStatus: 0, resultCode: 0, result: null, initMsid:
165160840324569, completeMsid: null, lastUpdated: null, lastPolled:
null, created: null}
2013-05-10 12:21:13,531 DEBUG [cloud.async.AsyncJobManagerImpl]
(Job-Executor-71:job-110) Executing
com.cloud.api.commands.MigrateVMCmd for job-110
2013-05-10 12:21:13,556 INFO [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-71:job-110) Migrating VM[User|kvmtest1] to
Dest[Zone(Id)-Pod(Id)-Cluster(Id)-Host(Id)-Storage(Volume(Id|Type-->Pool(Id))]
: Dest[Zone(1)-Pod(1)-Cluster(1)-Host(12)-Storage()]
2013-05-10 12:21:13,576 DEBUG [cloud.storage.StorageManagerImpl]
(Job-Executor-71:job-110) Preparing 1 volumes for
VM[User|kvmtest1]
2013-05-10 12:21:13,594 DEBUG [agent.transport.Request]
(Job-Executor-71:job-110) Seq 12-1822163043: Sending { Cmd ,
MgmtId: 165160840324569, via: 12, Ver: v1, Flags: 100111,
[{"PrepareForMigrationCommand":{"vm":{"id":7,"name":"i-2-7-VM","type":"User","cpus":2,"speed":2,"minRam":4294967296,"maxRam":4294967296,"arch":"x86_64","os":"CentOS
6.0
(64-bit)","bootArgs":"","rebootOnCrash":false,"enableHA":true,"limitCpuUse":false,"vncPassword":"45f1e9bf5d1cdaa8","params":{},"uuid":"577fecb0-5e1a-4d8e-a986-e9b5ff482a41","disks":[{"id":6,"name":"ROOT-7","mountPoint":"/primary","path":"173f67f8-45ad-4af7-899f-0d8a8597b73c","size":5368709120,"type":"ROOT","storagePoolType":"NetworkFilesystem","storagePoolUuid":"df6510f2-e971-3713-8fdd-aa6c5fe8d72c","deviceId":0},{"id":7,"path":"nfs://10.1.111.150condary/template/tmpl/2/203//203-2-6cee0418-f55e-37cc-88ba-aae74dd8b3f5.iso","size":0,"type":"ISO","storagePoolType":"ISO","deviceId":0}],"nics":[{"deviceId":0,"networkRateMbps":200,"defaultNic":true,"uuid":"976fab39-6b0e-44e9-868d-8b495a33b68b","ip":"10.1.111.185","netmask":"255.255.255.0","gateway":"10.1.111.254","mac":"06:1a:5a:00:00:19","dns1":"8.8.8.8","dns2":"8.8.4.4","broadcastType":"Vlan","type":"Guest","broadcastUri":"vlan://untagged","isolationUri":"ec2://untagged","isSecurityGroupEnabled":false}]},"wait":0}}]
}
2013-05-10 12:21:13,843 DEBUG [agent.transport.Request]
(AgentManager-Handler-7:null) Seq 12-1822163043: Processing: { Ans:
, MgmtId: 165160840324569, via: 12, Ver: v1, Flags: 110,
[{"PrepareForMigrationAnswer":{"result":true,"wait":0}}] }
2013-05-10 12:21:13,843 DEBUG [agent.manager.AgentAttache]
(AgentManager-Handler-7:null) Seq 12-1822163043: No more commands
found
2013-05-10 12:21:13,844 DEBUG [agent.transport.Request]
(Job-Executor-71:job-110) Seq 12-1822163043: Received: { Ans: ,
MgmtId: 165160840324569, via: 12, Ver: v1, Flags: 110, {
PrepareForMigrationAnswer } }
2013-05-10 12:21:13,850 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) VM state transitted from :Running to
Migrating with event: MigrationRequestedvm's original host id: 1
new host id: 12 host id before state transition: 1
DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) Hosts's actual total CPU: 45624 and CPU
after applying overprovisioning: 45624
2013-05-10 12:21:13,856 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) We are allocating VM, increasing the used
capacity of this host:12
2013-05-10 12:21:13,856 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) Current Used CPU: 0 , Free CPU:45624
,Requested CPU: 4
2013-05-10 12:21:13,856 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) Current Used RAM: 0 , Free
RAM:33609699328 ,Requested RAM: 4294967296
2013-05-10 12:21:13,856 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) CPU STATS after allocation: for host: 12,
old used: 0, old reserved: 0, actual total: 45624, total with
overprovisioning: 45624; new used:4, reserved:0; requested
cpu:4,alloc_from_last:false
2013-05-10 12:21:13,856 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) RAM STATS after allocation: for host: 12,
old used: 0, old reserved: 0, total: 33609699328; new used:
4294967296, reserved: 0; requested mem:
4294967296,alloc_from_last:false
2013-05-10 12:21:13,862 DEBUG [agent.transport.Request]
(Job-Executor-71:job-110) Seq 1-1874334912: Sending { Cmd , MgmtId:
165160840324569, via: 1, Ver: v1, Flags: 100111,
[{"MigrateCommand":{"vmName":"i-2-7-VM","destIp":"10.1.111.151","hostGuid":"b8da45b7-63d4-34ad-83fe-4868eef53e7c-LibvirtComputingResource","isWindows":false,"wait":0}}]
}
2013-05-10 12:21:13,917 DEBUG [agent.transport.Request]
(AgentManager-Handler-1:null) Seq 1-1874334912: Processing: { Ans:
, MgmtId: 165160840324569, via: 1, Ver: v1, Flags: 110,
[{"MigrateAnswer":{"result":false,"details":"internal error Attempt
to migrate guest to the same host
00020003-0004-0005-0006-000700080009","wait":0}}] }
2013-05-10 12:21:13,917 DEBUG [agent.manager.AgentAttache]
(AgentManager-Handler-1:null) Seq 1-1874334912: No more commands
found
2013-05-10 12:21:13,917 DEBUG [agent.transport.Request]
(Job-Executor-71:job-110) Seq 1-1874334912: Received: { Ans: ,
MgmtId: 165160840324569, via: 1, Ver: v1, Flags: 110, {
MigrateAnswer } }
2013-05-10 12:21:13,917 ERROR
[cloud.vm.VirtualMachineManagerImpl] (Job-Executor-71:job-110)
Unable to migrate due to internal error Attempt to migrate guest to
the same host 00020003-0004-0005-0006-000700080009
2013-05-10 12:21:13,917 INFO [cloud.vm.VirtualMachineManagerImpl]
(Job-Executor-71:job-110) Migration was unsuccessful. Cleaning up:
VM[User|kvmtest1]
2013-05-10 12:21:13,919 DEBUG [cloud.alert.AlertManagerImpl]
(Job-Executor-71:job-110) Have already sent: 1 emails for alert
type '16' -- skipping send email
2013-05-10 12:21:13,921 DEBUG [agent.manager.AgentAttache]
(Job-Executor-71:job-110) Seq 12-1822163044: Routed from
165160840324569
2013-05-10 12:21:13,921 DEBUG [agent.transport.Request]
(Job-Executor-71:job-110) Seq 12-1822163044: Sending { Cmd ,
MgmtId: 165160840324569, via: 12, Ver: v1, Flags: 100111,
[{"StopCommand":{"isProxy":false,"vmName":"i-2-7-VM","wait":0}}]
}
2013-05-10 12:21:13,925 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) VM state transitted from :Migrating to
Running with event: OperationFailedvm's original host id: 1 new
host id: 1 host id before state transition: 12
2013-05-10 12:21:13,929 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) Hosts's actual total CPU: 45624 and CPU
after applying overprovisioning: 45624
2013-05-10 12:21:13,930 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) release cpu from host: 12, old used:
4,reserved: 0, actual total: 45624, total with overprovisioning:
45624; new used: 0,reserved:0; movedfromreserved:
false,moveToReserveredfalse
2013-05-10 12:21:13,930 DEBUG [cloud.capacity.CapacityManagerImpl]
(Job-Executor-71:job-110) release mem from host: 12, old used:
4294967296,reserved: 0, total: 33609699328; new used: 0,reserved:0;
movedfromreserved: false,moveToReserveredfalse
2013-05-10 12:21:13,939 WARN [cloud.api.ApiDispatcher]
(Job-Executor-71:job-110) class com.cloud.api.ServerApiException :
Failed to migrate vm
上边加粗的地方就是失败的原因。是KVM中libvirt的uuid出的问题。 解决方法如下:
#uuidgen //获取一个uuid#vi /etc/libvirt/libvirtd.conf //编辑配置文件host_uuid = “00000000-0000-0000-0000-000000000000″ //将之前获取的uuid填在这里。#service libvirtd restart //重启服务 应该就可以在线迁移了。
如果还有问题,可以尝试重启CloudStack的 KVM agent,或KVM所在的主机。