개념 사전 · 프로그램

Kibana

키바나

는 에 저장된 자료를 탐색·시각화하고 Elastic 기능을 관리하는 웹 인터페이스다. 화면의 검색 범위와 시간 필드가 무엇인지 알아야 데이터 없음과 수집 실패를 구분할 수 있다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 에서 원본 이벤트와 필드를 탐색한다.
  • 대시보드로 사건·성능 수치를 비교한다.
  • 데이터·조회 권한과 관련 설정을 관리한다.

02어떤 순서로 동작하나

  1. 자료 선택

    의 대상 인덱스·데이터 스트림과 접근 권한을 확인한다. 에 연결된 것만으로 자료가 자동 수집되는 것은 아니다.

  2. 탐색 범위 설정

    와 시간 필드를 선택하고 실제 이벤트가 들어 있는 시간 범위를 지정한다. 잘못 해석된 시간대는 화면에서 누락처럼 보일 수 있다.

  3. 필드 질의

    문서와 Mapping을 보고 문자열·숫자·날짜 조건을 구성한다. 검색 언어와 분석된 text·정확 일치 keyword의 의미를 구분한다.

  4. 시각화 검증

    집계 패널의 분모·필터·시간 간격을 원본 문서와 대조한다. 같은 데이터도 집계 방식이 다르면 그래프의 수치가 다르게 보인다.

03먼저 알아둘 용어와 구성요소

탐색할 인덱스·데이터 스트림과 시간 필드 등의 범위를 정의하는 객체.
문서 목록과 필드로 데이터를 검색·탐색하는 화면.
선택한 발생 시각 필드의 조회 범위.
여러 시각화 패널과 필터를 묶은 화면.
가 검색·집계할 문서를 저장하는 분산 검색 엔진.
LEARN THROUGH PRACTICE

Filebeat 입력 설정에서 Kibana 문서 세 건까지 추적하기

설정 파일의 입력·출력과 검색 화면의 문서·시간·필드를 연결한다.

실습 구성과 전제

  • 자신의 격리 Elastic 환경과 비밀값을 별도로 관리한 수집 계정을 사용한다.
  • 설정 화면과 검색 화면은 같은 제품의 서로 다른 수집 사례다. filestream 입력이 사진 속 세 문서의 유일한 출처였다고 단정하지 않는다.
  1. 입력 경로와 출력 주소를 분리한다

    • filestream은 paths에 일치하는 파일을 수집하고 output.는 문서를 보낼 목적지를 정한다. setup.는 대시보드 등의 설정 연결이며 로그 본문을 로 직접 보내는 경로가 아니다.
    • 사진에는 시험용 관리자 계정이 보이지만 실제 배포에서는 전용 권한·keystore를 사용한다. fingerprint 길이와 작은 파일 처리 조건은 설치 버전의 문서로 확인한다.
    shell
    filebeat test config -e
    filebeat test output -e

    실제 비밀값이 출력될 수 있는 디버그 로그는 외부에 복사하지 않는다.

    Beats 수집과 Elastic 연결 · Elasticsearch에 실제 데이터가 들어오는지 확인 (2)원본 크기로 보기 ↗
    • setup.kibana, output.elasticsearch, filebeat.inputs 세 블록이 나뉘어 보인다.
    • filestream의 id·paths와 fingerprint.length 64가 표시된다. 필드 이름은 같아도 버전별 기본 동작을 확인해야 한다.
    확인 기준

    filebeat test config와 test output을 각각 수행해 문법과 연결을 구분한다.

  2. 시간 필터와 문서 수를 먼저 확인한다

    • 에서 와 시간 범위를 맞춘 뒤 Documents 수를 읽는다. 서비스가 실행 중이어도 해당 인덱스·시간 범위에 문서가 없으면 검색은 비어 있다.
    • 화면의 세 문서는 테스트 로그·로그인 성공·결제 오류라는 메시지를 가진다. 메시지 이름은 사건 분류의 입력이며 실제 비즈니스 성공을 독립 검증한 값은 아니다.
    Elastic·Kibana 운영 · Discover (5)원본 크기로 보기 ↗
    • Data view는 elk-basic이고 시간 범위는 Last 7 days, Documents는 3으로 표시된다.
    • 각 행에 @timestamp·host.hostname·message·_index가 보여 수집 문서를 구조화된 필드로 읽을 수 있다.
    확인 기준

    시각·인덱스·데이터 뷰가 틀려 생긴 빈 결과와 수집 실패를 분리한다.

  3. 검색어와 필드 조건의 차이를 시험한다

    • 사진의 검색창은 호스트 이름 문자열을 검색한다. 정확한 필드 조건을 쓰려면 KQL의 필드:값 구문과 해당 필드의 매핑을 확인한다.
    • 원본 message와 event.original을 보존하면서 필요한 구조 필드를 추가하고, 파싱 실패를 성공 문서와 구분한다.
    text
    host.hostname : "lab-host"

    KQL의 필드 조건 예시. 자신의 문서에 저장된 호스트 이름으로 바꾼다.

    Elastic·Kibana 운영 · Discover (6)원본 크기로 보기 ↗
    • 왼쪽 Available fields에 @timestamp·event.original·host.hostname·lab·message가 보인다.
    • 검색 후에도 Documents 3이 보이며 호스트 문자열이 강조된다. 강조 표시만으로 정확한 필드 동등 비교가 수행됐다고 해석하지 않는다.
    확인 기준

    시간 범위와 필드 매핑을 고정한 뒤 검색 결과 수를 비교한다.

실습에서 확인한 동작 원리

  • 설정 연결과 문서 출력은 다른 경로다.
  • 검색 결과는 데이터 뷰·시간·필드 매핑 조건에 의존한다.
관련 개념·전체 실습 화면 이어서 읽기 →
동작·명령 참고 문서

04예제로 따라가기

  • 가상 이벤트의 발생 시각이 어제로 파싱되었다면 최근 15분 화면에는 보이지 않아도 실제로 적재되어 있을 수 있다.
  • status가 숫자인 필드와 문자열인 필드는 같은 모양의 값이어도 질의와 집계 조건이 달라질 수 있다.
  • 문서 수 그래프와 서로 다른 사용자 수 그래프는 같은 시간 범위에서 서로 다른 질문에 답한다.

05혼동하기 쉬운 점과 확인 기준

  • 의 정상 응답은 소스→수집기→인덱스의 전체 파이프라인 정상 여부를 보장하지 않는다.
  • 화면 권한과 데이터 권한이 다를 수 있으므로 관리자로만 되는 조회를 일반 사용자에게도 가능한 것으로 일반화하지 않는다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.