Zabbixシステム上のCisco、D-Link、3Com、Zyxelスイッチの監視

監視は ITシステムの高可用性を確保するための柱の1つです。

原則として、システム管理者は、監視システムをインストールするときに、まずサーバーパラメータを確認し、これらのサーバーで実行されているサービスのアクセス不能を検出するようにシステムを構成します。 もちろんこれは優先事項ですが、UPS、エアコン、ネットワーク機器などの他の機器も忘れないでください。



このトピックでは、Zabbixシステムでアクティブなネットワーク機器(スイッチ、ルーターなど)を監視する問題を、30分でいくつかの便利なツールを使用して解決する方法を示します。 その結果、ネットワークで何が起こっているのかを完全に把握できます。



トレンディなネットワークマップ





監視を有効にする



ほとんどのシステム管理者が、さまざまなモデルやベンダーの機器の継承された「動物園」で作業しなければならないと言っても、私は間違いないと思います。 幸い、ほとんどのモデルはオープンSNMPプロトコルをサポートしています 。 これにより、ネットワークインターフェイスのステータスに関する情報を受け取ります。



すでにZabbixがインストールされているとします。 SNMPを使用するには、次のものが必要です。
  1. ネットワークデバイスでSNMPサポートを有効にします(コマンドはメーカーによって異なります)
  2. 対応するアイテムをZabbixに追加します-パラメーターごとに1つ。 これを行うには、使用されているSNMPのバージョン、 SNMP OIDパラメーターの正しい識別子、およびSNMPコミュニティ (ユーザー名など)を指定します
  3. 不要なアイテムの値を追跡するトリガーを追加します


各ネットワークポートには複数の監視対象パラメータがあり、一般的なスイッチには24個または48個のポートがあり、ネットワーク内には数十個のスイッチがある場合があるため、手動構成には時間がかかりすぎます。



タスクを容易にするために、テンプレートを使用する必要があります。 テンプレートには、必要なすべてのアイテム、トリガー、グラフが含まれています。ホストを起動して、テンプレートを接続するだけです。

Zabbix用の既製のテンプレートはすでに多くあり、グーグルでもマニュアルでも見ることができます。

必要なテンプレートが見つからなかった場合、落胆しないでください。原則として、メーカーはRFC1213およびRFC2233の標準OIDを使用します。

sysName.0 ノード名
.1.3.6.1.2.1.1.3.0 稼働時間
.1.3.6.1.2.1.2.2.1.8.X ポートステータス:1(アップ)/ 2(ダウン) Xはポート番号です。

シスコには5桁のポート番号があります。

100 Mbpsポートの場合は100XX、

1 Gbpsの101XX
.1.3.6.1.2.1.2.2.1.16.X 送信されたバイト
.1.3.6.1.2.1.2.2.1.10.X 受信したバイト
.1.3.6.1.2.1.31.1.1.1.5.X 送信されたブロードキャストパケット
.1.3.6.1.2.1.31.1.1.1.3.X 受信したブロードキャストパケット
.1.3.6.1.2.1.31.1.1.1.4.X 送信されたマルチキャストパケット
.1.3.6.1.2.1.31.1.1.1.2.X 受け入れられたマルチキャストパッケージ
.1.3.6.1.2.1.2.2.1.17.X 送信されたユニキャストパケット
.1.3.6.1.2.1.2.2.1.11.X 受け入れられたユニキャストパッケージ
.1.3.6.1.2.1.2.2.1.20.X 送信エラー
.1.3.6.1.2.1.2.2.1.14.X 受信エラー
さらに、インターフェイス名、MTU、速度、その他のパラメーターを読み取ることができます。 シスコのWebサイトの完全なリスト参照してください。



Cisco Catalystは通常、さらに次をサポートします。

.1.3.6.1.4.1.9.9.109.1.1.1.1.5.1-CPU負荷の割合

.1.3.6.1.4.1.9.9.48.1.1.1.5.1-占有メモリ(バイト単位)

.1.3.6.1.4.1.9.5.1.2.13.0-温度ステータス(1-正常、2-高、3-重大)



テンプレートジェネレーター



識別子が標準化されていることに注目して、すべてのポートに必要なOIDを使用してZabbixのXMLテンプレートを生成できる単純な PHP スクリプトを作成しました。 シスコの機器(500G、2960、3550、3750)、3Com(2426、2924、2948)、D-LinkとZyxel 4012のペアでテストしました( ソースは誰でもダウンロードできます )。

