キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
6054
閲覧回数
0
いいね!
8
返信

FirePower のSNMPによる情報収集について

mmichigami
Level 1
Level 1

FirePowerの情報をSNMP Managerのほうで監視するためにOIDを指定して情報収集を行っています。

下記の情報を参照しています。

Firepower System: SNMP監視時のOID例 (CPU, Memory, etc)

URL:https://supportforums.cisco.com/ja/document/13230846

メモリ関連のOID例

実メモリ容量
.1.3.6.1.4.1.2021.4.5.0

空きメモリ容量
.1.3.6.1.4.1.2021.4.6.0

上記の情報を取得し、ここからメモリの使用率を算出してます。

a=.1.3.6.1.4.1.2021.4.5

b=.1.3.6.1.4.1.2021.4.6

メモリ使用率=(a-b)/a*100(%)

としています。

しかし、Firepower上で確認するとメモリ使用率が30%程度にも関わらず

上記の計算では、80%を超える結果となってしまいます。

上記のOID情報(a,b)についてSNMP オブジェクトナビゲータで検索したのですが、見当たりません。

参照した情報との違いは、FirePowerのVersionの認識です。

FirePower : 6.0.1.2

1 件の受理された解決策

受理された解決策

ミチガミさん、こんばんわ。

Health Monitorの場合、閾値は Criticalと Warningが設定できます。私の場合は 前者が90%、後者が80%で運用してます。

あと、私は基本 同じHealth Policyを複数デバイスに適用してるので 実施したことはないのですが、デバイス毎に異なるHealth Policyの割り当ても可能なので、例えばASA5506とかASA5512といった低スペックモデルはメモリ閾値を高めに運用する、などの変更も可能かと思います。

ただ、FTD(Firepower)はLinuxベースのシステムなので、LinuxはメモリのFreeが余ってたらキャッシュとして利用するほどメモリ利用に貪欲なため、メモリを結構使ってても問題ないことが多いです。この点がASAやスイッチの運用と異なります。ですので、メモリ閾値は けっこう高めで問題ないと思います。

逆に、CPUやDisk容量はしっかり監視しといたほうがいいかもしれません。

元の投稿で解決策を見る

8件の返信8

Akira Muranaka
Level 8
Level 8

ミチガミさん、こんばんわ。

参考にしていただいているURLに以下記載のある通り、現時点のFTD仕様では SNMPでFTDの全体の監視はできなかったはずです。

上述の通り、SNMPを用いた監視の場合、FTDソフトウェアの一部情報のみ利用可能です。

FTD全体の状態を監視するには、SNMPポーリングではなく、FMCのHealth Monitorと Health Monitor Alertを利用してください。 FMCのHealth Monitor機能は、Firepower Systemの監視に最適化されています。


具体的には、FTDソフトウェアの中の1つのプロセスとして動作する ASAプロセスの情報を取得してきてます。例えば、Windows OS内の Google Chromeブラウザのメモリ使用量を取得してるようなものです。 ので、SNMPでは、FTD全体の正確なメモリ使用状況の監視はできません。

現時点ではFMCの Health Monitorを利用してのメモリ監視を代用するしかなかったはずです。将来的には FTDソフトウェア全体のCPUやメモリ使用率も、SNMPを用いて情報GETやTrap送付ができるようになるのではと思いますが、内部アーキテクチャの修正・統合が必要となり、しばらく先では、と思います。

ご参考になれば。

Muranakaさん

さっそくの回答ありがとうございます。
回答いただいたようにFMCの Health Monitorを利用することで実現できそうですね。
マニュアルを参照して、CPU UsageにてSNMP Alert(Trap)での通知ができそうですが、この場合のしきい値設定は、複数できるのでしょうか?
たとえば、
80%以上 Warning
90%以上 Critical
80%以下になるとNormal
といったような複数のしきい値は設定可能でしょうか?
マニュアルを見る限りでは、複数のPolicyを設定することで可能なようです。

お手数ですが、ご教授いただけると助かります。 

ミチガミさん、こんばんわ。

