第7章 標準化されたインタフェース監視

目次

Simple Network Management Protocol (SNMP)とJava Management Extensions (JMX)
監視の有効化
NoSQL DB MBeansの表示

Oracle NoSQL Databaseでは、管理CLIおよび管理コンソールに備わるネイティブ監視に加えて、Java Management Extensions (JMX)またはSimple Network Management Protocol (SNMP)の各エージェントをオプションで監視に使用できます。これらのエージェントは、ステータス、パフォーマンス・メトリックや、ストレージ・ノードおよびその管理対象サービス(レプリケーション・ノードおよび管理インスタンスを含む)の操作パラメータに関する情報について、管理クライアントでポーリングできるインタフェースを各ストレージ・ノード上で提供します。

これらの管理エージェントは両方とも、いずれかのサービスのステータスの変更や、事前に設定されたパフォーマンス制限の違反について、通知をプッシュするようにも構成できます。

JMXインタフェースはCommunity EditionまたはEnterprise Editionのいずれかで有効にできます。SNMPを使用するには、Enterprise Editionを保持する必要があります。

JMXサービスは3種類のコンポーネントに対するMBeansを公開します。これらのMBeansはパッケージoracle.kv.impl.mgmt.jmx内のJavaインタフェースのStorageNodeMBean、RepNodeMBeanおよびAdminMBeanです。各コンポーネントに対してレポートされるステータスの詳細は、これらのインタフェースのjavadocを参照してください。

JMXを介してレポートされる情報と同じ情報は、SNMPからもレポートできます。この場合、情報はOracleNosqlMIBという名前のManagement Information Base (MIB)に従って編成されます。これはEnterprise Editionのファイルlib/nosql.mibに含まれています。

Simple Network Management Protocol (SNMP)とJava Management Extensions (JMX)

NoSQL Database内のSNMPおよびJMXの各エージェントは読取り専用インタフェースで、ストレージ・ノードと、ストレージ・ノードでホストされるすべてのレプリケーション・ノードまたは管理に関する情報について、ストレージ・ノードをポーリングできます。使用可能な情報としてはサービス・ステータス(RUNNING、STOPPEDなど)、操作パラメータおよびパフォーマンス・メトリックなどがあります。

SNMPおよびJMXのトラップ/通知も特定のイベントに対して提供されます。通知は、すべてのサービス・ステータスの状態の変更と、パフォーマンス制限の違反に対して送信されます。

監視の有効化

監視は各ストレージ・ノード・ベースで、次の2つの方法で有効にできます。

起動ファイル

ストレージ・ノードの起動構成ファイルで、JMXまたはSNMPを有効にすることを指定できます。通常、これらのファイルはmakebootconfigユーティリティを使用して作成され、このユーティリティにはファイルの機能を制御するために次のオプションがあります。

  • [-mgmt {snmp|jmx|none} -pollport <snmp poll port>]
    
  • -traphost <snmp trap/notification hostname>]
    
  • -trapport <snmp trap/notification port>]
    

注意

-mgmt snmpを指定する際は、-pollportも指定する必要があります。SNMPエージェントはこのポートでSNMP管理クライアントからの接続をリスニングします。通知の宛先アドレスを示すために-traphostおよび-trapportもオプションで指定する場合があります。これは、そのアドレスで通知を受信するように構成されているSNMP管理サービスのホスト名とポート番号になります。

注意

-mgmt jmxを指定する際は、-pollportを指定する必要はありません。ストレージ・ノードのJMXエージェントは、ストレージ・ノードで管理されているすべてのその他のRMIサービスに使用されているのと同じポート番号で、RMIレジストリを使用します。(このポート番号はmakebootconfigに対する-port引数として指定されます。)

ストレージ・ノード・パラメータの変更

ストアがデプロイされた後でも、ストレージ・ノード・パラメータの"mgmtClass"、"mgmtPollPort"、"mgmtTrapHost"および"mgmtTrapPort"を変更することで、JMXまたはSNMPを有効にできます。makebootconfigによる構成と同様に、"mgmtPollPort"、"mgmtClass"、"mgmtTrapHost"および"mgmtTrapPort"はSNMPに対してのみ使用され、SNMPの有効化の際はパラメータ"mgmtPollPort"を設定する必要があります。

"mgmtClass"パラメータの値は次のクラス名のいずれかになる可能性があります。

  • JMXを有効化する場合:

    oracle.kv.impl.mgmt.jmx.JmxAgent
  • SNMPを有効化する場合:

    oracle.kv.impl.mgmt.snmp.SnmpAgent
  • JMXまたはSNMPのどちらも有効化しない場合:

    oracle.kv.impl.mgmt.NoOpAgent

たとえば、ストレージ・ノードでSNMPを有効化するために管理CLIで次のコマンドを発行します。

plan change-parameters -service sn1 -wait -params \
mgmtClass=oracle.kv.impl.mgmt.snmp.SnmpAgent \
mgmtPollPort=5002 mgmtTrapHost=192.168.26.42
mgmtTrapPort=32767

注意

管理エージェントの実装は対象の1回につき、1つだけ有効化できます。JMXがすでに有効化されているストレージ・ノードでSNMPを有効にすると、JMXエージェントはシャットダウンして、SNMPエージェントがその後を引き継ぎます。

NoSQL DB MBeansの表示

NoSQL Database JMX MbeansをJConsoleなどの監視ツールに表示するには、表示するストレージ・ノードごとにホスト名およびレジストリ・ポートを使用して接続します。これは、java -jar kvstore.jar makebootconfigコマンドへの"-port"引数によって指定されるポートです。これは構成時にdeploy-snプランでも使用されます。ドキュメントの例では5000をレジストリ・ポートとして使用します。

たとえば、「New Connection」タブの「JConsole Remote Process connection」ボックスにlocalhost:5000を指定します。