extend query the vNIC pci address and PF active stauts API

Registered by dutiegang

sence 1:
In sr-iov network, if one VM has muti-vNICs which are from the different PF, for example one PF is ctrl plane, another is traffic plane. In this situation, if app in vm want to send traffic to ctrl plan, it don't know which vNIC shoud sent to. Because we don't know the relationship between vETHx of VF, we only know the map info of VF to PF.

sence 2:
If the host have two physical ports, they are bonded in active standby mode.The bonded port support ovs. And at the same time two phyiscal ports support the SR-IOV. In one VM which have two VFs, they are bonded in active standby mode and they are belong to different PF.If unlucky the active mod port of
VF bonding logic port is on the standby mode port of PF bonding logic port, OOOPS it will cause the problem. No packet can be sent outside.

example: VM0 active port eth0 is on PF0, VM1 bond active port eth0 is on PF1.
^^--------------------------------
^^|*********VM1*********|
^^|*eth1***********eth0* |
^^--------------------------------
^^^^^|************** |
^^^^^|------------------|(bond1 eth0 active,eth1 slave)sr-iov
^^^^^| **************|
PF0---VF0******PF1---VF0
^^|**************|
^^|-----------------|(bond0 eth0 active,eth1 slave)ovs
^^|**************|
^---------------------------
|*eth0***********eht1|
|*********host*******|
^---------------------------

In order to slove this problem, we propose the following method.
 Adding the vNIC PCI address and PF active status information to nova query API.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
dutiegang
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

It seems to me that this problem is solved in a more general way by the following BP:

https://blueprints.launchpad.net/nova/+spec/virt-device-role-tagging

(spec can be found at: https://review.openstack.org/#/c/195662)

I propose that we extend that BP if anything is missing for this use case - I am not very happy with exposing any of the proposed detaild through the Nova API.

-- ndipanov (01-11-2015)

-------------------------------- reply to ndipanov -------------------------------
In the virt-device-role-tagging BP, it maps different network plane to assign vNic by simplely add role tag,but it lack of the PF status, so it still cannot slove the sence 2 problem.

there including two problems need to slove:
1 the mapping relationship between vNICs on which PF and muti-network planes in the VM.
2 the active status of the PF which the vNIC belong to.

In my oponion, in sr-iov mode, nova should offer the pci address of vNIC in the VF's pci_devices tables, that is a basic service, it can aslo distinguish the mapping relationship between vNICs and muti-network planes.
if use the virt-device-role-tagging method, it seems to concern with upper layyer specific application network mapping to vNICs.

-- by dutiegang (05-11-2015)

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.