What is Splunk?
SPLUNK는 각종 장비에서 발생하는 데이터를 형태와 상관없이 수집하고 저장 및 통합 분석 할 수 있는 유용한 빅데이터 분석 플랫폼입니다.
스플렁크를 이용하면 DRM, DLP 등 보안장비에서 부터 출입기록, 운영체제, 카드키 출입장치에 이르기까지 데이터를 생산하는 모든 장치에서 정형 및 비정형 데이터를 수집할 수 있습니다.
스플렁크는 분산처리 구성을 지원하여 하루에 수십 TB까지의 대규모 데이터 수집을 지원합니다.
스플렁크에 데이터가 수집되면 통계분석, 시각화, 이종 장비간 연관성 분석, 머신러닝 분석 기법 등을 적용해 다양한 빅데이터 기반 분석을 적용할 수 있습니다.
Why SPLUNK?
수많은 스마트폰이 있지만 우리는 왜 안드로이드와 아이폰을 사용할까요?
1. Splunk의 생태계
스플렁크는 일반 사용자, 벤더 담당자 등이 프로그램을 직접 개발하고 공유할 수 있도록 Splunk Base를 운영합니다.
이는 마치 안드로이드의 Play Store, 아이폰의 App Store와 같습니다.
스플렁크 사용자는 Splunk Base에 접속해 빅데이터 분석에 필요한 다양한 기능을 무료로 다운로드해서 사용할 수 있습니다.
App을 이용해 빅데이터 분석을 진행할 경우, 다른 사람이 작성한 프로그램을 차용해 분석의 퀄리티를 높이면서도 분석시간을 단축할 수 있습니다.
현재 Splunk Base에는 약 1,800개가 넘는 App이 등록되어 있습니다.(https://splunkbase.splunk.com)
2. 매우 쉬운 인프라 구축 및 운영
빅데이터 분석 솔루션에서 SPLUNK와 함께 가장많이 사용되는 솔루션이 ELK(Elastic Search + Log Stash + Kibana) 입니다.
ELK 역시 막강한 프로그램이지만 3개의 오픈소스 프로젝트를 하나로 묶어 사용하기 때문에 설치와 운영에 많은 노력이 필요합니다.
스플렁크는 운영에 드는 비용을 최소화 시키고, 사용자가 데이터 분석에만 집중할 수 있도록 최적화된 운영환경을 제공합니다.
리눅스에서 스플렁크를 설치해볼까요?
단 3줄이면 됩니다 !
rpm -i --prefix=/opt/new_directory splunk_package_name.rpm ./splunk start --accept-license ./splunk enable boot-start
splunk 와 elk의 객관적인 비교자료는 아래의 링크에서 확인할 수 있습니다.
비용 측면 비교자료 : https://regteksolutions.com/splunk-vs-elk-part-1-cost/
지원 측면 비교 : https://regteksolutions.com/splunk-vs-elk-part-2-support/
3. 강력한 자유도
설치만 해도 분석 화면이 제공되는 타사의 SIEM 솔루션과는 달리 스플렁크는 처음 설치하면 아무것도 없는 빈 화면이 나타납니다.
스플렁크는 사실 보안 솔루션이 아니라 데이터 분석 플랫폼입니다. 사실 이 플랫폼은 하나의 NO-SQL 데이터베이스라고 할지도 모릅니다.
스플렁크는 NO-SQL처럼 형태에 상관없이 다양한 데이터를 저장하고 처리할 수 있습니다.
데이터 수집이 완료되었다면 분석을 위해서는 무엇을 해야 할까요? SPL(Search Procedure Language)이라고 하는 쿼리 문법을 알아야 합니다.
아무것도 없는 빈 화면이 단점이라고 생각하셨나요? 이는 스플렁크에서 추구하는 자유도의 상징입니다.
스플렁크는 이러한 자유도를 기반으로 타사 SIEM에서 처리하지 못하는 데이터까지 모조리 수집하고 분석할 수 있습니다.
기업에 특성을 반영한 빅데이터 분석이 필요하신가요? 그렇다면 유일한 대안은 스플렁크입니다.
아래 화면은 SPL을 사용한 DensityFunction 머신러닝 알고리즘 적용 예시입니다.
SPLUNK 구현사례
방화벽 로그에 통계분석 적용하기
방화벽은 우리가 통계 분석을 적용할 수 있는 가장 대표적인 장비입니다.
스플렁크를 이용하면 방화벽 로그를 기준으로 시간별 / 일별 / 주별 / 월별 통계 데이터 전송량을 통계 데이터 형태로 관리할 수 있습니다.
이번 주 월요일 전송된 데이터가 지난 한달간 월요일의 데이터 전송량 평균보다 3배 많다면 무언가 확인해야 하지 않을까요?
만약 중국으로 1TB 이상의 파일이 전송됐다면 어떨까요?
우리는 이러한 시나리오를 아래와 같이 대시보드 형태로 작성해 시각화 할 수 있습니다.