29
SDDC에서 NFV의 역할과 관리도구 정명훈 이사, 오픈소스컨설팅

SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

Embed Size (px)

DESCRIPTION

NFV position in SDDC and the open source project to manage NFV components

Citation preview

Page 1: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

SDDC에서 NFV의 역할과 관리도구

정명훈 이사, 오픈소스컨설팅

Page 2: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

2

세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA

Page 3: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

3

세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA

• Domain 2.0 (공급망 관리)

• 개방형 표준 네트워크 아키텍처로의 변화

• "트래픽 증가 + 수익 정체"

자료 출처: Ericsson, Internet Trends, KPCB

Page 4: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

4

세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA

• Domain 2.0 (공급망 관리)

• 개방형 표준 네트워크 아키텍처로의 변화

• "트래픽 증가 + 수익 정체"

• 11억 명의 사용자 (7.2억명 매일 로그인)

• 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요')

•"1명의 시스템 관리자가 20,000대의 서버 관리"

Page 5: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

5

세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA

• Domain 2.0 (공급망 관리)

• 개방형 표준 네트워크 아키텍처로의 변화

• "트래픽 증가 + 수익 정체"

• 11억 명의 사용자 (7.2억명 매일 로그인)

• 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요')

•"1명의 시스템 관리자가 20,000대의 서버 관리"

• 다양한 구글 서비스 (e.g. Youtube, Google Apps)

• 수 백만 대의 서버 + 세계 최대의 네트워크 트래픽

• "G-Scale (데이터센터 백본)"

Page 6: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

6

SDN/NFV USA Summit 키워드

Programmable

Orchestration

Convergence

Page 7: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

SDDC(Software Defined Data Center)란?

Page 8: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

8

이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이용해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의 가상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다.

SDDC(Software Defined Data Center란?)

자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터

Page 9: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

9

이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이용해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의가상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다.

SDDC(Software Defined Data Center란?)

자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터

Page 10: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

10

네트워크 가상화

자료 출처: Hype Cycle 2014, Gartner

Page 11: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

11

NFV(Network Function Virtualization)

상단 그림 출처: Virtual Cloud Networking, AT&T

Virtualization (RHEV, Vmware, Xen, KVM, …)

가상 라우터 가상 파이어월 가상 VPN 가상 스위치 가상 NAT

Page 12: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

12

ETSI(European Telecommunications Standards Institute) NFV 정의

자료 출처: ETSI GS NFV 002 V1.1.1, 2013. 10

(NFV Infrastructure)

Page 13: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

NFV(VNF, NFVI) 관리

Athena Spider 공개SW 프로젝트

Page 14: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

14

Athena Spider 프로젝트 개요

Page 15: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

15

NFV 관리 기능 요구사항

Page 16: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

16

공개SW 기반 네트워크 가상화(NFV) 관리 솔루션

소스 Repository https://github.com/OpenSourceConsulting/athena-spider

Python 언어 기반

시스템 제어에 적합 (Fabric SSH 등)

로그 Parsing 등 관리 자동화 유리

JSON 기반 REST API 서버 개발 용이

CollectD + Graphite 모니터링 프레임워크

안정적이고 빠른 통합 모니터링 프레임워크

다양한 플러그인 통해 확장 용이

FogBugz Issue Tracking + Jenkins 빌드 + Python Coverage

Athena Spider 공개SW 프로젝트 주요 내용

Page 17: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

17

Athena Spider 아키텍처

Athena Spider Controller

collectd daemon

NFV Appliance

TCP(2003)

Graphite(Python)

Carbon

Python (Django/Flask)RESTful API

Console

Management Console

Sencha Architect

ExtJS MVC

TCP(80)

Controller

Version Controller Fabric (SSH)

SSH DaemonSSH(22)

plu

gin

plu

gin

plu

gin

plu

gin

OS system resources

NIC and network usage

Vyatta service status

Whisper(RRD like)

WebApp

(Flask/

Django)

gunicorn

WSGI

Config(JSON/CouchDB)

TCP(2003)

Component Function Description

Management Console• 사용자를 위한 관리 콘솔• Whisper(RRD like)에 저장된 데이터를 REST API로 받아 ExtJS로 렌더링 하거나Graphite가 직접 렌더링한 결과를 이미지로 화면에 포함

ExtJS, Sencha

Athena Spider Controller(API Server)

• Configuration(JSON 포맷으로 저장) 관리• Lib-vert를 통해 KVM Manager을, SSH를 통해 NFV Appliance 제어• collectd에서 수집한 데이터(Whisper)를 JSON으로 변환하여 REST로 서비스로 제공

Python Flask/Django

Graphite & CollectD• collectd: 시스템 리소스, NIC 상태, Vyatta 정보를 주기적으로 읽어 Controller로 수집• Graphite: collectd가 보낸 데이터를 Carbon을 통해 Whisper(RRD)에 저장하고 결과를그래프로 렌더링

gunicorn을 통해 WSGI 서비스

KVM Manager

Lib-vertSSH(22)

Page 18: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

18

Athena Spider 주요 화면 및 기능

신규 NFV VM

Provisioning

VM Host 관리

Page 19: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

19

초기 NFV 장비(VM) Provisioning 과정

/etc/rc.local

/etc/spider/init.sh

다음 정보 수집

Ifconfig –a

netstat –nr

vbash –version

uname -a

Spider Controller

/vmreg endpointcurl –X POST

VM의 NIC와Mac Addr 구함

VM(Vyatta) Controller

KVM Host

KVM Host가 가지고있는 VM들의 Mac Addr

과 비교

virsh domiflist

모든 VM 들의Mac Addr 중에서 찾아야 함

Host 정보는 동적으로 변경 가능http://spider-controller:5001/vmreg

VM 초기화 작업

(initVM, Case 378)

원격에서 스크립트실행할 환경 생성

NIC1

NIC2

NIC3

NIC4

통신 가능한 NIC

찾기(Case 378)

Repository 등록 부분은

Case 385 참고 !!!!

Page 20: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

20

Athena Spider 주요 화면 및 기능

KVM

Host 및

NFV VM

목록 관리

개별

VM들의

주요 리소스

모니터링

NIC 및 기간 별 네트워크

트래픽 모니터링

Page 21: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

21

Athena Spider 주요 화면 및 기능

NIC, Bonding 기본 자원 관리

Routing, NAT, DHCP 등 NFV 기능 관리

Page 22: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

22

상세 요구사항 – NFV Management Topology View

NFV(KVM)

NFV(KVM)

b1 b1

bond0: 외부망 (eth0~1)

bond1: 내부망 (eth2~3)

백본

10.10.10.x10.10.20.x

Controller(KVM)

b1

WAS(KVM)

WEB(KVM)

DB(KVM)

내부 관리 망

b0 b0

라우팅

라우팅

b0 b0 b0

파이어월 규칙

• WEB WAS (80/443)

• WAS DB (1521)KVM Host KVM Host

K K KKVM Host

외부 망

관리포탈

(브라우저)

• 라우팅 테이블 직접 생성

• NAT 구성

• 파이어월 규칙 직접 생성

• NIC 추가 및 bonding 구성

• 선 연결 (또는 IP 대역으로 확인)

Page 23: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

23

동적 아키텍처 – VM(NFV, KVM) 관리 – 모니터링

Controller(CentOS)

NFV Appliance #2

KVM ManagerKVM Host #1

KVM Host #2KVM Manager

NFV Appliance #1

NFV Appliance #4

NFV Appliance #3

Init Script CollectD

Init Script CollectD

Init Script CollectD

Init Script CollectD

Init Script CollectD

Init Script CollectD

REST Svr

Fabric

관리포탈

(브라우저)

관리자

