Fluentd를 통해 Syslog를 S3로 전달
마지막 업데이트
도움이 되었나요?
도움이 되었나요?
td-agent-gem install fluent-plugin-kinesis<source>
@type syslog
port 5140
bind 0.0.0.0
tag syslog
<parse>
message_format auto
</parse>
</source>
<filter syslog.** >
@type record_transformer
<record>
tag ${tag}
time ${time}
</record>
</filter>
<match syslog.**>
@type kinesis_firehose
region <FIREHOSE-REGION>
delivery_stream_name <FIREHOSE-NAME>
<assume_role_credentials>
duration_seconds 3600
role_arn <FIREHOSE-ROLE-ARN>
role_session_name "#{Socket.gethostname}-panther-audit"
</assume_role_credentials>
<format>
@type json
</format>
</match><source>
@type syslog
port 5140
bind 0.0.0.0
tag syslog
<parse>
message_format auto
</parse>
</source>
<filter syslog.** >
@type record_transformer
<record>
tag ${tag}
time ${time}
</record>
</filter>
<match syslog.**>
@type s3
aws_key_id <ACCESS-KEY-ID>
aws_sec_key <SECRET-KEY>
s3_bucket <BUCKET-NAME>
s3_region <BUCKET-REGION>
path syslog/%Y/%m/%d/
store_as gzip
<buffer tag,time>
@type file
path /var/log/td-agent/buffer/s3
timekey 300 # 5분 파티션
timekey_wait 2m
timekey_use_utc true # UTC 사용
chunk_limit_size 256m
</buffer>
<format>
@type json
</format>
</match>$ sudo systemctl start td-agent.service $ sudo systemctl status td-agent.service# 로그 메시지를 Fluentd로 전송
*.* @127.0.0.1:5140$ sudo systemctl restart rsyslog.service