Public bug reported: Non-standard hardware settings of instance (e.g. NIC model) are set correctly for first boot after creation, but not kept after many nova operations, e.g. nova reboot --hard or stop & start sequence. HW- specific options disappear from XML on host and virtio driver is used instead.
Extra options like NIC model should be preserved after any instance modifications (reboot, stop&start, storage attach), but are missing. Version: nova-* 1:2015.1.2-0ubuntu1~cloud0, qemu-* 1:2.2+dfsg-5expubuntu9.3~cloud0 on Ubuntu 14.04.3. neutron-* 1:2015.1.2-0ubuntu1~cloud0 Steps to reproduce: 1. $ glance image-create --name test-e1000 --disk-format qcow2 --container-format bare --file cirros-0.3.4-i386-disk.img --property hw_disk_bus=ide --property hw_vif_model=e1000 2. $ nova image-show 8da8e18b-f48b-4dc0-81ed-890dc223d410 +-----------------------+--------------------------------------+ | Property | Value | +-----------------------+--------------------------------------+ | id | 8da8e18b-f48b-4dc0-81ed-890dc223d410 | | metadata hw_disk_bus | ide | | metadata hw_vif_model | e1000 | 3. $ nova boot --image 8da8e18b-f48b-4dc0-81ed-890dc223d410 --flavor 1 --nic net-id=6de2c2fb-a770-4ef3-9a56-c320b339a95b test-e1000 4. compute:~# virsh dumpxml instance-00021519 > /tmp/before 5. $ nova reboot --hard 62f9d3de-7e30-420e-b744-a7755ca6ee0f 6. compute:~# virsh dumpxml instance-00021519 > /tmp/after compute:~# diff -u /tmp/before /tmp/after --- /tmp/before 2016-01-22 15:43:01.530843360 +0100 +++ /tmp/after 2016-01-22 15:43:20.151089791 +0100 @@ -93,7 +93,7 @@ <mac address='fa:16:3e:2a:f4:73'/> <source bridge='brq6de2c2fb-a7'/> <target dev='tap99d4e746-ac'/> - <model type='e1000'/> + <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> I have Neutron ML2 with LinuxBridge underneath. I've tried to use "nova boot ... --image-with hw_vif_model=e1000", with no effect. There were no errors in logs, but content of XML in virt/libvirt/config.py is different: After first boot: 2016-01-22 15:38:13.840 7788 DEBUG nova.virt.libvirt.config [req-5cc930fd-8d7f-4cd0-883c-9bd69672e3a0 4bb8f720d4c7494bb573b6033015cd0c cfb66212643842ad90d9fb5a83b84d52 - - -] Generated XML ('<domain type="kvm">\n <uuid>62f9d3de-7e30-420 e-b744-a7755ca6ee0f</uuid>\n <name>instance-00021519</name>\n<<CUT>> <interface type="bridge">\n <mac address="fa:16:3e:2a:f4:73"/>\n <model type="e1000"/>\n <source bridge="brq6de2c2fb-a7"/>\n <target dev="tap99d4e746-ac"/>\n </interface>\n<<CUT>>',) to_xml /usr/lib/python2.7/dist-packages/ nova/virt/libvirt/config.py:82 After reboot: 2016-01-22 15:43:14.070 7788 DEBUG nova.virt.libvirt.config [req-254da7a4-b370-4557-8cf6-e977a6b60bb1 4bb8f720d4c7494bb573b6033015cd0c cfb66212643842ad90d9fb5a83b84d52 - - -] Generated XML ('<domain type="kvm">\n <uuid>62f9d3de-7e30-420 e-b744-a7755ca6ee0f</uuid>\n <name>instance-00021519</name>\n <<CUT>> <interface type="bridge">\n <mac address="fa:16:3e:2a:f4:73"/>\n <model type="virtio"/>\n <source bridge="brq6de2c2fb-a7"/>\n <target dev="tap99d4e746-ac"/>\n </interface>\n<<CUT>>',) to_xml /usr/lib/python2.7/dist-packages/nova/virt/libvirt/config.py:82 ** Affects: nova Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1537122 Title: Instance HW metadata aren't preserved after reboot Status in OpenStack Compute (nova): New Bug description: Non-standard hardware settings of instance (e.g. NIC model) are set correctly for first boot after creation, but not kept after many nova operations, e.g. nova reboot --hard or stop & start sequence. HW- specific options disappear from XML on host and virtio driver is used instead. Extra options like NIC model should be preserved after any instance modifications (reboot, stop&start, storage attach), but are missing. Version: nova-* 1:2015.1.2-0ubuntu1~cloud0, qemu-* 1:2.2+dfsg-5expubuntu9.3~cloud0 on Ubuntu 14.04.3. neutron-* 1:2015.1.2-0ubuntu1~cloud0 Steps to reproduce: 1. $ glance image-create --name test-e1000 --disk-format qcow2 --container-format bare --file cirros-0.3.4-i386-disk.img --property hw_disk_bus=ide --property hw_vif_model=e1000 2. $ nova image-show 8da8e18b-f48b-4dc0-81ed-890dc223d410 +-----------------------+--------------------------------------+ | Property | Value | +-----------------------+--------------------------------------+ | id | 8da8e18b-f48b-4dc0-81ed-890dc223d410 | | metadata hw_disk_bus | ide | | metadata hw_vif_model | e1000 | 3. $ nova boot --image 8da8e18b-f48b-4dc0-81ed-890dc223d410 --flavor 1 --nic net-id=6de2c2fb-a770-4ef3-9a56-c320b339a95b test-e1000 4. compute:~# virsh dumpxml instance-00021519 > /tmp/before 5. $ nova reboot --hard 62f9d3de-7e30-420e-b744-a7755ca6ee0f 6. compute:~# virsh dumpxml instance-00021519 > /tmp/after compute:~# diff -u /tmp/before /tmp/after --- /tmp/before 2016-01-22 15:43:01.530843360 +0100 +++ /tmp/after 2016-01-22 15:43:20.151089791 +0100 @@ -93,7 +93,7 @@ <mac address='fa:16:3e:2a:f4:73'/> <source bridge='brq6de2c2fb-a7'/> <target dev='tap99d4e746-ac'/> - <model type='e1000'/> + <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> I have Neutron ML2 with LinuxBridge underneath. I've tried to use "nova boot ... --image-with hw_vif_model=e1000", with no effect. There were no errors in logs, but content of XML in virt/libvirt/config.py is different: After first boot: 2016-01-22 15:38:13.840 7788 DEBUG nova.virt.libvirt.config [req-5cc930fd-8d7f-4cd0-883c-9bd69672e3a0 4bb8f720d4c7494bb573b6033015cd0c cfb66212643842ad90d9fb5a83b84d52 - - -] Generated XML ('<domain type="kvm">\n <uuid>62f9d3de-7e30-420 e-b744-a7755ca6ee0f</uuid>\n <name>instance-00021519</name>\n<<CUT>> <interface type="bridge">\n <mac address="fa:16:3e:2a:f4:73"/>\n <model type="e1000"/>\n <source bridge="brq6de2c2fb-a7"/>\n <target dev="tap99d4e746-ac"/>\n </interface>\n<<CUT>>',) to_xml /usr/lib/python2.7/dist-packages/ nova/virt/libvirt/config.py:82 After reboot: 2016-01-22 15:43:14.070 7788 DEBUG nova.virt.libvirt.config [req-254da7a4-b370-4557-8cf6-e977a6b60bb1 4bb8f720d4c7494bb573b6033015cd0c cfb66212643842ad90d9fb5a83b84d52 - - -] Generated XML ('<domain type="kvm">\n <uuid>62f9d3de-7e30-420 e-b744-a7755ca6ee0f</uuid>\n <name>instance-00021519</name>\n <<CUT>> <interface type="bridge">\n <mac address="fa:16:3e:2a:f4:73"/>\n <model type="virtio"/>\n <source bridge="brq6de2c2fb-a7"/>\n <target dev="tap99d4e746-ac"/>\n </interface>\n<<CUT>>',) to_xml /usr/lib/python2.7/dist-packages/nova/virt/libvirt/config.py:82 To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1537122/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp