Git Product home page Git Product logo

networking-ofagent's Introduction

What's this

This is OpenStack/Networking (Neutron) "ofagent" ML2 driver and its agent.

Installation

For how to install/set up ML2 mechanism driver for OpenFlow Agent, please refer to https://github.com/osrg/ryu/wiki/OpenStack

Notes for updating from Icehouce

OVS.bridge_mappings is deprecated for ofagent. It was removed in Kilo. Please use AGENT.physical_interface_mappings instead. To mimic an existing setup with bridge_mapping, you can create a veth pair, link one side of it to the bridge, and then specify the other side in physical_interface_mappings. For example, if you have the following:

[OVS]
bridge_mappings=public:br-ex

You can do:

# ip link add int-public type veth peer name phy-public
# ip link set int-public up
# ip link set phy-public up
# ovs-vsctl add-port br-ex phy-public

and then replace the bridge_mappings with:

[AGENT]
physical_interface_mappings=public:int-public

After Icehouce, most of the functionality have been folded into a single bridge, the integration bridge. (aka. br-int) The integration bridge is the only bridge which would have an OpenFlow connection to the embedded controller in ofagent now.

  • ofagent no longer uses a separate bridge for tunneling. Please remove br-tun if you have one:

    # ovs-vsctl del-br br-tun
    
  • ofagent no longer acts as an OpenFlow controller for physical bridges. Please remove set-controller configuration from your physical bridges:

    # ovs-vsctl del-controller ${PHYSICAL_BRIDGE}
    

The support of ancillary bridges has been removed after Icehouce. While you can still use these bridges to provide connectivity, neutron-ofagent-agent no longer reports port state changes (up/down) for these bridges. If it is a problem for you, please consider tweaking your configuration to avoid using ancillary bridges. We recommend to use a provider network instead as the following:

  • Make l3-agent external_network_bridge configuration empty:

    [DEFAULT]
    external_network_bridge=
    
  • (Re-)create a network (and subnet) for public connectivity with a flat provider network:

    neutron net-create $PUBLIC_NETWORK -- \
      --router:external=True \
      --provider:network_type:flat \
      --provider:physical_network=$PUBLIC_PHYSICAL_NETWORK
    
  • Associate your neutron router to the above network:

    neutron router-gateway-clear $ROUTER_ID
    neutron router-gateway-set $ROUTER_ID $PUBLIC_NETWORK
    
  • Add the corresponding entry to bridge_mappings:

    [OVS]
    bridge_mappings=$PUBLIC_PHYSICAL_NETWORK:$PUBLIC_BRIDGE
    

The port naming scheme for ofagent has been changed after Icehouce. If you are using security groups, you should switch firewall_driver accordingly.

From:

[securitygroup]
firewall_driver=neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

To:

[securitygroup]
firewall_driver=neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

External Resources

OFAgent documentation on ReadTheDocs

http://networking-ofagent.readthedocs.org/en/latest/

Neutron/OFAgent on OpenStack wiki

https://wiki.openstack.org/wiki/Neutron/OFAgent

Ryu

OFAgent uses Ryu ofproto library to communicate with the local switch.

For general Ryu stuff, please refer to http://osrg.github.io/ryu/

Ryu is available at github git://github.com/osrg/ryu.git https://github.com/osrg/ryu

The mailing is at [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel

Enjoy!

networking-ofagent's People

Contributors

yamt avatar fkakuma avatar booxter avatar emonty avatar gkotton avatar markmcclain avatar snaiksat avatar anguslees avatar zzelle avatar salv-orlando avatar marun avatar armando-migliaccio avatar otherwiseguy avatar kevinbenton avatar aaronorosen avatar irenaber avatar mestery avatar eugene64 avatar markmc avatar jeblair avatar amotoki avatar ttx avatar russellb avatar cubeek avatar dirkmueller avatar dprince avatar akamyshnikova avatar assafmuller avatar eezhova avatar r-mibu avatar

Watchers

James Cloos avatar lipills avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.