SIEM環境でのSNMPの理解とZevenetアプライアンスの監視

投稿者 Zevenet | 14年2019月XNUMX日

SNMPの紹介

SNMP またはSimple Network Management Protocolは、以下によって定義されているアプリケーション層プロトコルです。 IETF でそれは現在の修正です RFC 1157. SNMP そのデータ表現を ASN.1 (プレゼンテーション層プロトコル)の修正。 IETF RFC 1065 as SMI (管理情報の構造と識別)

SNMP 同期(またはポーリング)と非同期の2つの動作方法が可能です。 同期モードは最も一般的な使用方法です。 SNMP送信することで動作します PDU (プロトコルデータユニット実装されている管理対象デバイスへ) SNMP ネットワークでは、それらのPDUはデータ検索のためにあるかもしれません(GetRequest(デバイスからの応答が必要です)GetResponseメソッド)または特定のオブジェクトに値を設定する(SetRequest).

SNMP 非同期モードでは、 トラップ。 トラップは迷惑なアラートです PDU これらのトラップは、管理対象デバイスから中央のトラップコレクタステーションに送信された場合、監視対象デバイスで重大なイベントが発生したことを示します。 UDP ポート162。

MIB - 管理情報ベース

管理できる各オブジェクト SNMP は階層的にグループ化され、という特別なファイルで表されます。 MIBファイルこれらのMIBは、ツリーの下に整理された管理対象オブジェクトのグループの記述子です。 OID (オブジェクト識別子)それぞれのオブジェクトを一意に識別します。

次の図に、MIBの内容の例を示します。

最も一般的なの一つ MIB ファイルは IETF MIB-II.

SNMP - アーキテクチャ

SNMPは、そのアーキテクチャにおいて3タイプのエンティティを定義しています。

ネットワーク管理ステーション:管理アプリケーションを実行して、ネットワーク要素を制御および監視します。
ネットワーク要素:ネットワーク管理ステーションによって監視されるZevenet Load Balancerなどのデバイス。
エージェント:特定のOIDの値を取得するなど、ネットワーク管理ステーションから送信された注文の実行を担当するソフトウェア。

次の図は、ネットワーク内の通常のSNMPアーキテクチャの例を示しています。

ZevenetアプライアンスでのSNMPの設定

Zevenetアプライアンスには付属しています SNMP エージェントは、Debian GNU / Linuxのデフォルトを許可するように実装されています。 OID ロードバランサの状態を制御するために、ネットワーク管理ステーションによって同期的にポーリングされます。

ZevenetアプライアンスでSNMPを設定するには、次のようにWeb GUIを通して簡単な方法で行うことができます。

1. アプライアンスWeb GUIにナビゲートし、セクションに行きなさい システム>ローカルサービス サイドバー上:

2. SNMPチェックボックスを有効にし、着信要求を許可するインターフェイスを構成します。 ここで管理インターフェースを設定することをお勧めします。

3. リスニングポートと コミュニティ 名前を要求するときは、その名前が必要であることに注意してください。 OID リクエストに含める必要があります。

4. 最後のフィールドは、サービスが着信要求を許可するIPアドレスまたはサブネットです。

このサービスを使用すると、適切なトラフィック動作を保証するために、集中型SIEMプラットフォームでアプリケーション配信を監視できます。

以下のいくつかの有用な見つけてください SNMP OID ロードバランサーを適切に監視するため。 たくさんの違いがあることに注意してください OID 使用するため、次のようなツールの使用をお勧めします snmptranslate ネットワーク管理者にとってわかりやすい名前に変換するためです。

メモリ統計情報のSNMP OID

以下を使用してください OID 異なるメモリ統計を取得するためのZevenetアプライアンス用:

memTotalSwap:ホスト用に構成された合計スワップスペース(kB)(.1.3.6.1.4.1.2021.4.3.0)
memAvailSwap:現在kBで利用可能なスワップ空間(.1.3.6.1.4.1.2021.4.4.0)
memAvailSwap:ホストにインストールされている実メモリ(KB)(.1.3.6.1.4.1.2021.4.5.0)
memAvailReal:キロバイトで利用可能な実メモリ(.1.3.6.1.4.1.2021.4.6.0)
memTotalFree:空きメモリの合計(KB)(.1.3.6.1.4.1.2021.4.11.0)
memShared共有メモリとして使用するために割り当てられている実メモリまたは仮想メモリの合計(KB).1.3.6.1.4.1.2021.4.13.0)
memBuffer:メモリバッファとして使用するために割り当てられている実メモリまたは仮想メモリの合計(KB).1.3.6.1.4.1.2021.4.14.0)
memCached:キャッシュメモリとして使用するために割り当てられている実メモリまたは仮想メモリの合計(KB).1.3.6.1.4.1.2021.4.15.0)

CPU負荷統計情報のSNMP OID

以下を使用してください OID CPU負荷値を取得するためのZevenetアプライアンスの場合:

