2016-11-01 4 views
0

Opendaylight SNMP Plugin REST API(http://IPAddress:8181/restconf/operations/snmp:snmp-get)を使用して、SNMPエージェントを実行しているネットワークデバイスから情報を取得するはずのpythonアプリケーションを作成しています。Opendaylight SNMPプラグインでカスタムMIBを追加するには?

次のように私はセットアップをシミュレートしています:

環境

  • SNMPエージェント:UbuntuがVM上で実行されています。
  • SNMPマネージャ:Opendaylightの上で動作するPythonアプリケーション。

は、このようなトータルRAMなどの情報を取得するには何が行われたか

(OID:.1.3.6.1.4.1.2021.4.5.0)私はそれがオブジェクト型を理解しているので、opendaylightするUCD-SNMP-MIB.mibを追加する必要がありますID。

私はこれをチェックアウトしましたが、pageは動作しないようです。このページのチュートリアルは古くなっているようで、ネイティブのopendaylightプロジェクトを作成する方法を説明していますが、私の目的はnorthbound APIを使用することです。

質問: はどのように我々は、アプリケーションがネットワーク上のSNMPエージェントを管理するためのREST APIを使用できるようにディレクトリをopendaylightするカスタムMIBファイルを追加するには?

答えて

0

odl-snmp-pluginには、MIBファイルを直接使用する機能がありません。

snmp-getなどの汎用RPCはOID値のみを取り、OIDと値のペアのJSONドキュメントを返します。そのような取得・インターフェースとして

POST :host/restconf/operations/snmp:snmp-get 
Authentication: :basic-auth 
Content-Type: application/json 
{ 
    "input": { 
     "ip-address": ":addr", 
     "oid" : "1.3.6.1.2.1.2.2.1", 
     "get-type" : "GET-BULK", 
     "community" : ":community" 
    } 
} 

{ 
    "output": { 
    "results": [ 
     { 
     "oid": "1.3.6.1.2.1.2.2.1.1.1", 
     "value": "1" 
     }, 
     { 
     "oid": "1.3.6.1.2.1.2.2.1.1.2", 
     "value": "2" 
     }, 
     ... 
    ] 
    } 
} 

モジュール特定のRPCは、二つの前提条件に依存している:

  • A YANGファイルは、必要なMIB
  • MIB名からマッピングを含む.oidファイルから生成された
      yang-oid-pluginの場合はOIDに、

    これらの前提条件を使用すると、OIDアノテーションを含むJavaコードを生成するMaven POMファイルを作成できます。これは、Javaバインディング対応APIを使用して、SNMPデータを取り込んだJavaオブジェクトをフェッチできるようにするためのものです。

    OpenDaylightのsnmpプロジェクトは、これを行う方法の完全な例です。

    IF-MIBから生成された例YANGファイルは、ここを参照してください: https://github.com/opendaylight/snmp/blob/master/mibs-model/src/main/oid/IF-MIB.oid

    さらなるステップを実現するために必要とされていますhttps://github.com/opendaylight/snmp/blob/master/mibs-model/src/main/yang/IF-MIB.yang

    もIF-MIBから生成された例.oidファイル、についてはこちらを参照してください。これをNETCONFまたはRESTCONFで公開するソリューションです。簡単な方法は、odl-snmp-pluginが行ったように、RPCを追加してハードコードすることです。より洗練されたソリューションでは、デバイスのSNMPクレデンシャルを格納するためにトポロジを拡張し、SNMPバックアップされたYANGモジュールをトポロジノードの下にマウントするコネクタを書き込むodl-netconf-connectorのように、マウントされたデバイスの概念が必要ですデバイス。

  • 関連する問題