• 3
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

BIG-IPでのSMTP設定について

monitor監視とFAILOVER検知のために、SNMPで監視サーバからアラートを出す予定が、
SNMPサーバの構築が間に合わない! ><
と言われたので、直BIG-IPからメールで出せないかと試してみた。

GUIのSystemにSMTP設定できる項目があるけど、
あれは偽物っぽい。というか違う用途で使うのかな?

簡単な流れをいうと2つのconfファイルに設定追加をすればメールが飛ぶ
・ssmtp.conf → SMTPサーバ指定
・alert.conf → メールを出す条件を指定

[ssmtp.conf] の設定変更

コンソールからBIG-IPにログイン

1.1. バックアップ
# cp -p /etc/ssmtp/ssmtp.conf{,.bak}

1.2. 権限変更
# chmod 644 /etc/ssmtp/ssmtpt.conf

1.3. ファイルの修正
メモ帳で下記の行にSMTPサーバを追記
mailhub=192.168.XXX.XXX
FromLineOverride=YES
名前解決できるなら、ドメイン名とかでもOKだと思います。
→BIG-IPにDNS設定したことないからわからないけど……。
書いたらセーブは忘れずにね。
※FromLineOverrideは、#のコメントアウトを外すだけ。
 この設定を有効化しないと、FromAddressが書き換わらない

1.4. 権限修正(元に戻す)
# chmod 444 /etc/ssmtp/ssmtpt.conf

これでSMTPサーバ指定が完了

[alertd.conf] の設定変更

SNMP-Trapを飛ばすところが書かれているconfigファイルを書き換える。
つまりSNMP-Trapが飛ぶタイミングで、SMTPも飛ばす設定を追加しちゃいます。

2.1. バックアップ
# cp -p /etc/alertd/alert.conf{,.bak}

2.2. 権限変更
# chmod 644 /etc/alertd/alert.conf

2.3. conf修正
SMTP-TrapのOIDが書かれているところに下記を追加する

;
 email toaddress="toaddress@XXXX.com"
 fromaddress="fromaddress@XXXX.com"
 body="";

monitor断検知と、FAILOVER検知をしたい場合は下記に追加。

  # monitor 実際はこんなコメントアウトはないよ
   alert BIGIP_MCPD_MCPDERR_POOL_MEMBER_MON_STATUS { 
           snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.10" 

   }
  # failover  実際はこんなコメントアウトはないよ
   BIGIP_SOD_SODERR_SOD_STANDBY { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.14"; 

   BIGIP_SOD_SODERR_SOD_ACTIVE { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.15"; 

   BIGIP_SOD_SODERR_SOD_UNIT { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.16" 

実際に追加してみる

# vi /etc/alertd/alert.conf

alert.conf
   alert BIGIP_MCPD_MCPDERR_POOL_MEMBER_MON_STATUS { 
           snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.10";
           email toaddress="toaddress@XXXX.com"
           fromaddress="fromaddress@XXXX.com"
           body="";
   }

   BIGIP_SOD_SODERR_SOD_STANDBY { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.14"; 
   email toaddress="toaddress@XXXX.com"
   fromaddress="fromaddress@XXXX.com"
   body="";
   lcdwarn description="CPU Temp too high." priority="3"
   }
   BIGIP_SOD_SODERR_SOD_ACTIVE { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.15"; 
   email toaddress="toaddress@XXXX.com"
   fromaddress="fromaddress@XXXX.com"
   body="";
   lcdwarn description="CPU Temp too high." priority="3"
   }
   BIGIP_SOD_SODERR_SOD_UNIT { 
   snmptrap OID=".1.3.6.1.4.1.3375.2.4.0.16";
   email toaddress="toaddress@XXXX.com"
   fromaddress="fromaddress@XXXX.com"
   body="";
   }

2.4. 権限修正(元に戻す)
# chmod 444 /etc/alertd/alert.conf

2.5. alertdサービスの再起動
# bigstart restart alertd

再起動で断はなかった。Virtual Addressにpingを打ちながら再起動した結果により。

障害試験

FAILOVERをしたり、
monitor検知が失敗するようサーバの調整をしたりして、
実際にメールが飛ぶかを検証する。
メール送信が失敗したら /var/log/maillog
→ SMTPサーバに25番ポートで接続失敗ログが出た

あと、もしmgmtポートからSMTP通信をしたい場合は、management-routeの設定を追加かな。
→できませんでした。うーん、無理なのかな。

メモ

・config syncしない
→ HAを組んでいたら、両機ともに設定変更が必要
・Archive で作られるucsファイルには保存されない

追記

20160324追記
・FromLineOverrideのコメントアウト
・ssmtpも権限変えて更新する手順に変更