SNMP のトラブルシューティング
注意
エンタープライズ機能(非推奨)
MongoDB 6.0以降、 SNMP は非推奨であり、次のリリースで削除される予定です。 配置をモニタリングするには、 MongoDB Ops Managerを使用します。
SNMP は MongoDB Enterprise でのみ利用可能です。
macOS 上の MongoDB Enterprise には、 SERVER-29352 により SNMP のサポートが含まれていませ ん 。
Overview
MongoDB Enterprise は、一元化されたデータコレクションと集計をサポートし、SNMP 経由でデータベース メトリクスを提供できます。 このドキュメントでは、SNMP を使用して MongoDB Enterprise を配置するときに発生する可能性のある一般的な問題と、これらの問題に対して考えられる解決策について説明します。
インストールの完全な手順については、「 で SNMP を使用して MongoDB を監視する 」およびMongoDB SNMP をLinuxしてMongoDB Windowsを監視する 」を参照してください。
問題
失敗したグローバル初期化
SNMP で監視しようとしたときに次のエラー メッセージが表示された場合。
<Timestamp> F CONTROL [main] Failed global initialization: Bad Value: snmp.subagent is not allowed when snmp.disabled is specified
mongod
に disabled SNMP access
がないことを確認します
デフォルトでは、 mongod
インスタンスへの SNMP アクセスが有効になっています。 MongoDB 4.0.6 以降、 コマンドライン オプション--snmp-disabled
または構成ファイル オプションsnmp.disabled
を使用して、SNMP アクセスを無効にすることができます。
接続に失敗しました
mongod
ログファイルには以下が含まれます。
Warning: Failed to connect to the agentx master agent
AgentX は、インターネット RFC で定義されている2741 SNMP エージェントの拡張性プロトコルです。 。SNMP 経由で監視する追加データを定義する方法について説明します。 MongoDB が Agentx マスターエージェントへの接続に失敗した場合は、次の手順を使用して SNMP サブエージェントが SNMP マスターに正しく接続できることを確認します。
マスターエージェントが実行されていることを確認します。
SNMP マスターの構成ファイルとサブエージェントの構成ファイルを比較します。 Agentx ソケットの定義が 2 つ間で同じであることを確認します。
SNMP 構成ファイルをチェックして、UNIX ドメイン ソケットの使用が指定されているかどうかを確認します。 その場合は、
mongod
が UNIX ドメイン ソケットを開くための適切な権限があることを確認します。
コマンドラインの解析エラー
コマンドラインでの次のいずれかのエラー。
Error parsing command line: unknown option snmp-master try 'mongod --help' for more information
Error parsing command line: unknown option snmp-subagent try 'mongod --help' for more information
このエラーは、エンタープライズ エディションの一部ではないmongod
バイナリで発生します。 エンタープライズ エディションをインストールし、 mongod
を再度起動してください。
mongos
を含む他の MongoDB バイナリでは、 snmp-master
またはsnmp-subagent
を使用して起動しようとすると、このエラーが発生します。 SNMP をサポートしているのはmongod
のみです。
macOS 上の MongoDB Enterprise には、 SERVER-29352 により SNMP のサポートが含まれていませ ん 。
の開始エラー SNMPAgent
ログファイルの次の行は、 mongod
がmongod.conf
ファイルを読み取れないことを示しています。
[SNMPAgent] warning: error starting SNMPAgent as master err:1
Linux で実行中の場合は、 mongod.conf
が/etc/snmp
ディレクトリに存在すること、およびmongod
UNIX ユーザーがmongod.conf
ファイルを読み取る権限があることを確認します。
Windows で実行している場合は、 mongod.conf
がC:\snmp\etc\config
に存在することを確認します。