← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1640960] [NEW] RFE: VIF plugging negotiation between Nova and Neutron

 

Public bug reported:

Nova has opinions on which VIF types are acceptable, and these types
vary by circumstance.  vhost-user can be used if QEMU is in use and
hugepages are used on the VM (specifically, if the VM's memory is backed
by an open file, in fact); exclusively virtio mechanisms like vhost-user
cannot be used when QEMU emulates phsyical hardware such as E1000s;
different hosts can have different hypervisors; and so on.  It cannot,
today, express those preferences to Neutron, so Neutron generally
returns a fixed and preconfigured plugging type that may or may not
actually be useful to Nova - and when it isn't, VMs fail to boot.

https://review.openstack.org/#/c/390512/ is a Nova spec that describes
how Nova will tell Neutron which types are acceptable to it for a
specific port when plugging is initiated.  This is the companion RFE for
Neutron that asks that Neutron's core code and ML2 driver be changed to
offer up those preferences over the plugin and ML2 interfaces,
respectively (likely no change if we use the port structure to pass the
information as we bind) and change the in-tree OVS and LB mechanism
drivers to respect the passed types as appropriate.

(I'm not sure how much change this actually requires in Neutron, if any,
becase the LB and OVS drivers are not terribly flexible as regards
plugging types; but if any example code that can be written for the LB
and OVS drivers I want to make sure that I'm covered as I introduce the
changes.)

** Affects: neutron
     Importance: Undecided
         Status: New


** Tags: rfe

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1640960

Title:
  RFE: VIF plugging negotiation between Nova and Neutron

Status in neutron:
  New

Bug description:
  Nova has opinions on which VIF types are acceptable, and these types
  vary by circumstance.  vhost-user can be used if QEMU is in use and
  hugepages are used on the VM (specifically, if the VM's memory is
  backed by an open file, in fact); exclusively virtio mechanisms like
  vhost-user cannot be used when QEMU emulates phsyical hardware such as
  E1000s; different hosts can have different hypervisors; and so on.  It
  cannot, today, express those preferences to Neutron, so Neutron
  generally returns a fixed and preconfigured plugging type that may or
  may not actually be useful to Nova - and when it isn't, VMs fail to
  boot.

  https://review.openstack.org/#/c/390512/ is a Nova spec that describes
  how Nova will tell Neutron which types are acceptable to it for a
  specific port when plugging is initiated.  This is the companion RFE
  for Neutron that asks that Neutron's core code and ML2 driver be
  changed to offer up those preferences over the plugin and ML2
  interfaces, respectively (likely no change if we use the port
  structure to pass the information as we bind) and change the in-tree
  OVS and LB mechanism drivers to respect the passed types as
  appropriate.

  (I'm not sure how much change this actually requires in Neutron, if
  any, becase the LB and OVS drivers are not terribly flexible as
  regards plugging types; but if any example code that can be written
  for the LB and OVS drivers I want to make sure that I'm covered as I
  introduce the changes.)

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1640960/+subscriptions


Follow ups