0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Raspberry Pi と Fluent Bit を使ってSyslogをAzure Log Analytics に集約する

Last updated at Posted at 2021-01-30

image.png

Raspberry Pi と Fluent Bit を使ってSyslogをAzure Log Analytics に集約する仕組みを作ります。

背景

LAN内のSyslogを収集してLog Analyticsへ転送する仕組みとしてOMSエージェントが提供されていますが、OMSエージェントはARMベースのCPUに対応していないためRaspberry Pi にインストールすることができません。
OMSエージェントの代替としてLog Analyticsへ転送する仕組みが組み込まれたFluent BitをRaspberry Pi へ導入、セットアップを行います。
これによりLAN内のSyslogをLog Analyticsへ転送する仕組みを簡単かつ低コストで実現します。

手順

Ansibleを使います。

##事前準備

Raspberry Pi セットアップ

  1. Raspberry Pi Imager を用いてUbuntuServer64bitをインストールします。
  2. 一度SSHにてログインしパスワードを変更します。例:Password123!

セットアップで準備する情報

名前
IPアドレス 192.168.0.200
ユーザ名 ubuntu default
パスワード ???? Password123!

Ansible実行環境

macosの場合はbrew install等を使ってAnsibleをインストールします。

Gitクローン

https://github.com/mochizukithr/oms-agent-raspberry-pi.git

インベントリファイル編集

hosts.example を参考にhostsファイル(インベントリファイル)を作成します。

[pi]
192.168.0.73<事前準備で確認したIPアドレスに書き換える>

[all:vars]
ansible_ssh_port=22
ansible_ssh_user=ubuntu
ansible_ssh_pass=Password123!<事前準備で確認したパスワードに書き換える>

Customer_ID=<Log Analytics画面にて確認>
Shared_Key=<Log Analytics画面にて確認>

Fortigate設定

Fortigateにてsyslogの設定を行います。
log syslogd override-settingを参考に設定を行います。

ポイントはlegacy-reliableをEnableとし、ログの出力形式をRFC3195形式にします。
Fluent BitのParserにてsyslog-rfc3164を設定しているので、この設定をしないと処理できません。

FGT60D (override-setting) # set mode legacy-reliable

最終的に以下のような設定とします。

 # get log syslogd override-setting
override            : enable
status              : enable
server              : 192.168.0.73
mode                : udp
port                : 514
facility            : local7
source-ip           :
format              : default

構築

次のコマンドを実行します。

% ansible-playbook -i hosts site.yml

数分後、Log Analyticsのログ画面を確認するとFortigateのログが記録されています。
image.png

トラブルシューティング

Log Analyticsにログが記録されない場合はRaspberry Pi の /var/log/syslogを確認してください。
Fortigateから送られてきたログの処理状況やLog Analyticsへの送信状況がログとして記録されています。

編集後記

そもそもはCisco CatalystのログをLog Analyticsに送信するのを目的に始めたけど、Catalystのログはsyslog-rfc3164に準拠していなかったため諦めた。やる気になったらそのうちパーサー書くかも。

#参考URL
https://medium.com/@1.luigibruno/raspberry-pi-cloud-data-logging-on-azure-with-fluent-bit-b1efaccdc3f7

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?