(2) Whisper(Graphite

자체 DB)에 저장

Whisper(Graphite)

(1) CollectD 데몬

주기적으로 모니터링

정보 전송 (TCP/UDP)

(3) 관리포탈 통한

모니터링 정보 조회

Page 24: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

24

모니터링 프레임워크: graphite-collectd details

graphiate란?

확장성이 좋은 실시간 시계열 데이터(시간+수치) 그래픽 시스템. Python으로 작성

- 노드 추가로 쉽게 처리 및 저장 용량 증설 가능

수집된 데이터들을 이름 규칙에 따라 트리 형태로 관리 (다수의 모니터링 정보 관리 용이)

데이터 수집 처리를 위한 백엔드 컴포넌트

- carbon: 수집된 데이터를 받아 캐시에 저장한 후, 실시간 그래프 시스템으로 보내고 디스크에도 저장

- whisper: RRD(Round-Robin DB)와 유사한 개념의 고정 크기 DB. 빠르고 수치 데이터 저장에 적합

Python(Django) 기반의 프런트엔드: Graphite Webapp

실시간 성능

Carbon에서 캐시 기능을 통해 스토리지에 바로 저장할 수 없을 정도로 대용량도 처리 가능

캐시에 저장된 데이터를 바로 화면에 표시하기 때문에 실시간 표시 가능

데이터 저장

수 일부터 수 년까지 저장 공간이 허락하는 한, 저장 기간을 자유롭게 지정 가능하고 과거 데이터 조회 가능

다양한 툴 연동

collectd 등과 같은 모니터링 정보 수집 툴, 그래프를 대시보드 형태로 표현할 수 있는Visualization Tool과 연동 가능

https://graphite.readthedocs.org/en/latest/tools.html

그래프 표시

단순한 그래프뿐만 아니라 여러 모니터링 정보를같이 보거나, 함수를 사용하여 가공된 결과를표시할 수 있음http://graphite.readthedocs.org/en/latest/functions.html

24

Page 25: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

25

모니터링 프레임워크: graphite-collectd details

25

표시할 구간(날짜/시간) 지정 최근 데이터 기준으

로 지정

표시할 정보에 다양한 함수 지정복수 정보를 한꺼번에 지정 가능

대상 서버, 리소스 종류, 상세 정보를 일정한 이름 규칙에 의해 트리구조로 분류할 수 있음

브라우저에서 URL 파라미터 형식API 지원

Page 26: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

26

향후 로드맵

관리/모니터링

관리자 1명 당"수 백대"

현재

• VM Host 관리

• NFV VM 관리

• NFV VM 자동 Provisioning

• NFV VM 리소스 관리

• NVF 기능 제어

• 대시보드 모니터링을 통한

센터 별 통합 View

• 확장 가능한 프레임워크

기반 대규모 시스템

모니터링

분석/경고/스케줄

관리자 1명 당"수 천대"

단기

• 빅데이터 기반 로그 분석

• Fast Data Discovery

기능(ELK 스택 활용)을 통해

편리하고 빠른 문제 탐지

및 원인 분석

• 특정 상황(조건) 발생 시

관리자에게 경고

• 스케줄링 및 스크립트

템플릿 기능을 통해 관리

작업 프로세스 화

• 기존 모니터링 툴과 통합

자동화/머신러닝

관리자 1명 당"수 만대"

중장기

• 분석된 데이터에 대한

머신러닝 기법을 통한 자동

대응 기능

• Auto-Scaling

• NFV 구성에 대한

Optimization 및 Advice

• SDN 및 클라우드(오픈스택

등) 프레임워크와 통합

Page 27: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

결론 및 요약

Page 28: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

28

변화의 거대한 물결

클라우드

가상화

SDN, NFV

SDDC, …

You Are Here !!!!

Page 29: SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)

29

SDDC, NFV 관리 시스템 – Athena Spider

Just Do It !!

Let's Start !!