snmp4jエージェントJMXの機能と、必要なものに適合するかどうかを理解しようとする

StackOverflow https://stackoverflow.com/questions/1819432

  •  10-07-2019
  •  | 
  •  

質問

JMX MBeanにレイアウトされているすべての情報をSNMP属性に変換するJMX対応アプリケーション用のSNMPラッパーエージェントを作成しようとしています。

どこから始めて何を使うべきかを理解しようとして、私は少し迷っています。私が読んだことから、おそらくsnmp4jはJavaのsnmpライブラリに行くでしょうが、Snmp4jAgentにあるコード例を理解することができませんでした。

また、著者のWebサイトでSNMP4JAgentJMXの説明を読むことで、Snmp4jAgentJMXが書くのに役立つと思いますこのエージェントですが、使用方法を理解できませんでした。実際、サンプルコード(org.snmp4j.agent.mo.jmx.example.JMXTestAgent)を見ると、コードがMBeanまたはJMXファクトリに登録されている部分が見つかりませんでした。このコードが正しく行うこと。

SNMPの経験がない人のために、コード例やチュートリアルやドキュメントを高く評価します。

ありがとう!!

役に立ちましたか?

解決

jmx2snmpが提供するSNMPエージェントは不完全であり、エラーがあります。 SNMPエージェントを作成するために行うことはほとんどありません。たとえば、SNMPv1は正しくサポートされていません(エラーステータス)。 GETBULKはサポートされていません(SNMPv2には必須)。エージェントの存在しないOIDで呼び出されたGETNEXTは、次のOIDを返さず、代わりにnoSuchObject(GETNEXTで返されることはありません)、SETはまったくサポートされておらず、他の多くの問題が発生する可能性があります。

したがって、SNMP4J-AgentJMXとSNMP4J-AgentおよびSNMP4Jを(それらの作成者として)使用することをお勧めします。 exmpleエージェントは、メソッドaddJvmManagementMibInstrumentatonのMIB計測クラスJvmManagementMibInstでの初期化中にJMXとSNMPの間のマッピングを行います。

ここでは、記述マッピングを実行する方法の例がたくさんあります。既にMIB仕様がある場合、AgenProを使用してMibスタブクラスを生成できます。サンプルのJvmManagementMibInst.javaクラスに示されているように、基本的にマッピングのみを行う必要があります。

MIBをまだお持ちでない場合は、MIBデザイナーツール(MIBデザイナーなど)を使用してMIBを作成することをお勧めします。これは、おそらくインタラクティブなプロセスであり、 JMXにマッピングする簡単な方法を見つけてください。

他のヒント

よく調べた結果、この snmp4jエージェントを使用してJMXをラップし、SNMPを提供するパッケージを見つけました。サービス。

このパッケージを使用すると、MBeanに登録してJMX-SNMPマッピングを変更するだけで済みます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top