I attended "Online MidoNet Network Virtualization Meetup" on last 09 Dec (URL: http://www.meetup.com/Online-MidoNet-Meetup/). This article briefly talks about this webinar and my experiences installing Midostack.

Midonet from Midokura is designed to provide the following network functionalities by placing a network virtualization layer between cloud management platform layer (e.g., OpenStack) and Hypervisor layer (e.g., KVM).

 - Logical Switching: decoupling Layer 2 and Layer 3 in physical networks

 - Logical Routing: supporting routers in virtual networks

 - Logical Firewall: kernel integrated, high performance, distributed firewall

 - Logical Layer 4 Load Balancer: application load balancing in software

 - API: integrating with cloud management platforms using RESTful API

Midonet is a open source following Apache 2 license, aiming at open, and user- & vendor-neutrality for production network.

According to Midokura, Midonet implemented functionalities in a Kernel level and interacts multiple hosts with MidoNet agents, so creating and managing logical topology such as overlay network are easier.

Midonet chose a distributed model, not a centralized model to address failures (e.g., SPOF, active/stand-by failover), scalability, and network efficiency issues.

Midostack is degigned to experience Midonet with OpenStack, a open source cloud management platform. When you install Midostack, DevStack is automatically downloaded and executed, so Midostack is for Midonet open source contributors and the people who want to learn Midonet. Currently, Micostack only supports Ubuntu 14.04 Linux distribution, and when you want to deploy Midonet for production environment, Packstack RDO running in CentOS or RHEL7 is recommended (URL: https://openstack.redhat.com/MidoNet_integration). It operates with OpenStack Icehouse release.

Also, more details on Midonet and "how to contribute to Midonet" were well explained in that Webinar. I think some slides will be open soon.

I have been so curious how Midostack runs OpenStack with DevStack scripts. So, I installed Midostack and executed several midonet-cli commands. The followings are my basic configuration to install Midostack.

- Virtualization platform I used: VirtualBox 4.3

- OS: Ubuntu 14.04 LTS (64 bit)

- Basic configuration: 8GB RAM, dynamically allocated disk with 50GB, NAT configuration

(Midostack by default assumes that the public network range is If you want to test network functionalities, please configure some setting files before installing Midostack, or please configure proper network settings in VirtualBox.)

It is easy. You can just input the following commands, according to http://www.midonet.org/#quickstart, with a few assumptions:

- Your Ubuntu 14.04 should be up-to-date. (If not, please execute 'sudo apt-get update', 'sudo apt-get upgrade', 'sudo apt-get dist-upgrade', and 'sudo reboot'.)

- You need to install 'git'. To install git, please execute 'sudo apt-get install git'.)

 $ git clone http://github.com/midonet/midostack

 $ cd 

 $ ./midonet_stack.sh

After executing those commands, the latest source codes of Midonet, DevStack, and OpenStack components are downloaded, installed, and some basic logical routers used by Midonet will be successfully configured.

(About two weeks ago, I needed to install the latest protobuf version, but now it seems that it has been resolved when you install Midostack using the latest scripts from git.)

But, unfortunately, my installation failed when creating a logical router after installing DevStack. I asked to IRC community, and one guy gave me a solution: 'execute ./midonet_unstack.sh and ./midonet_stack.sh', and after then it works very well! (Thanks, tfukushima!)

Successfully installed similar to DevStack! with some additional stuff related to Midonet.

Horizon: by default, public network has been created. I created one VM instance.

The following figure illustrates my execution of midonet-cli console. Using midonet-cli, I can check tenant lists in OpenStack. Also, I can check lists of logical routers, their ports, hosts, and chains for pre-routing and post-routing for routers.

It seems that I can experience more if I configure Midostack with multi-nodes. I simply discussed it to IRC, and a guy highly recommended me to configure multi-node environment with Packstack RDO. Please just refer to this information (This information might be very helpful for some guys who want to configure midonet with multi-node environment I think.)



- Slides from "Online MidoNet Network Virtualization Meetup" (http://www.meetup.com/Online-MidoNet-Meetup/)


- Midonet IRC!

Posted by Ian Y.