limitation of cloud networking & eywa virtual network model for full ha and lb

Post on 03-Nov-2014

6 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

EYWA is Elastic Load-balancing & high-availablitY Wired network Architecture, Next generation architecture for IaaS.

TRANSCRIPT

Limitationof Cloud Networking

2014-02-04

Jung jung-in (call518@gmail.com)Jeong wook-jae (wjjung11@gmail.com)

SPOF & Bottleneckin External Traffic

SPOF & Bottleneck

SPOF & Bottleneck

External Traf-fic..

How?

Internet

?

SPOF & Bottleneck

One Virtual Routerper Tenant

Internet

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

One Virtual Routerper Tenant

Strange.....

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

When VM is in-crease...

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

When VM is in-crease...

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

When VM is in-crease...

Crash

SPOF & Bottleneck

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

Also Inbound...

Crash

SPOF & Bottleneck

Internal Traffic

External Traffic (NAT, LB)

SPOF & Bottleneck

Internet

Both In/Out...

Crash

SPOF & Bottleneck

Internal Traffic

External Traffic (NAT, LB)

There is no clear solution...

(in OpenStack, CloudStack..., Etc...)

in OpenStack

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

in OpenStack (Single Host)

nova-network Basic (Multiple NIC)

Controller

nova-network

br100(eth0)

Compute

nova-compute

br100(eth0)

Compute

nova-compute

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

SPOF &Bottleneck

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

Compute

nova-compute

Compute

nova-compute

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

10.0.0.3

