openstack networking

31
2015 2 nd OpenStack Study OpenStack Networking * Date : 2015. 07. 28 * Venue : MERITZ TOWER D2 STARTUP FACTORY * Presenter : HYO SUNG, KANG * Blog URL : http://blog.naver.com/love_tolty * E-Mail : [email protected] * Networking Lab. Department of Computer Engineering at Kyung Hee University 1

Upload: openstack-korea-community

Post on 14-Aug-2015

986 views

Category:

Technology


6 download

TRANSCRIPT

Page 1: OpenStack Networking

2015 2nd OpenStack Study OpenStack Networking

* Date : 2015. 07. 28 * Venue : MERITZ TOWER D2 STARTUP FACTORY * Presenter : HYO SUNG, KANG * Blog URL : http://blog.naver.com/love_tolty * E-Mail : [email protected] * Networking Lab. Department of Computer Engineering at Kyung Hee University

1

Page 2: OpenStack Networking

1. OpenStack Networking1. Neutron & Nova Network2. Neutron 이 있는데 왜 Nova-Network 인가 ?

2. Nova Network1. Nova Network 란 무엇인가 ?2. Nova Network 구성모델 소개

3. Neutron1. Nova Network 에서 Neutron 으로의 변화2. 물리적으로 바라 본 Neutron 의 구조3. 논리적으로 바라 본 Neutron 의 구조4. 그래서 Neutron 이란 무엇인가 ??5. OVS Plugin / VLAN 을 통한 Neutron 구성6. VM 에서 외부망 ( 인터넷 ) 으로 패킷전달 과정7. 외부망 ( 인터넷 ) 에서 VM 오로 패킷전달 과정

Index

2

Page 3: OpenStack Networking

1. OPENSTACK NETWORKING?! 1.1 Neutron & Nova-Network

3

Fig 1. OpenStack Official Documentation( 출처 : http://docs.openstack.org/kilo/install-guide/install/apt/content/) 

Page 4: OpenStack Networking

1. OPENSTACK NETWORKING?! 1.2 Neutron 이 있는데 왜 Nova-Network 인가 ??

4

Fig 2. Deprecation of Nova Network( 출처 : http://docs.openstack.org/openstack-ops/content/nova-network-deprecation.html ) 

Page 5: OpenStack Networking

2. NOVA NETWORK 2.1 Nova Network 란 무엇인가 ?

5

Fig 3. Nova-Network 를 이용한 OpenStack Network

Page 6: OpenStack Networking

2. NOVA NETWORK

6

Fig 4. Compute Node 에서 Flat Network 구성모델

2.2 Nova-Network 의 구성모델 소개 – (1) Flat Network

Page 7: OpenStack Networking

2. NOVA NETWORK

7

2.2 Nova-Network 의 구성모델 소개 – (1) Flat Network

문제점 내용

수동적인 인스턴스 (VM) 의 IP 할당

인스턴스를 그냥 생성한 경우에는 IP 가 할당되지 않는다 . 사용자가 직접 Nova API 를 통해 IP Pool 을 생성한 후에서야 IP 할당이 가능하다 .

Bridge 의 네트워크 연결문제

모든 인스턴스가 하나의 Bridge 에 연결되어 있어 Bridge 에 네트워크 연결 문제가 발생할 경우 전체 인스턴스의 내부 , 외부망 연결에도 문제가 발생 할 수 있다 .

Tenant 간 Traffic 분리의 어려움

Tenant 별 인스턴스가 모두 하나의 bridge 에 연결되어 Tenant 간에 격리 (Isolation) 이 되지 않는 문제가 발생한다 .

Page 8: OpenStack Networking

2. NOVA NETWORK

8

2.2 Nova-Network 의 구성모델 소개 – (2) Flat DHCP Net-work

Fig 5. Compute Node 에서 Flat DHCP Network 구성모델

Page 9: OpenStack Networking

2. NOVA NETWORK

9

2.2 Nova-Network 의 구성모델 소개 – (2) Flat DHCP Net-work

내용

개선점 Dnsmasq 를 통해 Flat Network 에서 IP Pool 을 통한 수동적인 IP 할당 문제를 해결하였다

문제점

여전히 Flat Network 와 같이 하나의 Bridge 에 모든 인스턴스가 연결되어 Bridge 의 네트워크 연결 문제 발생시 전체 인스턴스의 네트워크에도 영향을 미친다 .

Tenant 별 인스턴스가 모두 하나의 bridge 에 연결되어 Tenant 간에 격리 (Isolation) 이 되지 않는 문제가 발생한다 .

Page 10: OpenStack Networking

2. NOVA NETWORK

10

2.2 Nova-Network 의 구성모델 소개 – (3) VLAN Network

Fig 6. Compute Node 에서 VLAN Network 구성모델

Page 11: OpenStack Networking

2. NOVA NETWORK

11

What is VLAN??

장점 내용네트워크 리소스 보안강화 같은 네트워크 망이라도 다른 VLAN 그룹이라면 통신은 어렵다 .

비용절감의 효과 추가장비 ( 스위치 , 라우터 등 ) 없이도 충분히 독립된 네트워크 구성이 가능하다 .

손쉬운 네트워크 그룹이동 하나의 스위치에서 간단한 설정만으로 네트워크 관리자가 네트워크 그룹을 옮길 때 장비이동 등의 물리적인 소요시간과 노력이 필요하지만 VLAN 구성에서는 간단한 설정만으로 그룹이동 가능하다 .

불필요한 트래픽 감소 VLAN 은 서로다른 네트워크 구성이므로 브로드캐스트 패킷이 다른 VLAN 으로 전송되자 않아 세분화된 브로드케스트 도메인을 나눌수 있기 때문에 불필요한 트래픽을 줄일 수 있다 .

Page 12: OpenStack Networking

2. NOVA NETWORK

12

2.2 Nova-Network 의 구성모델 소개 – (3) VLAN Network

내용

개선점

Tenant 별로 VLAN 으로 구분함으로써 Tenant 간 Traffic 구분이 가능해졌다 . 클라우드 서비스에서 isolation 이 구현된 것이다 .

bridge 가 여러개로 구성되어 하나의 bridge 에 네트워크 연결 오류가 발생하더라도 다른 bridge 의 인스턴스에는 별다른 영향을 미치지 않는다 .

Page 13: OpenStack Networking

2. NOVA NETWORK

13

2.3 실제 클라우드에 적용된 VLAN Network

Fig 7. 실제 클라우드에 적용된 VLAN Network 구성모델

Page 14: OpenStack Networking

3. NEUTRON

14

3.1 Nova-Network 에서 Neutron 으로의 변화

Neutron 의 등장요인

1) Nova-Network 의 제한적인 범위의 Floating IP 로 인해 대규모 클라우드 서비스에 적용의 어렵다 .

2) Nova-Network 의 경우 네트워크의 형태가 고정되어 특정 대역폭을 이용하는 네트워크 서비스를 적용할 수 없다 .

