Я реализую инструмент управления живой миграцией, используя libvirt, qemu и python. В моей первоначальной установке, которая включает в себя два блока Debian, я могу без проблем мигрировать и отслеживать миграцию, однако в моей производственной установке, использующей CentOS 6.4, мне пришлось перекомпилировать и qemu, и libvirt в более новые версии, чтобы поддерживать сжатую миграцию. Проблема в том, что даже если кажется, что миграция работает правильно, мониторинг возвращает ошибку с:
libvirt: XML-RPC error : Too many job stats '19' for limit '16'
Traceback (most recent call last):
File "./migrate_monitor_migration.py", line 27, in <module>
remaining = vm.vm_status()
File "/software/test/VMMigration.py", line 70, in vm_status
return self.__update_migration_status()
File "/software/test/VMMigration.py", line 40, in __update_migration_status
dictionary = self.vm_job_stats()
File "/software/test/VMMigration.py", line 37, in vm_job_stats
return self.local_dom.jobStats()
File "/usr/local/libvirt/lib64/python2.6/site-packages/libvirt.py", line 2045, in jobStats
if ret is None: raise libvirtError ('virDomainGetJobStats() failed', dom=self)
libvirt.libvirtError: Too many job stats '19' for limit '16'
Как видно, ошибка возникает при доступе к функции jobStats домена.
Странная проблема заключается в том, что пока миграция не выполняется, мониторинг правильно обращается к мониторингу.
В дополнение к информации прилагаю часть libvirtd.log:
2013-09-22 07:02:22.806+0000: 2652: error : qemuMonitorIO:616 : internal error: End of file from monitor
2013-09-22 07:05:34.120+0000: 2654: warning : qemuOpenVhostNet:495 : Unable to open vhost-net. Opened so far 0, requested 1
2013-09-22 07:05:34.120+0000: 2654: warning : qemuDomainObjTaint:1558 : Domain id=11 name='TESTVM' uuid=348ba295-7665-b7f2-020c-04303c5896a1 is tainted: high-privileges
2013-09-22 07:05:34.154+0000: 2654: error : virDBusCallMethod:1156 : The name org.freedesktop.machine1 was not provided by any .service files
2013-09-22 07:06:16.177+0000: 2655: warning : qemuMigrationCancelDriveMirror:1383 : Unable to stop block job on drive-virtio-disk0
2013-09-22 07:10:41.637+0000: 2653: warning : qemuMigrationCancelDriveMirror:1383 : Unable to stop block job on drive-virtio-disk0
2013-09-22 07:12:00.657+0000: 2657: warning : qemuMigrationCancelDriveMirror:1383 : Unable to stop block job on drive-virtio-disk0
Заранее спасибо за любой указатель.
virDomainGetJobStats()
, что означает, что ваш домен неактивен. проверьте журналы домена под/var/log/libvirt/qemu/<domain-name>/*.log
- person shawnzhu   schedule 23.09.2013