10.0.0.11(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

10.0.0.3

10.0.0.11(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

10.0.0.3

10.0.0.11(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

but,....

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

10.0.0.3

10.0.0.11(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

10.0.0.3 10.0.0.11

(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Compute

nova-compute

Compute

nova-compute

nova-network nova-network

br100(eth0)

br100(eth0)

Virtual Network (e.g. 10.0.0.0/8)

10.0.0.3 10.0.0.11

(GW: 10.0.0.3)

10.0.0.4

10.0.0.12(GW: 10.0.0.4)

in OpenStack (Multiple Host)

Alternative: Multiple nova-network (per Com-pute Host)

eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

!!............

in CloudStack Using RVM(Router Virtual Machine) batter than OpenStack... but,… SPOF & Bottleneck is still….

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

Tenant B

Tenant A

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

Tenant B

Tenant A

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

Tenant B

Tenant A

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

Tenant B

Tenant A

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

Tenant B

Tenant A

Host Host Host

vnbr1002(eth0)

vnbr1002(eth0)

vnbr1002(eth0)

in CloudStack

vnbr1001(eth0)

vnbr1001(eth0)

vnbr1001(eth0)

Tenat-A Virtual Network (e.g. 10.0.0.0/8)

eth1 eth1 eth1

Physical Network (e.g. 222.122.156.0/24)

Tenat-B Virtual Network (e.g. 10.0.0.0/8)

Tenant-A's VR(10.0.0.1)

Tenant-B's VR(10.0.0.1)

A B BA

One VR per Tenant..But, Still SPOF & Bottleneck

Tenant B

Tenant A

to solve…

Solution of VR's SPOF & Bot-tleneck

Host Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA A AB

Tenant B

Tenant A

Solution of VR's SPOF & Bot-tleneck

Host Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA A AB

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

Tenant B

Tenant A

Solution of VR's SPOF & Bot-tleneck

Host Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA A AB

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1 GW: 10.0.0.1 GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA A AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1 GW: 10.0.0.1 GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

X

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

Host

Solution of VR's SPOF & Bot-tleneck

Host Host

br-B br-B br-Bbr-A br-A br-A

Private-NET A

Physical Network (e.g. 222.122.156.0/24)

Private-NET B

A B BA

A

AB

Selective

10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1 10.0.0.1

GW: 10.0.0.1 GW: 10.0.0.1

GW: 10.0.0.1

GW: 10.0.0.1GW: 10.0.0.1 GW: 10.0.0.1

Tenant B

Tenant A

EYWA

EYWA(Elastic load-balancing & high-availabilitY Wired network Architecture)

GltLab https://gitlab.com/call518/eywa-on-opennebula/wikis/home

PoC Demo http://goo.gl/wybYwU

2014-02-04

Jung jung-in (call518@gmail.com)Jeong wook-jae (wjjung11@gmail.com)

Two Physical Host: CA1, CA2

HA/LB Out-bound In-bound

Network Env. Public-IP Range : 172.21.18.0/24 Private-IP Range : 10.0.0.0/24

Out-bound

CA1 CA2

S/W (External)

Internet

S/W (Internal)

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VR1 (910)172.21.18.57

10.0.0.1

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VR1 (910)172.21.18.57

10.0.0.1

VM1(911)

10.0.0.24

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VR1 (910)172.21.18.57

10.0.0.1

VM1(911)

10.0.0.24

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VR1 (910)172.21.18.57

10.0.0.1

VM1(911)

VM2(912)

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VM1(911)

VM2(912)

VR1 (910)172.21.18.57

10.0.0.1

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VM1(911)

VM2(912)

VR2 (913)172.21.18.58

10.0.0.1

VR1 (910)172.21.18.57

10.0.0.1

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

google.com

S/W (Internal)

VM2(912)

VR2 (913)172.21.18.58

10.0.0.1

VR1 (910)172.21.18.57

10.0.0.1

VM1(911)

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

google.com

S/W (Internal)

VM2(912)

VR1 (910)172.21.18.57

10.0.0.1

VM1(911)

VR2 (913)172.21.18.58

10.0.0.1Crashed10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

google.com

S/W (Internal)

VM1(912)

VM2(913)

VR1 (911)172.21.18.57

10.0.0.1

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

google.com

S/W (Internal)

VM1(911)

VM2(912)

VR1 (910)172.21.18.57

10.0.0.1VR3 (914)172.21.18.58

10.0.0.1Added

10.0.0.24 10.0.0.25

CA1 CA2

S/W (External)

google.com

S/W (Internal)

VM1(911)

VM2(912)

VR3 (914)172.21.18.58

10.0.0.1

VR1 (910)172.21.18.57

10.0.0.1

10.0.0.24 10.0.0.25

Added

Load-Balancing(In-bound)

CA1 CA2

S/W (External)

Internet

S/W (Internal)

VM2(912)

VR3 (914)172.21.18.58:8080

VR1 (910)172.21.18.57:8080

VM1(911)

10.0.0.25:8010.0.0.24:80

CA1 CA2

S/W (External)

S/W (Internal)

Internet

VM1(911)

VM2(912)

10.0.0.25:8010.0.0.24:80

VR1 (910)172.21.18.57:8080

VR3 (914)172.21.18.58:8080

CA1 CA2

S/W (External)

S/W (Internal)

Internet

VM1(911)

VM2(912)

10.0.0.25:8010.0.0.24:80

VR3 (914)172.21.18.58:8080

VR1 (910)172.21.18.57:8080

CA1 CA2

S/W (External)

S/W (Internal)

Internet

VM1(911)

VM2(912)

DNS-RoundRobin

10.0.0.25:8010.0.0.24:80

VR3 (914)172.21.18.58:8080

VR1 (910)172.21.18.57:8080

CA1 CA2

S/W (External)

S/W (Internal)

Internet

VM1(911)

VM2(912)

DNS-RoundRobin

VR3 (914)172.21.18.58:8080

Crashed

10.0.0.25:8010.0.0.24:80

VR1 (910)172.21.18.57:8080

CA1 CA2

S/W (External)

S/W (Internal)

Internet

VM1(911)

VM2(912)

DNS-RoundRobin

10.0.0.25:8010.0.0.24:80

VR1 (910)172.21.18.57:8080

ArchitectureOverview

VSe (Common)

VR-A-1

111.2.3.11

10.0.0.1/8

VSi A

vport-A

VM

VSe (Common) VSe (Common)

Switch (Public Net.)

Switch (Private Net.)

VR-A-2

111.2.3.12

10.0.0.1/8

VR-B-1

111.2.3.21

10.0.0.1/8

VSi A

vport-A

VM

VSi B

vport-B

VM

vtep-A vtep-A vtep-B

vnet0

peth0

vnet0

peth0

vnet0

peth0

eth0

eth1

eth0

eth1

eth0

eth1

vnet1

vnet2

peth1 peth1

VSi A

vport-A

VM

vtep-A

Tenant A

Tenant B

VR-B-2

VSi B

vport-B

VM

eth0

eth1

111.2.3.22

10.0.0.1/8ControllerController ControllerController

Orphan NormalNormal Normal

eth0eth0

vnet1

eth0

vnet3

eth0

vnet1

eth0

vnet2

peth1

vtep-B

END

top related