ジェネレーターは、次のことができるテンプレートを作成します。

デバイス用のテンプレートを生成して保存したら、それをエクスポートします。[ 設定 ]→[ テンプレート ]に移動し、右上の[ インポート ]ボタンをクリックします。 新しいホストを作成するか、既存のホストを編集します-テンプレートをそれにバインドします。

パラメーター(SNMPコミュニティなど)を変更する場合は、Zabbixで直接行うことができます:[ 設定] →[ テンプレート]のテンプレートに移動し 、[ アイテム]でチェックマークの付いた必要な要素を選択し、ドロップダウンリストから[ 一括 更新]を選択します。



その結果、素晴らしいグラフィックが得られます:











デバッグ



テンプレートがデバイスに追加されてから数分経過し、SNMPからのデータが表示されなかった場合、Zabbixサーバーがデバイスからデータを読み取れるかどうかを確認する必要があります。 これは、snmpgetユーティリティを使用して行われます。

snmpget -v _ -c _ OID







たとえば、シスコの最初のギガビットポートで送信されたバイト数を取得します。

snmpget -v 2c -c qwerty 192.168.1.1 .1.3.6.1.2.1.2.2.1.16.10101





IF-MIB::ifOutOctets.10101 = Counter32: 2044250092







シスコ以外の腺の場合:

snmpget -v 2c -c qwerty 192.168.1.2 .1.3.6.1.2.1.2.2.1.16.1





IF-MIB::ifOutOctets.1 = Counter32: 1691279168







メッセージTimeout: No Response from ...



場合、デバイスでSNMPが有効になっており、サーバーがスイッチポート161 / UDPへの接続を許可されていることを確認する必要があります。

No Such Object available on this agent at this OID



メッセージは、要求されたパラメーターがサポートされていないことを示します。



デバイスからパラメータの全リストを読むには:

snmpwalk -v _ -c _







GUI愛好家は、MIBブラウザなどのプログラムを使用して、デバイスからSNMPデータを読み取ることができます。



ネットワークマップ



マップは、苦労して手描きする必要があります。 ここでは、いくつかのトリックを知る必要があります。 機器間の接続線より上の速度を表示するには、署名に中括弧内の対応する項目への呼び出しを追加します。 例:

↑ {02-CS-42-3750:ifOutOctets.10112.last(0)}





{02-CS-42-3750:ifInOctets.10112.last(0)} ↓







レコード02-CS-42-3750:ifOutOctets.10112.last(0)は、ホスト02-CS-42-3750から前回のifOutOctetsパラメーター値(送信バイト)を取得することを意味します。 ↑



および↓



これらは、美しさを表す↑と↓の矢印コードです。







また、リンクプロパティで、ポートが落ちた場合に赤で表示されるように回線を構成できます。



ポートステータスモニタリング



残念ながら、Zabbixには個々のデバイスポートのステータスを表示するための便利なツールがないため、作成する必要がありました。 情報はZabbixからインポートされ、管理者に便利な形式で表示されます:







ポートの灰色は、ダウンしていることを示しています。 ポートの負荷に応じて、緑から赤への色が変わります。 ギガビットポートの概要を説明します。



スクリプトのマイナス点は、「自分用に」書かれていることです。そのため、インストールはかなり不器用です(-: ソースダウンロードして readmeをお読みください。UPD03/13/13Zabbix 2.0のバージョン



性能



zabbixサーバーのパフォーマンスに関する問題の可能性について言及するしかありません。 毎分50個の24ポートスイッチの各ポートの11個のパラメーターに関する情報を取得するとします。 zabbixサーバーデータベースの平均負荷は1秒あたり220レコードです。 弱い機械の場合、耐えられないことがあります。 したがって、アイテムの数を制限するか、検査間隔を長くすることをお勧めします。 ポートステータス、トラフィック、エラー、およびブロードキャストパケットを60秒ごとに要求することで十分であると考えています。



計画



テンプレートジェネレータの次のバージョンでは、インターフェイスパラメータの残りを取得する機能、グラフの線の色の選択、シスコ以外のデバイスのポート速度を指定する機能を追加したいと思います。 提案を歓迎します。



All Articles