Upload
-jerry-jeong
View
2.018
Download
2
Embed Size (px)
DESCRIPTION
NFV position in SDDC and the open source project to manage NFV components
Citation preview
SDDC에서 NFV의 역할과 관리도구
정명훈 이사, 오픈소스컨설팅
2
세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA
3
세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA
• Domain 2.0 (공급망 관리)
• 개방형 표준 네트워크 아키텍처로의 변화
• "트래픽 증가 + 수익 정체"
자료 출처: Ericsson, Internet Trends, KPCB
4
세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA
• Domain 2.0 (공급망 관리)
• 개방형 표준 네트워크 아키텍처로의 변화
• "트래픽 증가 + 수익 정체"
• 11억 명의 사용자 (7.2억명 매일 로그인)
• 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요')
•"1명의 시스템 관리자가 20,000대의 서버 관리"
5
세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA
• Domain 2.0 (공급망 관리)
• 개방형 표준 네트워크 아키텍처로의 변화
• "트래픽 증가 + 수익 정체"
• 11억 명의 사용자 (7.2억명 매일 로그인)
• 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요')
•"1명의 시스템 관리자가 20,000대의 서버 관리"
• 다양한 구글 서비스 (e.g. Youtube, Google Apps)
• 수 백만 대의 서버 + 세계 최대의 네트워크 트래픽
• "G-Scale (데이터센터 백본)"
6
SDN/NFV USA Summit 키워드
Programmable
Orchestration
Convergence
SDDC(Software Defined Data Center)란?
8
이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이용해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의 가상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다.
SDDC(Software Defined Data Center란?)
자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터
9
이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이용해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의가상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다.
SDDC(Software Defined Data Center란?)
자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터
10
네트워크 가상화
자료 출처: Hype Cycle 2014, Gartner
11
NFV(Network Function Virtualization)
상단 그림 출처: Virtual Cloud Networking, AT&T
Virtualization (RHEV, Vmware, Xen, KVM, …)
가상 라우터 가상 파이어월 가상 VPN 가상 스위치 가상 NAT
12
ETSI(European Telecommunications Standards Institute) NFV 정의
자료 출처: ETSI GS NFV 002 V1.1.1, 2013. 10
(NFV Infrastructure)
NFV(VNF, NFVI) 관리
Athena Spider 공개SW 프로젝트
14
Athena Spider 프로젝트 개요
15
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 프로젝트 주요 내용
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)
18
Athena Spider 주요 화면 및 기능
신규 NFV VM
Provisioning
VM Host 관리
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 참고 !!!!
20
Athena Spider 주요 화면 및 기능
KVM
Host 및
NFV VM
목록 관리
개별
VM들의
주요 리소스
모니터링
NIC 및 기간 별 네트워크
트래픽 모니터링
21
Athena Spider 주요 화면 및 기능
NIC, Bonding 기본 자원 관리
Routing, NAT, DHCP 등 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 대역으로 확인)
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) 관리포탈 통한
모니터링 정보 조회
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
25
모니터링 프레임워크: graphite-collectd details
25
표시할 구간(날짜/시간) 지정 최근 데이터 기준으
로 지정
표시할 정보에 다양한 함수 지정복수 정보를 한꺼번에 지정 가능
대상 서버, 리소스 종류, 상세 정보를 일정한 이름 규칙에 의해 트리구조로 분류할 수 있음
브라우저에서 URL 파라미터 형식API 지원
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 및 클라우드(오픈스택
등) 프레임워크와 통합
결론 및 요약
28
변화의 거대한 물결
클라우드
가상화
SDN, NFV
SDDC, …
You Are Here !!!!
29
SDDC, NFV 관리 시스템 – Athena Spider
Just Do It !!
Let's Start !!