[모니터링 ELK 스택] 11주차-3일차: Kibana를 통한 대시보드 생성, Logstash 구성요소 이해 및 ELK 파이프라인 구성 실습

limlim·2025년 3월 6일
0

KDT

목록 보기
16/21
  1. Kibana를 활용한 데이터 분석 및 대시보드 생성

1) docker 실행 후 Kibana 접속 (http://localhost:5601)

2) Index Pattern 설정 (sales 인덱스 추가)

3) Discover 탭에서 데이터 조회

4) 시각화 생성 (Bar Chart, Line Chart, Pie Chart 등)

: Kibana 접속 -> Dashboard > New Dashboard 선택

: 차트 종류 선택

: X축, Y축 설정

2.Logstash란?

  • 공식문서: https://www.elastic.co/kr/logstash

  • Logstash는 로그 및 데이터 수집을 자동화하는 오픈소스 데이터 처리 파이프라인임

  • 다양한 소스에서 데이터를 수집하고, 필요에 따라 변환한 후, Elasticsearch 또는 다른 저장소로 데이터를 전송하는 역할을 함

  1. Logstash 특징
  • 다양한 데이터 소스 지원

  • 강력한 데이터 변환 기능

  • 다양한 출력 옵션 제공

  • 유연한 확장성

  • 실시간 데이터 처리 지원

  • JSON 기반 설정 파일 사용

  • 안정성: Logstash 노드 다운 시, Logstash는 Persistent Queue를 사용하여 현재 처리 중인 이벤트에 최소 1회의 전송을 보장함
    (메시지 손실 없음, 중복 가능성, 확인 응답(ACK))

  1. Logstash 아키텍처
  • Logstash는 크게 Input -> Filter -> Output 3단계로 구성됨

  • Input (데이터 수집)

    : 여러 소스로부터 데이터를 수집할 수 있음

    : 주요 Input 플러그인 -> File, Beats, HTTP, JDBC, Kafka

  • Filter (데이터 변환 및 가공)

    : 데이터를 변환, 정제 및 가공하는 역할을 함

    : 주요 Filter 플러그인 -> grok, mutate, json, date, geoip

  • Output (데이터 저장 및 전달)

    : 가공된 데이터를 다양한 대상으로 전송하는 역할을 함

    : 주요 Output 플러그인 -> ElasticSearch, File, Stdout, Kafka

  1. ELK 파이프라인 구축 실습 방법

1) Docker 기반 ELK 스택 실행 (docker-compose.yml)

2) 예제 로그 전송 (nc(netcat) 이용)

echo '{"message":{"data": "hello world"}}' | nc localhost 5001

3) Logstash를 통해 데이터 전송 후 Kibana에서 확인

cf) nc (netcat)이란?

  • 네트워크 유틸리티로, TCP 또는 UDP 프로토콜을 사용하여 네트워크 연결을 생성하고 데이터를 전송할 수 있는 도구임

  • nc <hostname> <port>: TCP 연결 테스트

  • nc -l <port>: 서버 시작

  • macOS 터미널에서는 nc가 기본적으로 설치되어있음
    윈도우 같은 경우 choco install netcat -y 명령어를 통해 설치하고 nc -h 명령어를 통해 설치를 확인할 수 있음

profile
不怕慢,只怕站 개발자

0개의 댓글