Network Namespace Provisioning
I’d written previously on how to use OpenContrail with Linux network namespaces. I managed to find the cycles to put together a configuration wrapper that can be used as a pre-start and post-stop scripts when starting a daemon out of init.d. The scripts are in a python package available in github.
As in the previous post, the test application i used was the apache web server. But most Linux services follow a rather similar pattern when it comes to their init scripts.
I started by installing two bare metal servers with the OpenContrail community packages; one server running the configuration service and both of them running both control-node and compute-node components.
For this exercise, the objective was to be able to select the routing for the outbound traffic for a specific application. For this purpose, I started by creating two virtual-networks, one used for incoming traffic and separate one to be used for outbound traffic for a specific application. The script network_manage.py can be used for this purpose; it can create and delete virtual-networks as well as add and delete external route targets.
After creating an inbound and app-specific outbound networks, one can use the netns-daemon-start script to create Continue reading