歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> CentOS 7 虛擬機創建失敗解決

CentOS 7 虛擬機創建失敗解決

日期:2017/2/28 13:59:02   编辑:Linux教程

Openstack版本: Kilo

OS:CentOS 7 Gnome桌面版

問題:CentOS 7 計算節點上虛擬機創建失敗

日志記錄:/var/log/nova/nova-compute.log

2015-08-10 22:06:41.282 707 INFO nova.compute.manager [req-c4498aca-20cc-4950-8484-2ea9da8670c9 a9ba5e68a0db48fdbf5ab664f6f25ca0 a506166979e641dd9f44a25351515014 - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Starting instance...

2015-08-10 22:06:41.544 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Attempting claim: memory 2048 MB, disk 20 GB

2015-08-10 22:06:41.544 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Total memory: 16049 MB, used: 2560.00 MB

2015-08-10 22:06:41.545 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] memory limit: 24073.50 MB, free: 21513.50 MB

2015-08-10 22:06:41.545 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Total disk: 49 GB, used: 20.00 GB

2015-08-10 22:06:41.546 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] disk limit not specified, defaulting to unlimited

2015-08-10 22:06:41.621 707 INFO nova.compute.claims [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Claim successful

2015-08-10 22:06:41.874 707 INFO nova.scheduler.client.report [-] Compute_service record updated for ('localhost.localdomain', 'localhost.localdomain')

2015-08-10 22:06:42.253 707 INFO nova.scheduler.client.report [-] Compute_service record updated for ('localhost.localdomain', 'localhost.localdomain')

2015-08-10 22:06:42.835 707 INFO nova.virt.libvirt.driver [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Creating image

2015-08-10 22:06:44.116 707 INFO nova.scheduler.client.report [-] Compute_service record updated for ('localhost.localdomain', 'localhost.localdomain')

2015-08-10 22:06:57.048 707 INFO nova.virt.libvirt.firewall [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Called setup_basic_filtering in nwfilter

2015-08-10 22:06:57.049 707 INFO nova.virt.libvirt.firewall [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Ensuring static filters

2015-08-10 22:06:57.468 707 ERROR nova.virt.libvirt.driver [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] Error launching a defined domain with XML: <domain type='kvm'>

<name>instance-00000006</name>

<uuid>e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c</uuid>

<metadata>

<nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0">

<nova:package version="2015.1.0-3.el7"/>

<nova:name>ffd</nova:name>

<nova:creationTime>2015-08-11 02:06:57</nova:creationTime>

<nova:flavor name="m1.small">

<nova:memory>2048</nova:memory>

<nova:disk>20</nova:disk>

<nova:swap>0</nova:swap>

<nova:ephemeral>0</nova:ephemeral>

<nova:vcpus>1</nova:vcpus>

</nova:flavor>

<nova:owner>

<nova:user uuid="a9ba5e68a0db48fdbf5ab664f6f25ca0">admin</nova:user>

<nova:project uuid="a506166979e641dd9f44a25351515014">adminTenant</nova:project>

</nova:owner>

<nova:root type="image" uuid="7cf6891d-e1b1-433c-8ac3-9047c251c368"/>

</nova:instance>

</metadata>

<memory unit='KiB'>2097152</memory>

<currentMemory unit='KiB'>2097152</currentMemory>

<vcpu placement='static' cpuset='0-3'>1</vcpu>

<cputune>

<shares>1024</shares>

</cputune>

<sysinfo type='smbios'>

<system>

<entry name='manufacturer'>Fedora Project</entry>

<entry name='product'>OpenStack Nova</entry>

<entry name='version'>2015.1.0-3.el7</entry>

<entry name='serial'>bc3c4917-1c83-4aff-b58f-d860f485625a</entry>

<entry name='uuid'>e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c</entry>

</system>

</sysinfo>

<os>

<type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>

<boot dev='hd'/>

<smbios mode='sysinfo'/>

</os>

<features>

<acpi/>

<apic/>

</features>

<cpu mode='host-model'>

<model fallback='allow'/>

<topology sockets='1' cores='1' threads='1'/>

</cpu>

<clock offset='utc'>

<timer name='pit' tickpolicy='delay'/>

<timer name='rtc' tickpolicy='catchup'/>

<timer name='hpet' present='no'/>

</clock>

<on_poweroff>destroy</on_poweroff>

<on_reboot>restart</on_reboot>

<on_crash>destroy</on_crash>

<devices>

<emulator>/usr/libexec/qemu-kvm</emulator>

<disk type='file' device='disk'>

<driver name='qemu' type='qcow2' cache='none'/>

<source file='/var/lib/nova/instances/e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c/disk'/>

<target dev='vda' bus='virtio'/>

<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>

</disk>

<controller type='usb' index='0'>

<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>

</controller>

<controller type='pci' index='0' model='pci-root'/>

<controller type='virtio-serial' index='0'>

<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>

</controller>

<interface type='bridge'>

<mac address='fa:16:3e:dd:a0:44'/>

<source bridge='br100'/>

<model type='virtio'/>

<filterref filter='nova-instance-instance-00000006-fa163edda044'/>

<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>

</interface>

<serial type='file'>

<source path='/var/lib/nova/instances/e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c/console.log'/>

<target port='0'/>

</serial>

<serial type='pty'>

<target port='1'/>

</serial>

<console type='file'>

<source path='/var/lib/nova/instances/e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c/console.log'/>

<target type='serial' port='0'/>

</console>

<channel type='pty'>

<target type='virtio' name='com.RedHat.spice.0'/>

<address type='virtio-serial' controller='0' bus='0' port='1'/>

</channel>

<input type='tablet' bus='usb'/>

<input type='mouse' bus='ps2'/>

<input type='keyboard' bus='ps2'/>

<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='en-us'>

<listen type='address' address='0.0.0.0'/>

</graphics>

<graphics type='spice' autoport='yes' listen='0.0.0.0' keymap='en-us'>

<listen type='address' address='0.0.0.0'/>

</graphics>

<video>

<model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'/>

<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>

</video>

<memballoon model='virtio'>

<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>

<stats period='10'/>

</memballoon>

</devices>

</domain>

2015-08-10 22:06:57.469 707 ERROR nova.compute.manager [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Instance failed to spawn

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Traceback (most recent call last):

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2442, in _build_resources

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] yield resources

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2314, in _build_and_run_instance

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] block_device_info=block_device_info)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 2354, in spawn

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] block_device_info=block_device_info)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 4391, in _create_domain_and_network

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] power_on=power_on)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 4322, in _create_domain

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] LOG.error(err)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 85, in __exit__

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] six.reraise(self.type_, self.value, self.tb)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 4312, in _create_domain

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] domain.createWithFlags(launch_flags)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 183, in doit

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] result = proxy_call(self._autowrap, f, *args, **kwargs)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 141, in proxy_call

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] rv = execute(f, *args, **kwargs)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 122, in execute

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] six.reraise(c, e, tb)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 80, in tworker

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] rv = meth(*args, **kwargs)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] File "/usr/lib64/python2.7/site-packages/libvirt.py", line 996, in createWithFlags

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] libvirtError: internal error: referenced filter 'no-mac-spoofing' is missing

