Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

9,162 views

Published on

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

Published in: Technology
  • Be the first to comment

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

  1. 1. SDDC에서 NFV의 역할과 관리도구 정명훈 이사, 오픈소스컨설팅
  2. 2. 세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA 2
  3. 3. 세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA • Domain 2.0 (공급망 관리) • 개방형 표준 네트워크 아키텍처로의 변화 • "트래픽 증가 + 수익 정체" 3 자료 출처: Ericsson, Internet Trends, KPCB
  4. 4. 세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA • Domain 2.0 (공급망 관리) • 개방형 표준 네트워크 아키텍처로의 변화 • "트래픽 증가 + 수익 정체" • 11억 명의 사용자 (7.2억명 매일 로그인) • 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요') •"1명의 시스템 관리자가 20,000대의 서버 관리" 4
  5. 5. 세상 변하는 이야기... 2014년 10월... Dallas, Texas, USA • Domain 2.0 (공급망 관리) • 개방형 표준 네트워크 아키텍처로의 변화 • "트래픽 증가 + 수익 정체" • 11억 명의 사용자 (7.2억명 매일 로그인) • 매일 47억 개 컨텐츠 추가 (45억 번의 '좋아요') •"1명의 시스템 관리자가 20,000대의 서버 관리" • 다양한 구글 서비스 (e.g. Youtube, Google Apps) • 수 백만 대의 서버 + 세계 최대의 네트워크 트래픽 • "G-Scale (데이터센터 백본)" 5
  6. 6. 6 SDN/NFV USA Summit 키워드 Programmable Orchestration Convergence
  7. 7. SDDC(Software Defined Data Center)란?
  8. 8. SDDC(Software Defined Data Center란?) 이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인 SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프 트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러 한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모 든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이용 해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의 가 상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다. 자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터 8
  9. 9. SDDC(Software Defined Data Center란?) 이미 많은 발전이 이루어진 컴퓨팅, 스토리지 분야의 가상화와 함께 네트워크 가상화 기술인 SDN/NFV의 발전을 전재로 현재 주목 받고 있는 것이 바로 미래 데이터센터의 모델의 하나인 ‘소프 트웨어 정의 데이터센터(Software Defined Datacenter)’이다. 소프트웨어 정의 데이터센터는 서버, 스토리지, 네트워킹, 보안 시스템, 관리 솔루션 등 데이터센터의 모든 구성요소들을 가상화하고, 이러 한 가상화 환경의 인프라를 소프트웨어로 자동 통제 및 관리하는 것을 그 기본 사상으로 삼고 있다. 이런 소프트웨어 정의 데이터센터(SDDC)를 구현하려면 IT인프라의 표준 화에 이어 서버, 스토리지, 네트워크, 보안, 관리 및 모니터링 등 전 IT 인프라의 가상화, 그리고 자동화가 이뤄져야 한다. 즉, 모 든 인프라가 가상화되고, 딜리버리는 서비스 방식으로 이뤄지고, 전반적인 통제는 소프트웨어를 이 용해 자동적으로 이뤄지는 곳이 소프트웨어 정의 데이터센터(SDDC)이다. 데이터센터 안에 여러 개의 가상 데이터센터를 만들 수 있으며, 그것도 수 초만에 구성할 수 있을 것이다. 자료 출처: 클라우드 인프라 소프트웨어정의의 동향, 클라우드 지원센터 9
  10. 10. 10 네트워크 가상화 자료 출처: Hype Cycle 2014, Gartner
  11. 11. NFV(Network Function Virtualization) 가상 라우터 가상 파이어월 가상 VPN 가상 스위치 가상 NAT 11 상단 그림 출처: Virtual Cloud Networking, AT&T Virtualization (RHEV, Vmware, Xen, KVM, …)
  12. 12. ETSI(European Telecommunications Standards Institute) NFV 정의 12 (NFV Infrastructure) 자료 출처: ETSI GS NFV 002 V1.1.1, 2013. 10
  13. 13. Athena Spider 공개SW 프로젝트 NFV(VNF, NFVI) 관리
  14. 14. 14 Athena Spider 프로젝트 개요
  15. 15. 15 NFV 관리 기능 요구사항
  16. 16. Athena Spider 공개SW 프로젝트 주요 내용 공개SW 기반 네트워크 가상화(NFV) 관리 솔루션 소스 Repository  https://github.com/OpenSourceConsulting/athena-spider 16 Python 언어 기반  시스템 제어에 적합 (Fabric SSH 등)  로그 Parsing 등 관리 자동화 유리  JSON 기반 REST API 서버 개발 용이 CollectD + Graphite 모니터링 프레임워크  안정적이고 빠른 통합 모니터링 프레임워크  다양한 플러그인 통해 확장 용이 FogBugz Issue Tracking + Jenkins 빌드 + Python Coverage
  17. 17. 17 Athena Spider 아키텍처 Athena Spider Controller KVM Manager SSH(22) Lib-vert NFV Appliance collectd daemon TCP(2003) Graphite(Python) Carbon Python RESTful API (Django/Flask) Management Console Console ExtJS MVC Sencha Architect TCP(80) Controller Version Controller Fabric (SSH) SSH(22) SSH Daemon plugin plugin plugin plugin OS system resources NIC and network usage Vyatta service status Whisper (RRD like) WebApp (Flask/ Django) Config (JSON/CouchDB) gunicorn WSGI 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 서비스
  18. 18. 18 Athena Spider 주요 화면 및 기능 VM Host 관리 신규 NFV VM Provisioning
  19. 19. 초기 NFV 장비(VM) Provisioning 과정 VM(Vyatta) Controller 통신 가능한 NIC 찾기(Case 378) 19 /etc/rc.local /etc/spider/init.sh 다음 정보 수집 Ifconfig –a netstat –nr vbash –version uname -a Host 정보는 동적으로 변경 가능 http://spider-controller:5001/vmreg Spider Controller /vmreg endpoint curl –X POST VM의 NIC와 Mac Addr 구함 NIC1 NIC2 NIC3 NIC4 KVM Host KVM Host가 가지고 있는 VM들의 Mac Addr 과 비교 VM 초기화 작업 (initVM, Case 378) virsh domiflist 모든 VM 들의 Mac Addr 중에서 찾아야 함 원격에서 스크립트 실행할 환경 생성 Repository 등록 부분은 Case 385 참고 !!!!
  20. 20. 20 Athena Spider 주요 화면 및 기능 KVM Host 및 NFV VM 목록 관리 개별 VM들의 주요 리소스 모니터링 NIC 및 기간 별 네트워크 트래픽 모니터링
  21. 21. 21 Athena Spider 주요 화면 및 기능 NIC, Bonding 기본 자원 관리 Routing, NAT, DHCP 등 NFV 기능 관리
  22. 22. 상세 요구사항 – NFV Management Topology View 라 우 팅 외부 망 b0 b0 22 NFV (KVM) NFV (KVM) b1 b1 파이어월 규칙 • WEB  WAS (80/443) • WAS  DB (1521) bond0: 외부망 (eth0~1) bond1: 내부망 (eth2~3) 백본 10.10.20.x 10.10.10.x Controller (KVM) b1 WAS (KVM) WEB (KVM) DB (KVM) 내부 관리 망 라 우 팅 b0 b0 b0 KVM Host KVM Host KVM Host K K K 관리포탈 (브라우저) • 라우팅 테이블 직접 생성 • NAT 구성 • 파이어월 규칙 직접 생성 • NIC 추가 및 bonding 구성 • 선 연결 (또는 IP 대역으로 확인)
  23. 23. 동적 아키텍처 – VM(NFV, KVM) 관리 – 모니터링 23 Controller (CentOS) NFV Appliance #2 KVM Manager KVM Host #1 KVM Host #2 KVM Manager NFV Appliance #1 NFV Appliance #3 NFV Appliance #4 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. 24. 모니터링 프레임워크: graphite-collectd details 24 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. 25. 모니터링 프레임워크: graphite-collectd details 25 25 표시할 구간(날짜/시 간) 지정 최근 데이터 기준으 로 지정 대상 서버, 리소스 종류, 상세 정보를 일정한 이 름 규칙에 의해 트리 구조로 분류할 수 있음 표시할 정보에 다양한 함수 지정 복수 정보를 한꺼번에 지정 가능 브라우저에서 URL 파라미터 형식 API 지원
  26. 26. 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 및 클라우드(오픈스택 등) 프레임워크와 통합
  27. 27. 결론 및 요약
  28. 28. 28 변화의 거대한 물결 가상화 클라우드 SDN, NFV SDDC, … You Are Here !!!!
  29. 29. SDDC, NFV 관리 시스템 – Athena Spider 29 Just Do It !! Let's Start !!

×