[openstack-dev] [puppet] adding ovs dpdk agent into neutron

Emilien Macchi emilien at redhat.com
Wed Mar 2 17:51:05 UTC 2016

On 03/02/2016 03:07 AM, Ptacek, MichalX wrote:
> Hi all,
> we have puppet module for ovs deployments with dpdk support
> https://github.com/openstack/networking-ovs-dpdk/tree/master/puppet

IMHO that's a bad idea to use networking-ovs-dpdk for the puppet module.
You should initiate the work to create openstack/puppet-dpdk (not sure
about the name) or try to patch openstack/puppet-vswitch.

How puppet-vswitch would be different from puppet-dpdk?

I've looked at the code and you run bash scripts from Puppet.
Really ? :-)

> and we would like to adapt it in a way that it can be used within
> upstream neutron module
> e.g. to introduce class like this
> neutron::agents::ml2::ovsdpdk
> Current code works as follows:
> -          Openstack with installed vanilla ovs is a kind of precondition
> -          Ovsdpdk puppet module installation is triggered afterwards
> and it replace vanilla ovs by ovsdpdk
> (in order to have some flexibility and mostly due to performance reasons
> we are building ovs from src code)
> https://github.com/openstack/networking-ovs-dpdk/blob/master/puppet/ovsdpdk/files/build_ovs_dpdk.erb
> -          As a part of deployments we have several shell scripts, which
> are taking care of build and configuration stuff
> I assume that some parts of our code can be easily rewritten to start
> using standard providers other parts might be rewritten to ruby …
> We would like to introduce neutron::agents::ml2::ovsdpdk as adequate
> solution with existing neutron::agents::ml2::ovs and not just patching it.

What Puppet OpenStack group will let neutron::agents::ml2::ovsdpdk doing:

* configure what you like in /etc/neutron/*
* install what you want that is part of OpenStack/Neutron* (upstream).

What Puppet OpenStack group WILL NOT let neutron::agents::ml2::ovsdpdk

* install third party software (packages from some custom repositories,
not upstream).
* build RPM/DEB from bash scripts
* build anything from bash scripts
* configure anything outside /etc/neutron/*

> Actually I have following questions:
> Q1) Will it be acceptable if we move build logic before deployment and
> resulting rpm/deb will be installed instead of ovs package during
> deployment ?

You should engage efforts to have upstream packaging in Ubuntu/Debian
and Red Hat systems (RDO).

> Q2) Do we need to rewrite bash logic into ruby code ?

Drop bash scripts, and use upstream packages, like we do everywhere else.

> Q3) Do we need to raise separate blueprint, which has to be approved
>  before starting adaptations ?

Feel free to submit a blueprint so our group can be involved in this
discussion, or maybe this thread is enough.
Emilien Macchi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160302/66797cca/attachment.pgp>

More information about the OpenStack-dev mailing list