Health Monitorの場合、閾値は Criticalと Warningが設定できます。私の場合は 前者が90%、後者が80%で運用してます。

あと、私は基本 同じHealth Policyを複数デバイスに適用してるので 実施したことはないのですが、デバイス毎に異なるHealth Policyの割り当ても可能なので、例えばASA5506とかASA5512といった低スペックモデルはメモリ閾値を高めに運用する、などの変更も可能かと思います。

ただ、FTD(Firepower)はLinuxベースのシステムなので、LinuxはメモリのFreeが余ってたらキャッシュとして利用するほどメモリ利用に貪欲なため、メモリを結構使ってても問題ないことが多いです。この点がASAやスイッチの運用と異なります。ですので、メモリ閾値は けっこう高めで問題ないと思います。

逆に、CPUやDisk容量はしっかり監視しといたほうがいいかもしれません。

Muranakaさん

回答ありがとうございます。
いただいた回答で、こちらが想定しているような運用ができそうです。

SNMP Alartの場合ですが、SNMP Mgrに通知するOIDは固定でしょうか?それとも自由に設定可能ですか?固定の場合は、そのOID情報をいただけると助かります。
通知するSNMP Mgr側でそれらのTrapを検知するような設定が必要となるためです。

また、上記の参照したURLにあったOIDは、SNMPナビゲータでの探すことができなかったので、
いただくOID情報のMIBファイルのDL情報もいただけると助かります。

ご教授のほどよろしくお願いします。

ミチガミさん、こんばんわ。

OIDやMIBは、Firepower関連は特殊なため、より細かい情報は、販売代理店さんなどに確認いただいたほうがいいかもしれません。

もしくは、実際にThreshold(閾値)を10%とか低く設定することで 簡単にHealth Monitorの動作チェックやTrap確認ができるので、実機で確認してみるのはいかがでしょうか。

Muranakaさん

ありがとうございました。
OIDについては、しきい値を下げてテストしてみたいと思います。

FirePowerの情報があまりなく、困っていたので、レスポンスよくご回答いただき
たいへん助かりました。ありがとうございました。


昨夜、ここでご質問させてもらい、本日テストしました。
ご教授の通り、CPUのしきい値設定は実施することができ、Trap/syslogともにしきい値を超えると
送信されることも確認できました。

がしかし、同じようにメモリ使用率についても設定をしたのですが、メモリ使用率が30-40%の状態でしきい値設定を10%としてテストしたのですが、Trap/syslogも送信されないという状況になってしまいました。メモリ使用率の設定についてもう少し詳しくご教授いただきたく、よろしくお願いします。

メモリ使用率が30-40%と確認しているのは、FirePowerの下記の画面です。
概要>ダッシュボード>status画面の右下の「systemLoad」に表示されるメモリの部分で確認しています。

こんばんわ。

私の試験環境で確認してみましたが、10%にしてもメモリAlertが飛びませんね。。恐らく、メモリの%と閾値を正しく認識できない、以下の不具合の影響かと思います。

CSCvc49476  Memory usage values in Health Events do not exactly match threshold values

この不具合は、10~40%など 低い閾値を設定した場合に顕著に発生します。逆に80~95%など高い閾値の場合は 概ね閾値通りにTrap出力は期待可能です。 修正バージョンは現在 無いため、低い閾値で運用されたい場合は、修正まで暫くお待ちください。 

 
なお、Memory TrapでNormalも受信できないとなると、恐らく別の原因かと思います。 Health Monitor AlertをNormalで出力可能にすると、以下のようなTrapと、メモリ使用状況が確認できるかと思います。
sysUpTimeInstance = Timeticks: (121647371) 14 days, 1:54:33.71
TRAP?? = OID: enterprises.14223.1.1.0.33
enterprises.14223.1.1.45 = STRING: "Memory Usage"
enterprises.14223.1.1.46 = STRING: "normal"
enterprises.14223.1.1.47 = STRING: "Used 6406.73MB of 12587.54MB (Physical + Swap)"
enterprises.14223.1.1.50 = STRING: "Thu May 11 12:26:25 2017"