リモート コマンドを使用すると、特定の定義済みコマンドが監視対象ホストで何らかの条件で自動的に実行されるように定義できます。
リモート コマンドはスマート プロアクティブ モニタリングの強力なメカニズムです。
この机能の最も明白な使用法で、次のことを试みることができます。
リモート コマンドのアクションの设定は、メッセージを送信する場合と似ていますが、龙虎赌博 がメッセージを送信する代わりにコマンドを実行する点だけが異なります。
リモート コマンドは、龙虎赌博 サーバー、プロキシ、またはエージェントによって実行できます。 龙虎赌博 エージェントのリモート コマンドは、龙虎赌博 サーバーまたは 龙虎赌博 プロキシ経由で直接実行できます。 龙虎赌博 エージェントと 龙虎赌博 プロキシの両方で、リモート コマンドはデフォルトで無効になっています。 それらは次の方法で有効にできます。
AllowKey=system.run[*]
パラメーターを追加します。龙虎赌博 サーバーによって実行されるリモート コマンドは、コマンドの実行 で説明されているように、终了コードのチェックを含めて実行されます。
対象ホストがメンテナンス中であってもリモートコマンドを実行します。
すべてのマクロを解決した後のリモート コマンドの制限は、データベースの種類と文字セットによって異なります (ASCII 以外の文字を格納するには、1 バイト以上が必要です)。
データベース | 文字数制限 | バイト数制限 |
MySQL | 65535 | 65535 |
Oracle Database | 2048 | 4000 |
PostgreSQL | 65535 | not limited |
SQLite (only 龙虎赌博 proxy) | 65535 | not limited |
次のチュートリアルでは、リモート コマンドを设定する方法について順を追って説明します。
龙虎赌博 エージェント (カスタム スクリプト) で実行されるリモート コマンドは、最初にエージェントの 设定 で有効にする必要があります。
エージェント设定で許可されている各コマンドに AllowKey=system.run[<command>,*] パラメータが追加されていることを確認して、nowait モードで特定のコマンドを許可します。 このパラメータを変更する場合は、エージェント デーモンを再起動します。
リモート コマンドは、アクティブな 龙虎赌博 エージェントでは機能しません。
次に设定 → アクション で新しいアクションを设定:
アクション操作に使用できるすべてのスクリプト (Webhook、スクリプト、SSH、Telnet、IPMI) は、グローバル スクリプト で定义されています。
例:
この場合、龙虎赌博 は Apache プロセスの再起動を試みます。 このコマンドを使用して、コマンドが 龙虎赌博 エージェントで実行されることを確認します (龙虎赌博 agent の実行ボタンをクリックします)。
sudo の使用に注意してください。龙虎赌博 ユーザーには、デフォルトでシステム サービスを再起動する権限がありません。 sudo の设定方法に関するヒントについては、以下を参照してください。
龙虎赌博 エージェントはリモート ホストで実行され、着信接続を受け入れる必要があります。 龙虎赌博 エージェントはバックグラウンドでコマンドを実行します。
龙虎赌博 エージェントのリモート コマンドは、system.run[,nowait] キーによってタイムアウトなしで実行され、実行結果はチェックされません。 龙虎赌博 サーバーと 龙虎赌博 プロキシでは、リモート コマンドは、zabbix_server.conf または zabbix_proxy.conf ファイルの TrapperTimeout パラメータで设定されたタイムアウトで実行され、実行結果について チェック されます。
'zabbix'ユーザーが、设定されたコマンドの実行権限を持っていることを確認してください。 sudo を使用して、特権コマンドへのアクセスを許可する必要があるかもしれません。 アクセスを设定するにはroot として以下を実行します。
sudoers ファイルで使用できる行の例:
# allows 'zabbix' user to run all commands without password.
zabbix ALL=NOPASSWD: ALL
# allows 'zabbix' user to restart apache without password.
zabbix ALL=NOPASSWD: /etc/init.d/apache restart
一部のシステムでは、sudoers ファイルにより、ローカル以外のユーザーがコマンドを実行できなくなります。 これを変更するには、/etc/sudoers の requiretty オプションをコメントアウトします。
ターゲット システムに選択したタイプ (龙虎赌博 エージェントまたは IPMI) の複数のインターフェースがある場合、リモート コマンドはデフォルトのインターフェースで実行されます。
龙虎赌博 エージェント以外のインターフェイスを使用して、SSH および Telnet 経由でリモート コマンドを実行することができます。 使用可能なインターフェースは、次の順序で選択されます。
IPMI リモート コマンドの場合、次の構文を使用する必要があります。
内容
アクションの実行内容でリモート コマンドとして使用できるグローバル スクリプトの例。
特定の条件で Windows を再起動します。
龙虎赌博 によって障害が検出されたときに Windows を自動的に再起動するには、次のスクリプトを定義します。
スクリプトパラメータ | 値 |
---|---|
Scope | 'Action operation' |
Type | 'Script' |
Command | c:\windows\system32\shutdown.exe -r -f |
IPMI コントロールを使用してホストを再起動します。
スクリプトパラメータ | 値 |
---|---|
Scope | 'Action operation' |
Type | 'IPMI' |
Command | reset |
IPMI コントロールを使用して、ホストの電源をオフにします。
スクリプトパラメータ | 値 |
---|---|
Scope | 'Action operation' |
Type | 'IPMI' |
Command | power off |