Server Build Exercises on AWS (Amazon Web Services) 2022 edition

td-agent-bit (ホスト側)

  • docker コンテナは –log-driver で fluentd を指定して fluent プロトコルを話すので、 それはdockerの仕組みに任せしょう
  • 一方、ホストのログ収集には、fluentd ではなく、 C 言語で書き直された fluent-bit をインストールしましょう
    • fluentd 製作元のトレジャーデータ社が配布するバージョンは名前が異なり、 fluentd を td-agent、 fluent-bit は td-agent-bit という名前になっています。 中身は同じだと思うのですが…(たぶん)

Debian/Linux の場合

sudo apt install td-agent-bit
sudo systemctl enable td-agent
sudo systemctl start  td-agent

設定ファイルは/etc/td-agent-bit/以下にあるファイル群です。 メインの設定ファイルはtd-agent-bit.conf、 ログを分析(parse)する設定がparsers.confにあります。 apacheやnginx、syslogなどの有名な設定は最初からparsers.confに定義されています。

ログを fluentd (ログを収集担当のサーバ側)に投げるには、 /etc/td-agent-bit/td-agent-bit.conf[OUTPUT]をforwardに変更してください

[OUTPUT]
    name  forward
    match *

設定例

Debian/Linux の /var/log/auth.log を監視し、 ログの中から sshd のログだけを抜きだして、 同じホストで動いている fluentd (locahost:24220/tcp)へ転送します

... 省略([INPUT]より上の部分は変更しなくてもよい) ...

[INPUT]
    name tail
    path /var/log/auth.log
    tag  auth

[FILTER]
    name syslog-rfc5424

[FILTER]
    name    grep
    match   *
    regex   sshd

[OUTPUT]
    name  forward
    match *

リファレンス

Last updated on 11 Jan 2022
Published on 11 Jan 2022
Copyright (C) 2021-2022 Ken'ichi Fukamachi, All rights reserved. CC BY-NC-SA 4.0
We appreciate AWS Academy Japan for the offer of the learning environment.

Powered by Hugo. Theme by TechDoc. Designed by Thingsym.