SNMP (Simple Network Management Protocol) はネットワーク管理の業界標準です。SNMP によって管理されるオブジェクトは、MIB (管理情報ベース) によって配置されます。SNMP エージェントは、Java 仮想マシンを使用するための標準 MIB を公開します。標準 MIB は、JSR 163 で定義されています。詳細は、JSR 163 を参照してください。
Java 仮想マシン (JVM) を SNMP で監視するには、以下の手順に従ってください。
JVM を起動するときのシステムプロパティの設定に関する一般情報については、「システムプロパティの設定」を参照してください。
シングルユーザ環境で SNMP エージェントを有効にするには、JVM を起動するときにこのシステムプロパティを設定します。
com.sun.management.snmp.port=portNum
ここで、portNum は、監視に使用するポート番号です。このプロパティを設定すると、受信 SNMP 要求の特定のポート番号で待機する SNMP エージェントが起動されます。
JRE_HOME/lib/management/snmp.acl.template
の ACL
テンプレートファイルを JRE_HOME/lib/management/snmp.acl
にコピーし、所有者だけが読み取りおよび書き込みできるようにして、必要に応じてコミュニティ文字列を追加します。
JRE のマルチユーザインストールで SNMP エージェントを有効にするには、JVM を起動するときに以下のシステムプロパティを設定します。
com.sun.management.snmp.port=portNum com.sun.management.snmp.acl.file=ACLFilePath
ここで、portNum は監視に使用するポート番号で、ACLFilePath は、ACL ファイルのパスです。
JRE_HOME/lib/management/snmp.acl.template
から ACL
テンプレートファイルをホームディレクトリの snmp.acl
という名前のファイルにコピーし、所有者だけが読み取りおよび書き込みできるようにして、必要に応じてコミュニティ文字列を追加します。
アクセス制御リスト (ACL) のテンプレートファイルは、JRE_HOME/lib/management/snmp.acl.template
にあります。このファイルを JRE_HOME/lib/management/snmp.acl
またはホームディレクトリにコピーします。このファイルには、暗号化されていない SNMP
コミュニティ文字列が含まれるため、読み取りおよび書き込み権を持つのは自分だけであることを確認してください。セキュリティ上の理由から、システムは所
有者だけが読み取りおよび書き込み権を持つことを確認し、そうでない場合は、エラーを表示して終了します。このため、マルチユーザ環境では、このファイル
をホームディレクトリなどの非公開の場所に置きます。
ACL エントリの例:
#The communities public and private are allowed access from the local host.
acl = {
{
communities = public, private
access = read-only
managers = localhost
}
}
# Traps are sent to localhost only
trap = {
{
trap-community = public
hosts = localhost
}
}
構成ファイルまたはコマンド行で、監視と管理のプロパティを設定できます。コマンド行で指定したプロパティは、構成ファイル内のプロパティを無効に
します。構成ファイルのデフォルトの場所は、JRE_HOME/lib/management/management.properties
です。ここで JRE_HOME は、JDK がインストールされているディレクトリです。コマンド行のプロパティ com.sun.management.snmp.port
が設定されている場合、JVM がこのファイルを読み込みます。JMX 管理は同じ構成ファイルを使用します。
次のコマンド行オプションでこの構成ファイルに別の場所を指定することもできます。
com.sun.management.config.file=ConfigFilePath
ここで、ConfigFilePath は、この構成ファイルへのパスです。
JVM を開始するときにすべてのシステムプロパティを指定する必要があります。JVM が起動された後、システムプロパティへの変更 (setProperty
メソッドによる変更など)、パスワードファイル、ACL ファイル、または構成ファイルへの変更は無効です。
次の表は、すべての SNMP 管理プロパティを示しています。
SNMP エージェントの起動中にエラーが発生した場合、JVM は例外をスローして終了します。構成エラーには以下のものがあります。
アプリケーションでセキュリティマネージャを実行している場合は、セキュリティ権限ファイルに追加の権限が必要です。