Skip to content

BIG-IP で Syslog サーバを設定する

BIG-IP では従来、Syslog メッセージをサーバへ転送するには /etc/syslog-ng/syslog-ng.conf(/var/run/config/syslog-ng.conf)を直接、vi で編集してしまう・・・という方法がありましたが、TMOS v10 からこの方法はサポートされなくなりました。代わりに以下の方法で Syslog サーバを設定する必要があります。

Facility 一覧

SOL5531: Configuring the level of information that syslog-ng sends to log files によると、BIG-IP の Facility 一覧は下記のようになっています。(/var/log/ltm へ Syslog メッセージが出力される)LTM 関連は Local0 と Local4 のようです。

Facility Description Default log file
local0 General BIG-IP specific messages /var/log/ltm
local1 Enterprise Management specific messages (introduced v9.2) /var/log/em
local2 GTM and Link Controller specific messages /var/log/gtm
local3 ASM specific messages (introduced v9.2) /var/log/asm
local4 ITCM portal and server (iControl) specific messages /var/log/ltm
Local5 Packet Filtering specific messages /var/log/pktfilter
local6 HTTPD specific messages /var/log/httpd_errors
local7 Linux specific boot messages /var/log/boot.log
cron Messages related to the cron daemon /var/log/cron
daemon Messages related to BSD daemons (including named and ntpd) /var/log/daemon.log
kern Kernel messages /var/log/kern.log
mail Mail system messages /var/log/maillog
auth User authentication messages that do not contain sensitive information /var/log/secure
authpriv User authentication messages that contain sensitive information /var/log/secure
ftp Unused, messages for ftp are reported under daemon N/A
lpr Unused, printing support is not provided N/A
mark A facility that produces time-stamps at regular intervals N/A
news Unused, news server support is not provided N/A
ntp Unused, messages for ntpd are reported under daemon N/A
user Messages related to user processes /var/log/user.log
uucp Unused None

事前に Syslog 設定ファイルを用意しておく

設定を始める前に予め、BIG-IP 内の適当なディレクトリに Syslog 設定の流し込み用コンフィグを作成しておきます。今回は /var/tmp/syslog-config.txt として下記の内容を作成しました。Local0 と Local4 だけを "192.168.1.77" というアドレスを持つサーバの Syslog ポート(UDP/514)へ転送する設定を記載しています。追加で転送したい Facility などがあれば適宜、編集します。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
syslog include "
destination d_syslog_server {
    udp(\"192.168.1.77\" port (514));
};
log {
    source(s_syslog_pipe);
    filter(f_local0);
    filter(f_no_audit);
    destination(d_syslog_server);
};
log {
    source(s_syslog_pipe);
    filter(f_local4);
    destination(d_syslog_server);
};
"

現在の設定を確認する

現在の Syslog サーバ設定は以下のコマンドで確認することが出来ます。

  1. b syslog remote server show
  2. b syslog include show
  3. b syslog list

設定の流しこみ

Syslog サーバを設定するには事前に用意しておいた設定ファイル(今回は "/var/tmp/syslog-config.txt")を bpsh に流し込みます。流し込み時はエラーが表示されていないことをしっかり確認します。

1
2
3
# bpsh < /var/tmp/syslog-config.txt 

# 

流し込み後は設定を確認しておきます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# b syslog remote server show
SYSLOG - Remote Server: none
# b syslog include show
SYSLOG - Include Data:

destination d_syslog_server {
    udp("192.168.1.77" port (514));
};
log {
    source(s_syslog_pipe);
    filter(f_local0);
    filter(f_no_audit);
    destination(d_syslog_server);
};
log {
    source(s_syslog_pipe);
    filter(f_local4);
    destination(d_syslog_server);
};

設定確認試験を実施する

BIG-IP には logger コマンドがインストールされていますので、任意の Syslog メッセージを生成し、「Syslog サーバへ転送されるか?」確認試験を実施することが出来ます。

1
2
3
4
# logger -s -p local0.warning "[TEST] local0.warning"
root: [TEST] local0.warning
# logger -s -p local4.warning "[TEST] local4.warning"
root: [TEST] local4.warning

logger で Syslog メッセージを生成し「意図したメッセージを Syslog サーバで受信していること」「意図しないメッセージが Syslog メッセージへ転送されていないこと」を確認しておきます。

Syslog サーバの設定を削除する(デフォルトに戻す)

Syslog サーバの設定を削除するには "b syslog remote server default" コマンドを使います。

1
2
3
# b syslog remote server default
BIGpipe configuration item query error:
   01020036:3: The requested configuration item (syslog default remote_server) was not found.

設定を保存する

試験まで OK であれば、Syslog 設定を保存しておきます。設定の保存は "b save all" コマンドと "b load" コマンドを使います。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
# b save all 
/config/bigip_base.conf was renamed to /config/bigip_base.conf.bak (29 lines).
/config/bigip_sys.conf was renamed to /config/bigip_sys.conf.bak (44 lines).
/config/bigip.conf was renamed to /config/bigip.conf.bak (9 lines).
/config/bigip_local.conf was renamed to /config/bigip_local.conf.bak (1 lines).
# b load
Reading configuration from /config/low_profile_base.conf.
Reading configuration from /defaults/config_base.conf.
Reading configuration from /config/bigip_sys.conf.
Reading configuration from /config/bigip_base.conf.
Reading configuration from /usr/share/monitors/base_monitors.conf.
Reading configuration from /config/profile_base.conf.
Reading configuration from /config/daemon.conf.
Reading configuration from /config/bigip.conf.
Reading configuration from /config/bigip_local.conf.
Loading the configuration ...

HA ペアとのコンフィグ同期

Syslog 設定は Config Sync で同期されます。コマンドラインから Config Sync を実施するには "bigpipe config sync all" コマンドを使います。