2015-08-10 22:06:57.469 707 TRACE nova.compute.manager [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c]

2015-08-10 22:06:57.472 707 INFO nova.compute.manager [req-c4498aca-20cc-4950-8484-2ea9da8670c9 a9ba5e68a0db48fdbf5ab664f6f25ca0 a506166979e641dd9f44a25351515014 - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Terminating instance

2015-08-10 22:06:57.480 707 INFO nova.virt.libvirt.driver [-] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Instance destroyed successfully.

2015-08-10 22:06:57.715 707 INFO nova.virt.libvirt.driver [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Deleting instance files /var/lib/nova/instances/e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c_del

2015-08-10 22:06:57.716 707 INFO nova.virt.libvirt.driver [req-5028a584-b5fb-4260-b3f8-cb145d6a2088 - - - - -] [instance: e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c] Deletion of /var/lib/nova/instances/e8b32dc2-4dd1-4956-9cab-a6c6c0d5655c_del complete

根據日志記錄,發現錯誤關鍵字:

libvirtError: internal error: referenced filter 'no-mac-spoofing' is missing

經過上網搜索以後,發現問題與libvirt的nwfilter功能相關。

查看計算節點libvirt 相關的nwfilter信息

root@localhost ~]# virsh nwfilter-list

UUID Name

------------------------------------------------------------------

4e221669-6d5a-43a9-b5eb-98dd70e3a157 nova-allow-dhcp-server

0f103d9e-20fb-4533-a3b5-edcaad5c2137 nova-base

ad6f6e51-5981-49d0-892a-3409f1da58cf nova-instance-instance-00000005-fa163e28d503

fda64645-7a74-4b44-9949-c4c126672466 nova-instance-instance-00000006-fa163edda044

c7a96409-7c16-4e18-bdef-29980aaa8c8f nova-instance-instance-00000007-fa163eb3fb99

500220cc-3738-4076-a71f-79aa9dc59802 nova-no-nd-reflection

de0e1a3a-94df-4331-8cd4-e5a8e143e6d8 nova-nodhcp

dab8b452-098e-4019-a5d2-b053d46d0091 nova-vpn

發現nwfilter缺少no-mac-spoofing信息。

解決:安裝nwfilter軟件包

yum install libvirt-daemon-config-nwfilter

軟件包安裝後,重啟libvirtd服務:

service libvirtd restart

再次查看libvirt的network filter

[root@localhost ~]# virsh nwfilter-list

UUID Name

------------------------------------------------------------------

7d26d9b6-1c05-4875-9d3c-d4ddc3e7157c allow-arp

5fd0997d-978a-42cb-bb55-83b195a1ee02 allow-dhcp

26412da7-4cc1-47ad-a8bd-1ece211ac451 allow-dhcp-server

cf070932-efdd-4647-b517-e31b08d5b27d allow-incoming-ipv4

59937e6f-d676-49c0-98c8-28313f54fbc7 allow-ipv4

3f558bed-627e-4ae7-b245-7662476673c9 clean-traffic

6350f1ca-d24a-4097-abee-04d04456d0bc no-arp-ip-spoofing

29337093-9041-4765-bd54-b0225e3d373c no-arp-mac-spoofing

8c508085-3af2-4355-84d9-7c0ed9baa97d no-arp-spoofing

6dd04710-0d3f-48ff-ace0-04ff4c540dac no-ip-multicast

b1f0c2ce-320e-41fd-9985-53c3fa27d226 no-ip-spoofing

8cdd6e3d-35e2-4958-87e6-aa17ee04ea7e no-mac-broadcast

5aab9582-e0ac-4eb8-9b6f-e4a20eced81e no-mac-spoofing

19bb746c-2062-4128-a2d1-93e3177d967c no-other-l2-traffic

afe58c32-67e0-4f15-a31d-bb722344b89f no-other-rarp-traffic

4e221669-6d5a-43a9-b5eb-98dd70e3a157 nova-allow-dhcp-server

0f103d9e-20fb-4533-a3b5-edcaad5c2137 nova-base

ad6f6e51-5981-49d0-892a-3409f1da58cf nova-instance-instance-00000005-fa163e28d503

fda64645-7a74-4b44-9949-c4c126672466 nova-instance-instance-00000006-fa163edda044

c7a96409-7c16-4e18-bdef-29980aaa8c8f nova-instance-instance-00000007-fa163eb3fb99

500220cc-3738-4076-a71f-79aa9dc59802 nova-no-nd-reflection

de0e1a3a-94df-4331-8cd4-e5a8e143e6d8 nova-nodhcp

dab8b452-098e-4019-a5d2-b053d46d0091 nova-vpn

b81a5aa6-0045-49ec-b5fb-d5ae62245ef9 qemu-announce-self

2dbff157-d88d-42fd-ae93-052efdd27af7 qemu-announce-self-rarp

此時創建虛擬機即可成功。

更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14

Copyright © Linux教程網 All Rights Reserved