Fluentd를 통한 Syslog를 S3로 전달하기

개요

circle-exclamation

이 가이드는 Fluentd를 사용하여 syslog 메시지를 S3로 전송하는 방법을 제공합니다. 파이프라인 흐름은 AWS Firehose 전달 스트림을 통한 방법과 AWS S3 버킷으로 직접 전송하는 두 가지가 있습니다.

사전 요구 사항

이 가이드는 S3 버킷이나 Firehose가 이미 생성되어 있다고 가정합니다. 이러한 리소스 중 하나를 생성해야 하는 경우, 다음을 참조하세요 Fluentd 온보딩 가이드이미 리소스를 프로비저닝한 경우 아래 가이드를 상황에 맞게 조정하여 사용할 수 있습니다.

Fluentd 설정

1단계. Fluentd 설치

다음을 따르세요 Fluentd 설치 가이드arrow-up-right syslog 메시지를 수집하려는 서버 환경에 대해.

2단계. Fluentd 구성 편집

Fluentd를 구성할 때는 Firehose 플러그인을 사용하거나 S3 플러그인을 사용하는 두 가지 옵션이 있습니다. 아래에는 두 옵션에 대한 구성 파일이 있습니다.

두 옵션 모두 로그를 S3로 전달하지만 성능 면에서 Firehose 플러그인 옵션을 권장합니다. 구성에는 두 가지 다른 인증 유형(역할 가정 및 액세스 키)이 표시되어 있습니다. 환경에 가장 적합한 인증 유형을 사용하세요.

Firehose 플러그인 사용(권장)

다음 Fluentd 플러그인arrow-up-right:

Fluentd 구성 편집/etc/td-agent/td-agent.conf 아래 구성으로. 이는 Fluentd가 UDP 포트 5140에서 syslog 이벤트를 수신하고 Kinesis Firehose로 출력할 수 있게 합니다. 아래 구성에서 리전, delivery_stream_namerole_arn 을(를) 업데이트하세요:

S3 플러그인 사용

Fluentd 구성 편집 /etc/td-agent/td-agent.conf 아래 구성으로. 이는 Fluentd가 UDP 포트 5140에서 syslog 이벤트를 수신하고 S3 버킷으로 출력할 수 있게 합니다. 다음을 업데이트하세요: s3_bucket, s3_region, aws_key_idaws_sec_key 을(를) 업데이트하세요:

3단계: Fluentd 시작

Fluentd를 구성한 후 아래 명령을 실행하여 시작하세요:

Fluentd가 실행 중인지 확인하세요:

환경에서 Fluentd 시작에 대한 정보는 Fluentd 설치 가이드arrow-up-right 을(를) 참조하세요. 만약 systemctl 을(를) 사용할 수 없는 경우.

rsyslog 구성

로컬 Fluentd로 전달하도록 rsyslog 구성

구성 rsyslog 다음 두 줄을 /etc/rsyslog.d/50-default.conf 또는 /etc/rsyslog.conf 일부 환경에서는:

아래 명령으로 rsyslog를 재시작하세요:

circle-info

이 단계는 다른 서버에서도 중복해서 수행하여 이 가이드에서 이전에 구성한 Fluentd 서버로 syslog를 전달할 수 있습니다. 로컬 주소를 Fluentd 서버의 IP 주소로 바꾸기만 하면 됩니다. 서버로 udp/5140 트래픽을 전송할 수 있도록 보안 그룹이나 호스트 기반 방화벽을 업데이트해야 할 수도 있습니다. *.* @127.0.0.1:5140 로깅 확인

5~10분 후에 syslog 메시지가 S3 버킷에 기록되고 있는지 확인하세요. 로그는 버킷 내의

syslog/ 접두사 아래에 표시되어야 합니다. 이제 Panther UI에서 S3 버킷을 온보딩하고

Fluentd.Syslog3164 로그 유형을 사용하여 데이터를 온보딩할 수 있습니다. 로그 유형.

Last updated

Was this helpful?