approaches to enable the ospf protocol in apache cloudstack

21
OSPF protocol in CloudStack Marco Sinhoreli Consultant Manager [email protected] Twitter: @msinhore

Upload: marco-sinhoreli

Post on 15-Apr-2017

451 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Approaches to enable the OSPF protocol in Apache CloudStack

OSPF protocol in CloudStackMarco Sinhoreli

Consultant [email protected]

Twitter: @msinhore

Page 2: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Consultant Manager at ShapeBlue Specialise in….

Designing and deploying enterprise and public clouds

CloudStack Brazil Community Chairman

Designed Clouds USP, Globo.com and many others in Brazil

CloudStack Committer Director of CSA Brazil Chapter

About Me

#CCCEU

Page 3: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

About ShapeBlue Introduction to the OSPF Protocol How it works?

Network Design The routing software suite Quagga

Then… why integrate a dynamic routing protocol? Scope Use Case UI Workflow

References

OSPF protocol on CloudStack

#CCCEU

Page 4: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

“ShapeBlue are expert builders of public & private clouds. They are the leading global

Apache CloudStack integrator & consultancy”

…and we’re hiring!

About ShapeBlue

#CCCEU

Page 5: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14#CCCEU

Page 6: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

OSPF – Open Shortest Path First Routing protocol for Internet (IP) protocol networks IPG (Interior Gateway Protocol) and falls into the group of

interior routing protocols Uses a link state routing algorithm Uses a single Anonymous System (AS) OSPFv2 referenced in RFC2328 for IPv4 OSPFv3 referenced in RFC5340 for IPv6

Introduction to the OSPF Protocol

#CCCEU

Page 7: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

OSPF Area 1

How OSPF works?

Routing table:192.168.0.0/24

local192.168.1.0/24 via

R2192.168.2.0/24 via

R3

Routing table:192.168.1.0/24

local192.168.0.0/24 via

R1192.168.2.0/25 via

R3

Routing table:192.168.2.0/24

local192.168.0.0/24 via

R1192.168.1.0/24 via

R2

R1

R3 R2

#CCCEU

Page 8: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Quagga Fork of GNU Zebra Supports all popular Linux distributions and Unix derivatives Supports protocols such as RIPv1, RIPv2, RIPng, OSPFv2, OSPFv3, IS-IS,

BGP-4, and BGP-4+ Quagga is a collection of several daemons that work together to build

the routing table A system with Quagga installed acts as a dedicated router Exchanges routing information with other routers using routing

protocols Uses this information to update the kernel routing Changes dynamically the configuration The user may view routing table information from the Quagga CLI

#CCCEU

Page 9: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Quagga Architecture

OSPFD BGPD RIPD Zebra

Unix Kernel routing table

#CCCEU

Page 10: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Config files are generally found in: /etc/quagga/*.conf

Each of the daemons has its own config file. For example, OSPFv2’s default config file name is: /etc/quagga/ospfd.conf

Quagga setup

#CCCEU

Page 11: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

interface eth0 ip ospf authentication message-digest ip ospf message-digest-key 1 md5 ospfrouter ospf ospf router-id 200.0.0.11 log-adjacency-changes redistribute connected passive-interface default no passive-interface eth0 network 200.0.0.0/24 area 0.0.0.0 area 0.0.0.0 authentication message-digest

ospfd.conf example

#CCCEU

Page 12: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Support to the OSPF Version 2 protocol to announce IPv4 routes using Quagga routing software (daemon ospfd)

Support to the OSPF Version 3 protocol to announce IPv6 routes using Quagga routing software (daemon ospf6d)

Create a specific network offering to support the OSPF protocol in the VPC-VR Enable routing to guest networks behind VPC-VR without NATing Support to the services:

DHCP DNS Network ACL (iptables, ip6tables) Load Balancing (HAproxy) Password reset

Scope

#CCCEU

Page 13: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Other networ

k

Use caseOther networ

k

Tier1192.1684.0/

24

VM VM VM

VM VM VM

VM VM VM

VM VM VM

Super CIDR: 192.168.4.0/22

Super CIDR: 192.168.8.0/22

#CCCEU

OSPF Area 1Transit CIDR:

192.168.0.0/22VR1

VR2

Core

Tier2192.168.5.0

/24Tier3192.168.6.0

/24 Tier1192.168.8.0

/24Tier2192.168.9.0

/24Tier3

192.168.10.0/24

Page 14: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

WorkflowAdmin user:

Users:

#CCCEU

Page 15: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

UI mock (Admin User)1 – Configure the Public Network for OSPF Transit Area

#CCCEU

Page 16: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

UI mock (Admin User)2 – Add Super-CIDRs that will be associated to Guest OSPF VPCs Networks

#CCCEU

Page 17: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

UI mock (Admin User)3 – Add a new VPC Network Offering with OSPF dynamic routing

#CCCEU

Page 18: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

UI mock (Users)1 – Add a new VPC Routed Network

#CCCEU

Page 19: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

http://www.nongnu.org/quagga/ https://tools.ietf.org/html/rfc2328 https://tools.ietf.org/html/rfc5340 https://tools.ietf.org/html/rfc3531 https://tools.ietf.org/html/rfc2460 https://cwiki.apache.org/confluence/display/CLOUDSTACK/

IPv6+in+VPC+Router http://en.wikipedia.org/wiki/Open_Shortest_Path_First

References

#CCCEU

Page 20: Approaches to enable the OSPF protocol in Apache CloudStack

@shapeblue #ccceu14

Questions?

#CCCEU

Page 21: Approaches to enable the OSPF protocol in Apache CloudStack

OSPF protocol in CloudStackMarco Sinhoreli

Consultant [email protected]

Twitter: @msinhore