YOGAE

TODO: FIXME:

Beat

07 Apr 2019

엣지 서버에서 에이전트로 설치되는 경량 데이터 수집기입니다. 모든 비트는 입력 및 출력 옵션 설정, 이벤트 처리, 로깅 구현 등 여러 기능과ㅏ 더불어 데이터를 일래스틱서치, 로그스태시, 래디스, 카프카 등 다양한 곳으로 전송하는 API를 제공합니다. 립 비트 라이브러리는 Go 프로그래밍 언어로 작성되었습니다.

일반적으로 사용하는 비트

파일 비트

로컬 파일에서 로그를 수집하는 경량 로그 수집기입니다.

구성

  • Prospectors

    로그를 읽을 파일 목록을 구분하는 역할을 담당

  • Havesters

    로그를 읽는 역할을 담당, 파일을 행 단위로 읽고 출력으로 보냄

  • Spooler

    이벤트를 집계하고 설정한 출력으로 전달

이키텍처

마지막 읽은 상태는 Havester의 offset으로, 디스크에 주기적으로 기록하여 이는 registry 파일에서 관리합니다.

출력 위치에 문제가 발생한 경우, 파일비트는 마지막으로 보낸 행을 기록하고, 문제가 해결될 때까지 계속 파일을 읽습니다.

파일비트를 다시 시작할 때 레지스트 파일에 있는 데이터를 기반으로 상태를 복구하는 데 사용하며, 기록해둔 위치부터 각 Harvaester가 동작합니다.

파일비트는 이벤트가 지정한 출력 위치로 최소한 한 번은 데이터 손실 없이 전달되도록 보장합니다.

메트릭 비트

운영체제 및 서버에서 실행 중인 서비스 메트릭을 주기적으로 수집합니다. 운영체제뿐 아니라 아파치, 몽고 DB, 레디스 등 다양한 서비스 메트릭을 수집하기 때문에 서버를 모니터링하는 데 유용합니다.

패킷 비트

실시간 네트워크 패킷 분석기입니다. 버그나 성능 문제와 같은 백엔드 애플리케이션에서 발생하는 문제를 쉽게 알아차리고 문제를 해결하는 데 도움을 줍니다.

하트 비트

서비스 활성 상태 여부, 서비스 가능 여부를 모니터링합니다. 원격 서버에 경량 데몬으로 하트비트를 설치하면 주기적으로 실행중인 서비스 상태를 모니터링하며, ICMP, TCP, HTTP를 지원합니다.

윈로그 비트

윈도우 플랫폼에 특화된 비트입니다. 윈도우 XP이상에서 윈도우 서비스로 설치한 후, 윈도우 API를 사용해 여러 이벤트 로그를 수집합니다.

오디트 비트

일래스틱 스택 6.0 버전에서 구현된 새로운 비트 제품군입니다. 서버에 설치해 사용자 활동을 모니터링하고, 리눅스의 auditd를 거드리지 않고도 일래스틱 스택에서 이벤트 데이터를 분석하고 처리합니다.

로그스태시와 비트의 차이점

비트는 경량 에이전트로 더 적은 자원을 소비하기 때문에 운영 데이터를 수집하고 전달해야 하는 엣지 서버에 설치해 사용합니다. 하지만 비트는 이벤트 변환 및 분석, 즉 로그스태시에서 제공하는 강력한 기능이 없습니다. 로그스태시는 데이터 처리를 위해 이벤트를 수신하는 엣지 서버보다 전용 서버에 설치하는 것이 좋습니다.