[openstack-dev] [nova][neutron] New BP for live migration with direct pci passthru

Xie, Xianshan xiexs at cn.fujitsu.com
Mon Feb 15 07:59:38 UTC 2016


Ping...

-----Original Message-----
From: Xie, Xianshan [mailto:xiexs at cn.fujitsu.com] 
Sent: Tuesday, February 02, 2016 7:12 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [nova][neutron] New BP for live migration with direct pci passthru

Hi, all,
I'd better explain my thoughts in more detail I think.

>1)Bond the direct pci passthru NIC with a virtual NIC.
>     This will keep the network connectivity during the live migration.
>2)Unenslave the direct pci passthru NIC
The step 1-2 could be implemented by any way of the following two approaches:
A: embed scripts into image in advance, depends on the DIB,
  which will be run automatically while server is spawned to bond the vNIC with the direct pci passthru NIC.
B: bond the two NICs by manually after server is up.

>3)Hot-unplug the direct pci passthru NIC
We should add a logic for the "live-migration-with-pci-passthru-nic" (temporary command name) to indirectly invoke dettach_interface() to unplug the pci NIC.

>4)Live-migrate guest with the virtual NIC
There mainly are two logic we should implement I think.
A: enhance the conductor and scheduler to vote the target host based on the passthrough-able NIC matching.
B: add a logic to invoke the general live migration operation to migrate the server (now the server has only vNICs).

>5)Hot-plug the direct pci passthru NIC on the target host
Add a logic to plug the pci NIC with attach-interface().

>6)Enslave the direct pci passthru NIC
A script will be run by the udev rules which will be notified by kernel whenever the pci NIC device is attached.
Of course, the script should also be prepared before the migration operation, by administrator or by DIB.

Does that make sense?
Any reply will be appreciated, thanks in advance.

Best regards,
xiexs



-----Original Message-----
From: Xie, Xianshan [mailto:xiexs at cn.fujitsu.com]
Sent: Monday, February 01, 2016 6:25 PM
To: openstack-dev at lists.openstack.org
Subject: [openstack-dev] [nova][neutron] New BP for live migration with direct pci passthru

Hi, all,
  I have registered a new BP about the live migration with a direct pci passthru device.
  Could you please help me to review it? Thanks in advance.

The following is the details:
----------------------------------------------------------------------------------
SR-IOV has been supported for a long while, in the community's point of view, the pci passthru with Macvtap can be live migrated possibly, but the direct pci passthru seems hard to implement the migration as the passthru VF is totally controlled by the VMs so that some internal states may be unknown by the hypervisor.

But we think the direct pci passthru model can also be live migrated with the following combination of a series of technology/operation based on the enhanced
Qemu-Geust-Agent(QGA) which has already been supported by nova.
   1)Bond the direct pci passthru NIC with a virtual NIC.
     This will keep the network connectivity during the live migration.
   2)Unenslave the direct pci passthru NIC
   3)Hot-unplug the direct pci passthru NIC
   4)Live-migrate guest with the virtual NIC
   5)Hot-plug the direct pci passthru NIC on the target host
   6)Enslave the direct pci passthru NIC

And more inforation about this concept can refer to [1].
[1]https://www.kernel.org/doc/ols/2008/ols2008v2-pages-261-267.pdf
----------------------------------------------------------------------------------

Best regards,
Xiexs



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




More information about the OpenStack-dev mailing list