OpenFlow 기반 SDN 네트워킹인프라구축 OpenFlow 기반 SDN 네트워킹인프라구축 문서연혁버전 날짜 저자 ( 들 ) 수정사항 0.1 2012.12.18 KOREN NOC 1.0 2012.12.20 KOREN NOC OF@TEIN Document No. 4 Version 1.0 Date 2012-12-20 Author(s) KOREN NOC 본문서는한국정보화진흥원 (NIA) 의미래네트워크연구시험망 (KOREN) 사업 지원과제의연구결과로수행되었음 (11-951-00-001).
요약문 목차 1. 제목네트워크통합모니터링도구설치및시험보고 2. 목표및내용웹 UI를기반하여 OF@TEIN 테스트베드를구축한 NREN( 필리핀, 베트남, 말레이시아, 인도네시아, 태국 ) 5개국 SmartX Rack의네트워크상태를모니터링하기위해구축한다. 모니터링주요대상 - Network 연결상태모니터링 - 장비 On, Off 등정상운영상태모니터링 웹 UI 기반모니터링 Tool 소개및설치 - 웹 UI를기반한모니터링 Tool : Cacti, perfsonar Tool을설치한다. - OF@TEIN망을사용하는 TEIN에소속된국가에 SmartX Rack Switch, Server에 RRD Tool을설치한다. - TEIN망을관리하기위해 Cacti, perfsonar Server와연동한다. 1. 서론 1 1.1 본문서의범위 1 1.2 다른문서들과의관계 2 2. 웹 UI 기반통합모니터링도구를활용한네트워크상시운영 3 2.1 웹 UI기반의모니터링툴의개요 3 2.1.1 Munin 3 2.1.2 WhatsUp Gold 3 2.1.3 Nagios 4 2.1.4 Cacti 5 2.2 Cacti, perfsonar, 그리고 Nagios 6 2.3 Cacti Tool의웹 UI 기능 7 2.3.1 네트워크모니터링기능 7 2.3.2 그래픽기능 8 2.3.3 Decice 추가하기 9 2.3 Cacti 플러그인기능 12 2.3.1 Graph : 기본기능 12 2.3.2 Monitor : Device 모니터링페이지기능 12 2.3.3 NPC: Nagios Monitoring Tool, Cacti와연동하여모니터링기능 13 2.3.4 기타기능 13 3. 웹 UI 기능검증 14 3.1 Cacti 웹 UI 기능검증 14 4. Cacti 플러그인기능활용 16 Cacti 기능소개및 Plugin 기능활용 - 네트워크상태와 Traffic의유동상태를 Graph를통하여나타낸다. - Cacti와연동가능한유용한 Tool을 Plugin으로추가설치하여사용한다. Graph, Monitor, NPC, GPS Map, Reports, KOREN Cacti, Thold, Weathermap Plugin의기능소개와활용에대하여설명하고있다. - Cacti Graph로일일 ( 시간 ), 월간, 년간등의네트워크이용율확인, 최대입 / 출력 Data, 평균입 / 출력 Data, 현재입 / 출력 Data 확인, 그리고총이용트래픽의최대 / 평균 Percentage 값확인할수있다. 1 2
표목차 그림목차 [ 표 1] Cacti Login 6 [ 표 2] Cacti Graph 3 9 [ 그림 1] 문서들간의시간라인과관계도 2 [ 그림 2] Alert UP/DOWN Mail 7 [ 그림 3] Cacti Graph 1 8 [ 그림 4] Cacti Graph 2 9 [ 그림 5] Cacti Menu 10 [ 그림 6] Device add 10 [ 그림 7] SNMP Options 11 [ 그림 8] Add Data Query 11 [ 그림 9] Create Graphs for this Host 11 [ 그림 10] Cacti Graph 4 12 [ 그림 11] Plugin Management 12 [ 그림 12] Device Status 14 [ 그림 13] Cacti Graph 5 15 [ 그림 14] Device ICMP Result 15 [ 그림 15] Plugin Management 16 [ 그림 16] Cacti Graph 6 16 [ 그림 17] Monitor 1 17 [ 그림 18] Monitor 2 17 [ 그림 19] NPC Main 18 [ 그림 20] NPC Status 18 [ 그림 21] Nagios Host 18 [ 그림 22] Event Log 19 [ 그림 23] GPS Map 19 [ 그림 24] KOREN Cacti 20 [ 그림 25] Thold 20 [ 그림 26] Alert UP/DOWN Mail 21 [ 그림 27] WeatherMap 1 21 [ 그림 28] WeatherMap Management 22 [ 그림 29] WeatherMap 2 22 3 4
1. 서론 1.2 다른문서들과의관계 1.1 본문서의범위 본보고서는웹 UI 모니터링툴의소개및설치에관하여기술한다. 웹 UI 기반모니터링툴설치 - 웹 UI 기반모니터링가능한 Cacti, perfsonar Tool 을설치한다. 모니터링툴기능소개 - 웹 UI 모니터링툴의소개및기능등장단점을소개한다. - Cacti, perfsonar 소개및기능등장단점을소개한다. perfsonar 기능소개 웹 UI 기반모니터링기능검증 - Cacti 기능의정상작동유무확인검증을한다. [ 그림 1] 문서들간의시간라인과관계도 모니터링툴기능활용 - Cacti Tool 의기능사용에관하여기술한다. 문서 M2.1 대상지역 SDN 구성을위한네트워크구성설계도 perfsonar 기능활용 모니터링툴 plugin 기능활용 - Cacti 에추가된 plugin 기능들소개및사용목적에관하여기술한다. 문서 M2.2 대상지역별네트워크연결및성능검증시험결과보고서 문서 M2.3 문서 M2.4 웹 UI 기반통합모니터링도구를활용한상시운영보고서 1 2
2. 웹 UI 기반통합모니터링도구를활용한네트워크상시운영 2.1 웹 UI기반의모니터링툴의개요 웹 UI를기반으로사용되는모니터링툴로써는 Munin, WhatsUp Gold, Nagios, Cacti, perfsonar 등여러종류가있다. perfsonar는문서 OF@TEIN Network WeatherMAP Monitoring 을참조한다. 2.1.1 Munin Munin 이라는모니터링툴은간편한설치, 깔끔한그래프, 다양한플러그인지원이라는장점을가지고있는툴이지만, 기간검색이안되고 1 day, 1 week, 1 month, 1 year 단위로만조회가가능하다는단점을가지고있다. 수있다. Graphical Reporting 기능은서비스레벨의추적을손쉽게하며 service provider 가역할을제대로하고있는지에대한척도로사용할수있다. - Web Access : Interactive Web interface는네트워크디바이스상태점검과웹을통한일상관리업무를수행할수있다. - Threshold Monitoring : 무료로배포되는 SNMP Threshold 플러그인을사용하면각종네트워크및시스템자원활용을더세부적으로추적할수있다. 라우터및스위치의대역폭이용률뿐아니라 CPU, 메모리, 그리고디스크공간등의활용도모니터할수있다. - NT Services Monitoring : 숨겨진모든 NT 서비스를손쉽게확인해서모니터링할수있으며 WhatsUp Gold의무료 NT Services 플러그인을이용하면서비스가멈추었을때자동으로재시작하도록할수도있다. 2.1.2 WhatsUp Gold WhatsUp Gold는 ICMP, SNMP를이용하여중요한네트워크서비스가정상적인상태에서운영이지속되도록대규모인기업의경우에는각부서에있는중요한어플리케이션의상태를 WhatsUp Gold로모니터하거나기존시스템을보완하도록할수있다. 중소규모라면 WhatsUp Gold를완전한네트워크관리시스템으로운영할수있다. 또한 WhatsUp Gold는고가의복잡한네트워크관리시스템을충분히대신할수있다. - Mapping : 자동탐색마법사를이용해서 WhatsUp Gold는컴퓨터및네트워크에내재되어있는정보를기반으로네트워크의정확한지도를생성한다. - Monitoring : mission-critical 한각종디바이스, 애플리케이션및자원활용상황등을모니터할수있다. - Notification : 다운되는즉시경고음, 비퍼, 페이저, 이메일또는전화로통지되어중요한서버나서비스의다운을바로알수있다. - Historical Reporting : 각종디바이스및애플리케이션의가용성과응답횟수를추적하여설비투자계획및자원관리를위한안내지표로사용할 - Net Tools : IP 진단도구는신속하게네트워크의문제들을발견하고해결하는데도움을준다. 이러한장점을가지고있는모니터링툴이지만, 사용하는 Traffic의양을 Graph로표현하여보여주지는못하고있다. 2.1.3 Nagios Nagios 이라는모니터링툴은서버, 네트워크장비를비롯, HTTP, FTP, SMTP 같은서비스를모니터링하고장애가발생하면관리자에게메일이나 SMS로알려줍니다. 또한 Web UI를통해서한눈에시스템상태를볼수도있습니다. 하지만 Nagios는오픈소스이기때문에스스로모든것을해결해야합니다. 소스를내려받아컴파일하고설치해야하며모니터링하기원하는시스템을위한설정을하나하나해내가야합니다. 1) Monitor your entire IT infrastructure 2) Spot problems before they occur 3) Know immediately when problems arise 4) Share availability data with stakeholders 5) Detect security breaches 3 4
6) Plan and budget for IT upgrades 7) Reduce downtime and business losses 이러한장점을가지고있지만, Graph 생성을하지못하는단점을가지고있다. 그리하여 Cacti에 plugin으로추가하여툴의장점을최대한사용하도록한다. 2.1.4 Cacti Cacti는 RRD Tool과 SNMP를기반으로한네트워크모니터링 Tool로 APM(Apache, PHP, Mysql) 과연계하여네트워크를모니터링하여관리및편의를제공한다. - 오픈소스프로그램이며, 처음에접근이어려울수있지만익숙해질수록유연하게사용할수있는장점이있다. - RRD Tool을이용하여깔끔한그래프를생성가능하며, xml형태의양식을제공하여 RRD 활용을극대화하며다양한 Plugin을추가하여상용 NMS의기능에가까운다양한기능을확장할수있다. 2.2 Cacti, perfsonar, 그리고 Nagios 여러종류의웹 UI 기반모니터링중에서 Cacti와 perfsonar Tool을사용하기로한다. 여기에 Nagios를추가 plugin으로사용한다. - Cacti란 RRD Tool, snmp를이용하며웹 UI에서통합적으로확인할수있는 Tool이다. - Cacti Tool을이용하면 24시실시간모니터링을하여네트워크의상태와 Traffic의양을확인할수있다. - Cacti에사용자의편의에따라유용한 Plugin을추가하여원활한모니터링기능이가능하다. < URL 접속 > < URL 접속시 Cacti Login 화면 > 주소창에 URL 입력 [ 표 1] Cacti Login 5 6
2.3 Cacti Tool 의웹 UI 기능 2.3.2 그래픽기능 2.3.1 네트워크모니터링기능 Cacti 툴은 Ping, SNMP를기반으로네트워크상태모니터링기능을수행하며, Traffic Graph와 Monitoring Alert 기능으로상시모니터링이가능하다. 또한주기적인 Ping Check를통하여장애발생시 Mail Alert 기능으로사용자가신속하게대처할수있도록한다. 아래 [ 그림 2] 와같이현재네트워크상태를등록된 Mail주소로알려준다. SNMP 를이용하여 Interface 의 Traffic 을 Graph 로생성하여나타낼수있다. [ 그 림 3] 와같이 Graph 를통하여 Traffic 의유입상황과현재네트워크상태를확인할 수있다. 또한 Graph Tree 기능을사용하여 Graph 분류및정리를할수있다. [ 그림 3] Cacti Graph 1 최장 2년전부터 30분전에생성되었던 Graph 검색기능과원하는년도, 날짜, 시간에생성되었던 Graph를조회할수있으며, 확대하여확인할수있다. Graph 의생성주기는다음과같다. - Hourly (1 Minute Average) : Graph의 1칸이 1분간격을의미한다. - Daily (5 Minute Average) : Graph의 1칸이 5분간격을의미한다. - Weekly (30 Minute Average) : Graph의 1칸이 30분간격을의미한다. - Monthly (2 Hour Average) : Graph의 1칸이 2시간간격을의미한다. - Yearly (1 Day Average) : Graph의 1칸이하루간격을의미한다. [ 그림 2] Alert UP/DOWN Mail 7 8
[ 그림 4] Cacti Graph 2 [ 그림 5] Cacti Menu Zoom Graph 기능선택 드래그하여원하는시간대확대선택 [ 그림 6] 의우측상단에 add 버튼을클릭하여 Device 의정보를입력한다. [ 표 2] Cacti Graph 3 2.3.3 Decice 추가하기 Create devices 메뉴를이용하여 device 를추가할수있다. Cacti Tool 을이용하 여 Device 를추가하여야 Graph 를만들수있으며, 추가방법으로는 [ 그림 5] 의 Console Tab 에서좌측메뉴중 Devices 를선택한다. [ 그림 6] Device add 9 10
그리고, Switch, Server 에설정해놓은 SNMP Community 값을입력한다. [ 그림 7] SNMP Options 위의절차가완료된후에, save 를누르고 Add Data Query 에서 Interface 를선 택한다. [ 그림 10] Cacti Graph 4 2.3 Cacti 플러그인기능 [ 그림 8] Add Data Query 해당페이지상단을보면 Create Graphs for this Host 라는항목이있으며, 생성하려는포트를선택하고 Create 버튼클릭하여 Graph 를생성한다. [ 그림 9] Create Graphs for this Host [ 그림 11] Plugin Management 상단 Tab중에서 Graphs 항목으로이동하면생성한 Graph를확인할수있다. Graph를통하여기간, 구간별 Traffic 사용량을선택하여확인할수있으며, 일일 ( 시간 ), 주간, 월간, 년간등의네트워크이용율의확인이가능하다. 드리고최대 Traffic의 In/Out, 평균 Traffic의 In/Out, 현재 Traffic의 In/Out의사용율의확인이가능하다. 2.3.1 Graph : 기본기능 Cacti 설치목적이며, 네트워크상태를 Graph 로보여줌으로써사용자가편이하게 상태확인을할수있다. 2.3.2 Monitor : Device 모니터링페이지기능 11 12
네트워크상태를실시간 Monitoring 하여 UP & DOWN 을확인할수있다. DOWN 되어있는장비는얼마동안 DOWN 되어있는지시간으로표기된다. 3. 웹 UI 기능검증 3.1 Cacti 웹 UI 기능검증 2.3.3 NPC: Nagios Monitoring Tool, Cacti와연동하여모니터링기능모니터링 Tool인 Nagios와연동이가능하다. Host 기능으로등록된 Host에문제가발생하였을때 Alert기능으로현재상태를실시간으로확인할수있다. Service 기능은 Ping Check 기능으로네트워크상태와 Packet lost Rate를확인할수있다. 그리고 Event Log 기능은등록된 Host와 Service에문제가발생하였을때의내용을 Log로저장한다. ICMP, SNMP 를통하여 Devices 의네트워크상태를모니터링하며, Status 의 Up, Down 으로확인하여원인을파악하며신속한조치가가능하게한다. 2.3.4 기타기능 기타기능으로 GPS Map, Reports, Thold, 그리고 Weathermap 기능들이있다. GPS Map 은 GPS 를이용하여등록한 device 와 Mapping 하는기능이며, 세계 지도에서 GPS 를이용하여 devices 의위치를알려주는기능이다. Reports는설정값에따른 Report를생성하는기능이다. Thold는 Thresholds, 장애 Alert을보내주는기준치를설정하는기능이다. Alert 기능의기준치를설정하여, 기준치에따라 Alert를해준다. Weathermap은 GPS Map을이용하여한페이지에서네트워크상태확인기능을제공하며, 지도를이용하여등록된 devices의네트워크상태를쉽게확인할수있다. [ 그림 12] Device Status 위의 [ 그림 13] 과같이 Status 상태에서 Up, Down이되었을때 Mail Alert 기능은정상적으로이루어지며, 네트워크상태의알림이올바른지확인하였다. Device의네트워크상태를 Graph로표현하여 Traffic 사용량과네트워크문제발생시신속하게판단하여조치할수있도록하였다. 13 14
4. Cacti 플러그인기능활용 Plugin Management: Plugin 을선택하여추가 / 삭제, 사용 / 미사용이가능하다. [ 그림 13] Cacti Graph 5 Graph에서정상적으로 Traffic의사용량을표현하며, Graph Tree 기능을활용하여분류및정리하였다. 원하는날짜와시간에대한 Graph 조회가정상적으로가능한지확인하였다. Graph 구간별확대기능으로기간을선택하고 Zoom Graph 기능을클릭을한후원하는구간을드래그하여 Traffic을확인할수있는기능을검증하였다. [ 그림 15] Plugin Management Graph : 네트워크상태, Traffic in/out 상태를 Graph 로보여준다. - 네트워크상태와 Traffic 의발생량, 정도를파악할수있다. Device 추가수에대한제약을없으며, 올바를정보를입력하여결과값이올바르 게나오는지확인하였다. [ 그림 14] Device ICMP Result [ 그림 16] Cacti Graph 6 Monitor 기능 - Device에등록되어있는서버들을 Ping Check를통하여 UP/DOWN 상태를한페이지에서모니터링이가능하다. [ 그림 18] 의스타일이 [ 그림 19] 의스타일로변경이가능하다. 15 16
[ 그림 17] Monitor 1 [ 그림 19] NPC Main - Nagios Tool Status, 등록한 Host & Service Status 를간략히표시한다. [ 그림 20] NPC Status - Device 의 Ping Check 와 Packet loss Rate 를확인할수있다. [ 그림 21] Nagios Host [ 그림 18] Monitor 2 - Event 발생시 Log 를기록하여저장한다. NPC: Nagios monitoring tool 의기능과연동하여현재네트워크상태를확인할 수있는기능이다. - 등록한 devices 의네트워크상태를종합하여표시한다. 17 18
KOREN Cacti 와연동 - KOREN Cacti 를 Plugin 에추가하여한페이지에서두개의 Cacti 를확인 할수있다. [ 그림 22] Event Log GPS Map - Device 에설정한위도, 경도의값으로해당위치를표시한다. - 등록된지역을클릭하면 device 의정보를확인할수있다. [ 그림 24] KOREN Cacti Thold: Thresholds 기능 - Alert 기능의기준치를설정하여장애발생시 deivce 의정보를보여준다. [ 그림 23] GPS Map [ 그림 25] Thold 19 20
- 장애발생 / 복구시 Mail 로통보를한다. - Weathermap Management 를이용하여추가 / 삭제가가능하다. [ 그림 28] WeatherMap Management - edit groups 를이용하여 Wearthermap 을추가할수있다. [ 그림 26] Alert UP/DOWN Mail Weathermap: Map을이용하여네트워크상태를종합적으로확인이가능하도록정리하여보여주는기능이다. - GPS Map을이용하여동남아 5개국의 Traffic 경로를설정할수있다. - 한페이지에서 Traffic 유입상황및네트워크상태를확인할수있다. [ 그림 27] WeatherMap 1 [ 그림 29] WeatherMap 2 21 22