Openstack Neutron: Introduction

Note: this introduction based on the great presentations: Introduction to OpenStack Neutron  by Assaf Amuller & Virtual Networking in OpenStack: Neutron 101 by Mark McClain and Kyle Mestery. So I highly recommend to watch those. If you don’t have the time or prefer reading, you have it gathered here. Enjoy 🙂

Neutron Core Concepts

Neutron three core concepts ( aka core resources) are:

Continue reading “Openstack Neutron: Introduction”

Openstack Neutron: L2 & L3 agents

Important note: This post is a written form of this great presentation of Carl Baldwin and Rossella Sblendido. Usually when I watching vids, I write down some notes. In this case I decided to gather most of the presentation content here in one post and share it with you as you may find it also useful. Enjoy 🙂

L2 Agent

Its main responsibility is to wire new devices (TAP interfaces created by Nova) and to configure the software bridges on the compute nodes. There are usually two bridges: br-int and br-tun.

br-int is the integration bridge. It’s the bridge that takes care of tagging & untagging the traffic which coming in or out of the VMs. To tag the traffic, it uses local vlan id and assign it to the network.

Continue reading “Openstack Neutron: L2 & L3 agents”

Openstack: How to debug neutron with pdb

When I was much younger and foolish (last month), I tried to debug neutron network creation, by inserting ‘import pdb; pdb.set_trace()’ to  /usr/lib/python2.7/site-packages/neutron/db/db_base_plugin_v2.py and simply create network, waiting for pdb to take action. But that didn’t happen. I had to guess it will not work since neutron-server starts as a daemon, and not owned by the terminal. So using the pdb.set_trace() had no effect.

The right way would be to start neutron-server directly and not by starting the service. Don’t worry, we’ll do it together. step by step.

Continue reading “Openstack: How to debug neutron with pdb”