1장 엘라스틱 스택(Elastic Stack)이란
- 검색 엔진을 넘어서 빅데이터 플랫폼으로 !
엘라스틱 스택은 개인적으로 아쥬심플섹시한 플랫폼이라고 생각한다.
그 이유인즉슨 내가 사고싶은 것이 많이 있을 때,
각각의 물건이 최고인 것을 여기저기(A,B,C마트...)에서 따로 구하기보다는
A마트에서 전체를 구매할 때, B마트에서 전체를 구매할 때, C마트에서 전체를 구매할 때 이렇게 비교를 하고 물건 구매를 한다.
즉 ONE-STOP, ALL-ONE 이런 걸 좋아한다 ㅎ
===> 그래서 정해진 것이 엘라스틱 스택!
목차
1.1 엘라스틱 서치의 탄생
1.2 엘라스틱 스택으로 발전
1.3 엘라스틱 스택의 구성요소
1.4 엘라스틱 스택의 용도
1.5 빅데이터 플랫폼의 일부로 동작하는 엘라스틱 스택
1.6 유사 제품과의 비교
1.7 체계적인 문서화와 활발한 공동체 지원
📝1.1 엘라스틱 서치의 탄생 / 1.2 엘라스틱 스택으로 발전
1.1 엘라스틱 서치의 탄생
- 엘라스틱서치가 만들어진 배경에 대해 설명하는 part
🔑Keypoint
엘라스틱이 등장했을 무렵, 많은 사용자들은 사이트 내에서 전문 검색(full text search)기능을 제공하는 강력한 소프트웨어를 필요로 했다.
1.2 엘라스틱 스택으로 발전
엘라스틱은 단순 검색엔진에 머무르는 대신 플랫폼으로 발전하는 길을 택했다.
간편하게 빅데이터 파이프라인을 구성하고 싶은 기업의 요구사항을 충족하기 위해, (이건 나의 생각도 그렇다... ㅋㅋㅋ ) 스택을 층층이 쌓아올렸다.
로그스태시 & 키바나
이 시대에 천재가 많았는지, 마침 로그스태시, 키바나같은 오픈소스 프로젝트가 진행되고 있었다고 한다
그리고.... 엘라스틱서치를 만든 샤이배넌은 로그스테시(Logstash)를 개발한 사람과 키바나(Kibana)를 개발한 사람 두사람과 모두 친분이 있었다고 한다. 🤠 (샤이배넌은 완전 인싸였나부다. 유유상종이라고 하더니 똑똑한 애 옆에 똑똑한 애가 있나보다. )
* 로그스태시(Logstash): 사용자가 선택한 보관함으로 로그를 보내는 오픈소스 데이터 수집도구
* 키바나(Kibana): 오픈소스 시각화 UI
비츠
로그스테시와 엘라스틱서치로 네트워크 데이터, 로그, 메트릭, 성능 진단 데이터를 보내는 경량 데이터 수집기의 가능성을 고려하게 되고, 패킷비트와 연한해 비츠(Beat)가 탄생되었다!
1.3 엘라스틱 스택의 구성요소
1) 엘라스틱서치(Elasticsearch): 분산 검색 엔진
(책에 엘라스틱서치에 대한 설명이 너무 잘 되어있는데, 다 적지 못하고 각 문단마다 한 문장씩 뽑아보려한다.)
- 엘라스틱서치는 모든 레코드를 JSON 도큐먼트 형태로 입력하고 관리하고 있으며, 쿼리한 결과에 대해 일치하는 원본 도큐먼트를 반환한다.
- 엘라스틱서치는 텍스트나 도큐먼트의 경우 인덱싱 시점에 분석을 거쳐 용어단위로 분해되고 역인덱스 사전을 구축한다.
- 엘라스틱서치는 연관도에 따른 정렬을 특징으로, 복잡한 문자열 콘텐츠에서 검색을 수행할 떄 큰 효과를 보인다.
- 엘라스틱 서치는 분산시스템으로서, 복수의 루씬 인스턴스를 병렬로 배치하고 분산처리해 검색속도를 무한히 확장 할 수 있게 했다.
- 엘라스틱서치는 대용량 데이터에 대한 빠른 검색과 집계가 필요할 경우 우선적으로 고려해야 하는 데이터베이스 중 하나라고 할 수 있다.
2) 키바나(Kibana): 시각화와 엘라스틱서치 관리 도구
- 키바나의 중요한 기능은 엘라스틱서치 기반의 시각화 도구라는 것이다. 그리고 엘라스틱서치에 대한 대부분의 관리기능, API를 실행할 수 있는 콘솔, 솔루션 페이지들 그리고 스택의 각 구성요소들을 위한 모니터링 페이지 등이 모두 키바나에 포함되어 있다.
3) 로그스태시(Logstash): 이벤트 수집과 정제를 위한 도구
- 데이터수집과 가공 기느을 제공하는 로그스태시를 사용하면 다양한 소스로부터 로그를 수집(input)할 수 있다.
- 또한 필터 기능을 이용해 비정형/반정형 데이터를 분석하기 쉬운 형태로 정제(filter)할 수 있고 엘라스틱서치외에도 다양한 플랫폼으로 정제된 데이터를 내보낼 수 있다.(output)
4) 비츠(Beat): 엣지단에서 동작하는 경량 수집 도구
- 데이터 수집을 위해 용도별로 최적화된 경량 에이전트로 제공되며, 특성과 성격에 맞는 다양한 비트들이 존재한다.
5) 기타 솔루션
: 엘라스틱 스택의 버전이 올라가면서, 사용자들이손수 구현해오던 많은 시스템들이 솔루션으로 추가되고 있다.
공식홈페이지에 들어가면 아래처럼 여러 솔루션들을 볼 수 있다.
(https://www.elastic.co/kr/elasticsearch/)
1.4 엘라스틱 스택의 용도
1) 전문 검색 엔진
- 빅데이터에서 역인덱싱을 이용해 전문 검색을 할 수 있다.
2) 로그 통합 분석
- 여러 장비와 서비스에 발생하는 로그들을 통합하고 검색하는 데 최적화된 솔루션이라 할 수 있다.
3) 보안 이벤트 분석
- SIEM이나 ESM 등으로 불리는 솔루션은 조직 내에 속한 다양한 장비들로부터 보안 이벤틀르 수집하고 분석할 수 있께 하려는 목적으로 만들어졌다.
4) 애플리케이션 성능 분석
- 애플리케이션을 운영을 위해서 애플리케이션 상태를 지속적으로 모니터링하고, 연계된 다른 모든 서비스의 성능정보를 모니터링해야한다.
5) 머신러닝 (유료이긴 하지만 강력한 기능이다! )
1.5 빅데이터 플랫폼의 일부로 동작하는 엘라스틱 스택
1) 엔터프라이즈 데이터 버스인 카프카와 연동
: 아파치 카프카는 분산데이터 스트리밍 플랫폼이다. 카프카와 엘라스틱스택은 데이터 수집 시점에서 많이 연계되어 사용한다.
2) 하둡 생태계와 연동
: 엘라스틱 스택에서 es-hadoop 모듈을 사용하면 스파크에서 엘라스틱서치 API를 사용해 도큐먼트를 읽어들이고 반대로 인덱싱하는 등 서로 상호작용을 수행할 수 있다.
(https://www.elastic.co/kr/what-is/elasticsearch-hadoop)
3) 관계형 데이터베이스와 연동
: 기존의 관계형 데이터베이스에 저장된 데이터를 인덱싱하거나 입력받는 이벤트에 정보를 주입하는 등 여러용도로 사용된다.
1.6 유사 제품과의 비교
(회사들마다 사용하는 제품이 다르기때문에 연결지으면, 다른 제품으로는 뭐가 있을지 궁금했다.
간략하게만 일단 적어보겠다! 자세한 것은 책 참고하기)
1) 엘라스틱 서치의 유사 제품군
데이터베이스 측면에서 비교
엘라스틱 서치 vs 몽고DB vs MySQL
전문 검색 엔진측면에서 비교
엘라스틱 서치 vs 솔라
2) 로그스태시/비츠의 유사 제품군
* 로그스태시 vs 플루언트디
3) 키바나의 유사 제품군
* 키바나 vs 그라파나 vs 태블로
4) 엘라스틱 스택의 유사 제품군
* 엘라스틱 스택 vs 스플렁크
1.7 체계적인 문서화와 활발한 공동체 지원
엘라스틱 스택은 문서화가 상당히 잘 되어있고, 활발한 공동체가 기술 지원을 대신하고 있끼에 오픈소스 세꼐의 모범 사례로 불린다고 한다!
(사실 ELK STACK을 공부할 때, 홈페이지에서 설명도 너무 잘되어있고 커뮤니티로 활발한 QnA가 있어서 오류해결에 많은 도움을 받았다. )
* 공식홈페이지: https://www.elastic.co/kr/
* 블로그 : https://www.elastic.co/kr/blog/
'😆 Big Data > - ELK STACK' 카테고리의 다른 글
[ELK] ⚒️12.2/3장 리눅스 엘라스틱서치 & 키바나 설치 (Ubuntu) (0) | 2022.02.28 |
---|---|
[ELK] ⚒️12장 리눅스 실습 환경구성 - (Ubuntu + VM VirtualBox) (0) | 2022.02.27 |
[ELK] 『엘라스틱 스택 개발부터 운영까지』좋은 책 발견!!😳 (0) | 2022.02.26 |
[ELK] 🥁ELK stack에 공공데이터 (오픈 api) 넣기 (http_poller) (0) | 2022.02.05 |
[ELK] 🥁logstash http_poller 사용하기 (input, output) (0) | 2022.02.05 |