Fluent-bit

Fluent Bit은 경량의 로그 데이터 수집기로서, 데이터를 수집하고 처리하는 데 사용됩니다 애플리케이션에 sidecar 형태로 Flentbit를 설치하여 애플리케이션의 로그를 파싱하여 데이터 수집, 처리 및 전송을 담당하는 Opentelemetry-Collector로 전달하는 형태입니다.

위 가이드는 애플리케이션이 /var/log의 디렉토리안에 로그를 저장하는 방식에 대해 설명합니다 사용자의 환경에 맞게 디렉토리 수정과 로그 패턴을 수정하시길 바랍니다.

1. Fluent-bit 설정

1) 컨테이너 생성

로그를 수집할 애플리케이션 - 설정 - 컨테이너 "추가" 버튼을 클릭하여 다음과 같이 컨테이너를 생성합니다.

이미지: fluent/fluent-bit:3.0.0

저장버튼을 누르게 되면 기존 애플리케이션에 fluent-bit sidecar 형식으로 컨테이너가 실행됩니다.

2. 애플리케이션 설정

1) 로깅 - 애플리케이션 관리 에서 생성한 애플리케이션의 토큰 복사

2) 볼륨 마운트 - 로그

Log Appender에 설정한 경로에 로그가 저장되므로 컨테이너에서 볼륨을 생성하고 마운트해야합니다.

로그를 수집할 애플리케이션 - 설정 - 볼륨 - "생성" 버튼을 클릭하여 다음과 같이 볼륨을 생성합니다.

볼륨 유형 : Empty Dir

볼륨 명 : 사용자 지정 이름

다음은 생성한 볼륨을 마운트하는 과정입니다.

로그를 수집할 애플리케이션 - 설정 - 볼륨 마운트 - "추가" 버튼을 클릭하여 다음과 같이 설정하여 볼륨에 마운트시킵니다.

컨테이너 경로 : Log Appender에서 설정한 파일 경로 (eg. /var/log)

3) 볼륨 마운트 - Fluent-bit

컨테이너가 로그를 저장하는 디렉토리 경로에 마운트해야 파일을 읽어 로그를 파싱할 수 있습니다.

또한 fluent-bit가 제공하는 Config를 통하여 라벨을 추가하거나, 라벨 이름을 바꿀수 있습니다.

fluent-bit Config Map 생성

로그를 수집할 서비스맵 - 설정 정보 - "생성" 버튼을 클릭하여 컨피그 맵을 클릭합니다.

이름 : 사용자가 설정할 컨피그 맵의 이름

설명 : 추가적으로 사용자가 명시할 컨피그 맵의 설명

"추가" 버튼을 클릭하여 컨피그 파일을 추가합니다.

다음 컨피그 파일은 절대적인 방식은 아닙니다. 로그를 적재하는 위치나, 로그 패턴이 다를 수 있으므로 사용자의 환경에 맞게 설정하길 바랍니다.

fluent-bit.conf

log-agent 서비스 주소 : 인프라 - 클러스터 - 애드온 - 'log-agent' 클릭 후 서비스 이름 확인

( http 포트 = 4318 , grpc 포트 = 4317)

parsers.conf

rewrite.lua

컨피그 맵 생성이 완료되면 다시 애플리케이션으로 돌아와 볼륨을 생성합니다.

로그를 수집할 애플리케이션 - 설정 - 볼륨 - "생성" 버튼을 클릭하여 다음과 같이 볼륨을 생성합니다.

볼륨 유형 : Config Map

볼륨 명 : 사용자 지정 이름

컨피그맵 : 사용자가 생성한 컨피그맵 이름

권한 : 644

다음은 생성한 볼륨을 마운트하는 과정입니다.

로그를 수집할 애플리케이션 - 설정 - 볼륨 마운트 - "추가" 버튼을 클릭하여 다음과 같이 설정하여 볼륨에 마운트시킵니다.

컨테이너 경로 : Log Data - 로그가 저장된 디렉토리 경로 (eg. /var/log)

컨테이너 경로 : Fluent-bit -conf -fluent-bit의 설정파일 경로 (eg. /fluent-bit/etc)

fluent-bit 컨테이너가 정상적으로 작동하지 않을때

4. 애플리케이션 로그 확인

1) 로깅 - 애플리케이션 로그 - 애플리케이션 목록에서 설정한 애플리케이션 검색

Last updated