+ All Categories
Home > Engineering > Introduction to MidoNet

Introduction to MidoNet

Date post: 15-Jul-2015
Category:
Upload: taku-fukushima
View: 501 times
Download: 2 times
Share this document with a friend
Popular Tags:
28
Introduction to midonet Taku Fukushima
Transcript
Page 1: Introduction to MidoNet

Introduction to midonet

Taku Fukushima

Page 2: Introduction to MidoNet

Agenda

1. What is MidoNet?

2. Architecture

3. Community

4. Summary

Page 3: Introduction to MidoNet

What is MidoNet?

Page 4: Introduction to MidoNet

Why do we need MidoNet?• Demands for the virtualised networking

• Faster and more flexible provisioning

• Cloud IaaS requires virtualised networking

• Multi-tenancy

• Complete software-based solution

Page 5: Introduction to MidoNet

MidoNet Features• L2- L3 Logical Switching

• Logical Routing

• State-less and Stateful NAT

• Logical and distributed Firewall

• L4 Load Balancing

• BGP and its ECMP multiplexing

• GRE and VXLAN tunneling

Page 6: Introduction to MidoNet

MidoNet Features• OpenStack Neutron integration and MidoStack

• REST API

• VTEP support with OVSDB protocol

• Partial Docker integration

Page 7: Introduction to MidoNet

History of MidoNet (a dev’s perspective)

• Started with Midolman written in Python, OpenStack Austin, Open vSwitch (including userland)

• MidoNet 1.x

• Re-written with Java

• Scala was partially introduced

• Open-sourced in Nov, 2014 New!

• MidoNet 2.0 (WIP)

Page 8: Introduction to MidoNet
Page 9: Introduction to MidoNet

Architecture

Page 10: Introduction to MidoNet
Page 11: Introduction to MidoNet

Architecture Overview

Page 12: Introduction to MidoNet

Datapath control via Netlink by Midolman

NSDB NSDB

NSDB

Open vSwitch Datapath

IF IF

Interfaces on the hostIF

VM VM VM Midolman(MidoNet

agent)

Network

Flow Table

MidoNet APINova API

Horizon MidoNet CLI

Watch/modify

Add/remove flows

Neutron API

MidoNet Plugin

Host

Cache

Store virtual topology

information

Clients / Users

Nova compute

Page 13: Introduction to MidoNet

GRE/VXLAN Tunneling

NSDB NSDB

NSDB

PrivateNetwork

Host

Midolman

CacheDatapath

VM VM VM

Flow Table

Nova compute

MidoNet APINova API

Horizon MidoNet CLI

Neutron API

MidoNet Plugin

Clients / Users

Host

Midolman

CacheDatapath

VM VM VM

Flow Table

Nova compute

BGP Gateway

Midolman

Datapath

Flow Table

BGP Gateway

Midolman

Datapath

Flow Table

GRE/VXLAN Tunneling

Internet

Page 14: Introduction to MidoNet

NSDB and Cluster API

NSDB NSDB

NSDB

Open vSwitch Datapath

IF IF

Interfaces on the hostIF

VM VM VM Midolman(MidoNet

agent)

Network

Flow Table

MidoNet APINova API

Horizon MidoNet CLI

Watch/modify

Add/remove flows

Neutron API

MidoNet Plugin

Host

Cache

Store virtual topology

information

Clients / Users

Nova compute

NSDB and Cluster API

Page 15: Introduction to MidoNet

OpenStack integration and APIsNSDB NSDB

NSDB

Open vSwitch Datapath

IF IF

Interfaces on the hostIF

VM VM VM Midolman(MidoNet

agent)

Network

Flow Table

MidoNet APINova API

Horizon MidoNet CLI

Watch/modify

Add/remove flows

Neutron API

MidoNet Plugin

Host

Cache

Store virtual topology

information

Clients / Users

Nova compute

OpenStack integration

and MidoNet API

Page 16: Introduction to MidoNet

BGP with ECMP

NSDB NSDB

NSDB

PrivateNetwork

Host

Midolman

CacheDatapath

VM VM VM

Flow Table

Nova compute

MidoNet APINova API

Horizon MidoNet CLI

Neutron API

MidoNet Plugin

Clients / Users

Host

Midolman

CacheDatapath

VM VM VM

Flow Table

Nova compute

BGP Gateway

Midolman

Datapath

Flow Table

BGP Gateway

Midolman

Datapath

Flow Table

GRE/VXLAN Tunneling

Internet

Page 17: Introduction to MidoNet
Page 18: Introduction to MidoNet
Page 19: Introduction to MidoNet

Community

Page 20: Introduction to MidoNet

Entering MidoNet community• Slack (midonet.slack.com)

• Mailing list

• Midolman code walkthrough

• Code walk-through videos

• GerritHub

• Code review + CI with several tests

Page 21: Introduction to MidoNet

Documentation and help• Wiki

• wiki.midonet.org

• Documentations

• docs.midonet.org

• JIRA (Issue Tracker)

• https://midonet.atlassian.net/

Page 22: Introduction to MidoNet
Page 23: Introduction to MidoNet

http://lists.midonet.org/pipermail/midonet-dev/

Page 24: Introduction to MidoNet
Page 25: Introduction to MidoNet
Page 26: Introduction to MidoNet

Summary

Page 27: Introduction to MidoNet

MidoNet rocks• True distributed architecture

• Intelligence at the edge

• Open-sourced under Apache License v2

• Growing community and ecosystem

Page 28: Introduction to MidoNet

The end of slides. Any questions?


Recommended