1分CPU負荷(.1.3.6.1.4.1.2021.10.1.3.1)
5分CPU負荷(.1.3.6.1.4.1.2021.10.1.3.2)
15分CPU負荷(.1.3.6.1.4.1.2021.10.1.3.3)

CPU統計情報のSNMP OID

以下を使用してください OID CPU統計を取得するためのZevenetアプライアンス用:

SsCpuSystem:システムCPU処理システムレベル時間の割合(.1.3.6.1.4.1.2021.11.10.0)
ssCpuRawSystem:システムレベルのコードに費やされたティック(.1.3.6.1.4.1.2021.11.52.0)
ssCpuIdle:アイドル状態のプロセッサ時間の割合(.1.3.6.1.4.1.2021.11.11.0)
ssCpuRawIdle:ticksはcpuで忙しく過ごしました(.1.3.6.1.4.1.2021.11.53.0)

ネットワークインターフェイス統計情報のSNMP OID

以下を使用してください OID ネットワークインターフェースの統計情報を取得するためのZevenetアプライアンス用:

ifNumber:システム内のインタフェース数(1.3.6.1.2.1.2.1)
インターフェース:インターフェース統計の表(1.3.6.1.2.1.2.2)

この OID の表に対応します MIB2。 テーブルは、スカラオブジェクトとは表現方法が異なります。 テーブルを想像してみてください。 OID xTable、列あり 大腸菌の とインデックス i、列にアクセスする Col1 とインデックス 1、我々は要求する必要があります 軽蔑 for xTable.xEntry.Col1.1ここで、 xEntry 概念的な意味しかないので、列のすべてのエントリを取得することもできます。 Col1 ととも​​に snmpwalk 〜へ xTable.xEntry.Col1 またはでテーブル全体を取得する snmpwalk そのへ OID (xTable.xEntry) 列として得られるものを見てみましょう:

ifDescrインタフェース名(1.3.6.1.2.1.2.2.1.2)
ifType:インターフェース・タイプ、例えば、イーサネット(1.3.6.1.2.1.2.2.1.3)
ifMtu:最大転送単位(1.3.6.1.2.1.2.2.1.4)
ifSpeed:現在の推定帯域幅または公称帯域幅(b / s)1.3.6.1.2.1.2.2.1.5)
ifPhysAddress:下位プロトコル層アドレス、たとえばMACアドレス(1.3.6.1.2.1.2.2.1.6)
ifOperStatus: 現在の状態 (1.3.6.1.2.1.2.2.1.8)
ifInOctets:受信オクテット数(1.3.6.1.2.1.2.2.1.10)
ifInUcastPkts:着信ユニキャストパケット数(1.3.6.1.2.1.2.2.1.11)
ifInDiscards廃棄されたインバウンドパケット数1.3.6.1.2.1.2.2.1.13)
ifInErrors:配信できないエラーがある受信パケットの数(1.3.6.1.2.1.2.2.1.14)
ifOutOctets:送信オクテット数(1.3.6.1.2.1.2.2.1.16)
ifOutUcastPkts:送信ユニキャストパケット数(1.3.6.1.2.1.2.2.1.17)
ifOutDiscards:廃棄した送信パケット数(1.3.6.1.2.1.2.2.1.19)
ifOutErrors:送信できなかったエラーのある発信パケットの数(1.3.6.1.2.1.2.2.1.20)

ロードバランサからのSNMPモニタリングをバックエンド

一方、SNMPはバックエンドメトリックを収集し、それらを使用してスケジューラの動作を変更したり、バックエンドのアクティブ化と非アクティブ化を自動化したりするのに使用できるため、ロードバランサの観点では非常に役立ちます。 参照する このリンク SNMPでカスタムファームガーディアンチェックを使用する方法に関する詳細情報を取得するには。

追加のアプリケーション配信監視

ファーム、バックエンド、クラスタリングの統計や状態など、特定の監視値を取得する必要があるユースケースがあります。 これらの特定の値を収集するには、以下に従ってください この記事 それはまたを通してすることができます REST API.

さらなる監視リソース

以下のリンクからZevenetアプライアンスをNagiosまたはZabbixで監視する方法に関する記事を参照してください。

https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-nagios/
https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-zabbix/

この記事が役に立つと思い、次のレベルの使用に進むことを願っています SNMP 監視するために Zevenetアプライアンス!

リファレンス

UCD-SNMP-MIB http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt
SNMPプロトコルのRFC: https://tools.ietf.org/html/rfc1157
SIM RFC: https://tools.ietf.org/html/rfc1065
net-snmp: http://www.net-snmp.org/wiki/
Debianウィキsnmp: https://wiki.debian.org/SNMP
UCD-SNMP-MIB: http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt

上の共有:

GNU Free Documentation Licenseの条項に基づくドキュメンテーション。

この記事は役に立ちましたか?

関連記事