3) Compute Node 를 확장함에 따라 데이터베이스에 직접 접속해야한다 . 이로인해 데이터베이스의 부하가 올 수 있다 .

4) 뿐만아니라 각 Compute Node 들의 데이터베이스 접속 권한에 따른 보안적 문제가 발생 할 수 있다 .

Page 15: OpenStack Networking

3. NEUTRON

15

3.2 물리적으로 바라 본 Neutron 의 구조

Fig 8. Neutron 을 이용한 OpenStack Networking

Page 16: OpenStack Networking

3. NEUTRON

16

3.3 논리적으로 바라 본 Neutron 의 구조

Fig 9. 논리적으로 바라본 Neutron Networking( 본 이미지는 KRnet 2015-Canonical 심장훈 발표자님의 발표자료 참고하여 다시 그린 이미지입니다 .)

Page 17: OpenStack Networking

3. NEUTRON

17

What is Tunnel-ing??

질문 내용

Tunneling 이란 ?? 라우터와 라우터 , 네트워크와 네트워크 사이에 논리적인 경로를 통하여 연결하는 방법으로 대표적으로는 GRE 프로토콜이 있다 .

GRE Tunneling 이란 ??

Generic Routing Encapsulation 의 약자로 Cisco( 社 ) 에서 개발한 대표적인 Tunneling 프로토콜이다 . 주로 가상 네트워크 (VPN) 를 구축하는데 사용된다 . 복잡한 가상 네트워크의 경로를 거치지 않고 독자적으로 네트워크를 가로질러서 종단과 종단을 연결하기 위해 개발 되었다 .

Overlay Network 란 ??

물리네트워크 위해 성립되는 가상의 네트워크를 의미한다 . Overlay

Network 안의 노드는 가상 , 논리적 링크로 연결 될 수 있으며 각 링크는 네트워크 안에서 많은 물리적 링크를 통하지만 그렇다고 물리적 링크를 고려하지는 않는다 . 예를 들어 P2P 의 경우 Peer to Peer 간의 통신을 위해여러 물리적 경로를 거치지만 Peer 와 Peer 간의 데이터 패킷의 출발 / 도착 연결만 고려하므로 물리적 경로를 고려하지 않는다 .

Page 18: OpenStack Networking

3. NEUTRON

18

3.4 그래서 Neutron 이란 무엇인가 ?

Fig 10. Neutron 의 동작과정( 본 이미지는 KRnet 2015-Canonical 심장훈 발표자님의 발표자료 참고하여 다시 그린 이미지입니다 .)

Page 19: OpenStack Networking

3. NEUTRON

19

Neutron 의 Plugin

플러그인 해당 URL

Big Switch Plug-in(Floodlight REST

Proxy)

http://www.openflowhub.org/display/floodlightcontroller/Neutron+REST+Proxy+Plugin

Brocade Plug-in http://docs.openstack.org/admin-guide-cloud/content/ch_networking.html#networking-services

Linux Bridge Plug-in 

http://wiki.openstack.org/Neutron-Linux-Bridge-Plugin 

OpenvSwitch Plug-in

http://docs.openstack.org/havana/install-guide/install/apt/content/concepts-neutron.openvswitch.html

VMware NSX Plug-in

http://www.vmware.com/products/nsx?src=www_bestmatch_us

( 장현정 작가님의 “오픈스택을 다루는 기술”서적을 참고하였음을 밝힙니다 .)

Page 20: OpenStack Networking

3. NEUTRON

20

3.5 OVS Plugin / VLAN 을 통한 Neutron 구성

Fig 11. Open vSwitch Plugin/ VLAN 모드를 이용한 Neutron Network 구성(1 개의 Tenant, 1 개의 가상 Router, 2 개의 Subnet, 3 개의 VM.)

Page 21: OpenStack Networking

3. NEUTRON

21

What is OVS??

Fig 12. Open vSwitch 의 구성요소 (a) 및 동작과정으로 본 구조 (b) 

Page 22: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

22

Page 23: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

23

Page 24: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

24

Page 25: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

25

Page 26: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

26

Page 27: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

27

Page 28: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

28

Page 29: OpenStack Networking

3. NEUTRON 3.6 VM 에서 외부망 ( 인터넷 ) 으로 패킷전달과정

29

Page 30: OpenStack Networking

3. NEUTRON 3.7 외부망 ( 인터넷 ) 에서 VM 으로 패킷전달과정

30

Page 31: OpenStack Networking

THANK YOU

31