2023. 12. 18. 19:05 Web/ELK stack 관련
ELK Stack이란?
ELK stack이란?
ELK stack이란 말은 서버 개발자라면 한번 들어봤을 것이다.
ELK stack이란 Elasticsearch Logstash Kibana를 구축하여 활용하는 환경을 의미한다고 보면 된다.
ELK를 구성하는 것들 (위의 3가지)는 각자 맡은 역할이 다르고 장단점도 존재하지만 이 포스팅에서는 크게 다루지는 않고 간단하게 역할만 짚고 넘어간다.
Elasticsearch
elasticsearch는 검색엔진이다.
JAVA 언어 기반으로 구현되었으며 data의 검색 및 집계에 사용된다.
Logstash
다양한 data source로부터 data를 수집 및 집계, 가공할 수 있다.
ELK stack에서의 역할은 수집 및 가공된 data들을 Elastic에 전달하는 역할을 맡는다.
Kibana
kibana는 ELK stack에서 모니터링 및 시각화를 담당한다.
ELK stack의 구성형태 및 처리 순서
. Data processing ( Logstash )
-> log, 혹은 DB등에서 data 수집 ( input )
-> data 변환 ( filter )
-> data 전달 ( output )
. Storage ( Elasticsearch )
-> data의 저장
-> data의 분석
-> data의 관리
. Visualize ( Kibana )
-> dashboard등 다양한 시각화 자료 확인 가능
-> elastic 환경에 대한 접근 제어
ELK의 장점
ELK 의 경우 전반적인 장점으로는 빠른 검색과 특정 data들에 대한 분석, 시각화를 손꼽는다.
더불어 개발자가 아니더라도 ata에 대한 집계 및 검색을 하기 쉽다는것도 장점이다.
그 외의 다양한 모듈등이 존재하며 유연하게 data를 분석,가공 할 수 있는 생태계라는것 역시 장점이다.
실제 작성자가 참여한 프로젝트에서도 ELK를 활용했었는데 서버LOG를 빠른속도로 보기 쉽도록 가공된 상태로 조회한다는게 좋았던 기억이 있다.
ELK의 단점
E, L, K의 각각의 단점이 아닌 ELK stack 자체의 단점으로는 아무래도 리소스를 많이 사용한다는 점과 용량 역시 많이 차지한다는 점이 있다.
또한 ELK stack 환경을 구축하는 것이 해당 정보분석에 다소 과하진 않은가 에 대해서도 충분히 고려해야 한다.
'Web > ELK stack 관련' 카테고리의 다른 글
Elasticsearch에 대해서 (0) | 2023.12.18 |
---|