2026年6月29日
2026年6月29日
複数サーバーのログを一元管理する方法(Fluentd)
ステップ1: Fluentdのインストール
まず、各サーバーにFluentdをインストールします。ここではDebianベースのシステムを使用します。
# apt-getを更新し、必要なパッケージをインストール
sudo apt-get update
sudo apt-get install -y td-agent
# td-agentはFluentdの別名です
ステップ2: Fluentdの基本設定
各サーバーでFluentdの基本的な設定を行います。まず、/etc/td-agent/td-agent.confファイルを開きます。
# 設定ファイルを編集する
sudo nano /etc/td-agent/td-agent.conf
ステップ3: カスタムフィルタやプラグインの追加
特定のログ情報だけを集めるためには、カスタムフィルタやプラグインを使用します。ここでは、Apacheアクセスログを例に説明します。
# ApacheアクセスログをFluentdが処理できる形式に変換するプラグインを使用
<filter apache.access>
@type parser
format /^(?<remote>[^ ]*) (.*)(\[(?<time>[^\]]+)\]) "(?[^"]*)" (?<status>\d{3}) (?<size>\d+)(:? "(?<referer>.*)") (?:"(?<agent>.*)")
</filter>
ステップ4: ログを集約するリモートサーバーの設定
ログを集約するリモートサーバー(Fluentd Collect Server)を設定します。ここでは、このサーバーもFluentdを使用することに注意してください。
# 設定ファイルを開きます
sudo nano /etc/td-agent/td-agent.conf
# Fluentdのインストールと同様の手順で設定を行います
注意事項
- 確認のために、各サーバーのFluentdを再起動します。
- ネットワーク接続が確保されていることを確認してください。
- セキュリティ上の注意:ネットワーク経由での通信は暗号化することをお勧めします。
まとめ
1. インストール: 各サーバーにFluentdをインストールします。
2. 基本設定: /etc/td-agent/td-agent.confファイルで基本設定を行います。
3. カスタムフィルタやプラグインの追加: 必要なログ情報を処理するためのフィルターやプラグインを追加します。
4. リモートサーバー設定: ログを集約するリモートサーバーもFluentdを使用し、必要な設定を行います。
関連記事: