作成中です。
最高の性能を出すために、Zabbixシステムを適切に調整することは、非常に重要です。
ハードウェアに関する一般的なアドバイスを以下に示します。
最適なパフォーマンスを得るために、多くのパラメータを調整できます。
StartPollers
原則として、このパラメータの値はできる限り小さくします。zabbix_serverのインスタンスを1つ追加するたびに既知のオーバーヘッドが増加し、同時に並列処理も増えます。最適なインスタンス数になるのは、概して、キューに含まれるパラメータが最小限(理想は常に0)のときです。この値は、内部チェックZabbix[queue]を使用することで監視できます。
最適なZabbixプロセス数を設定する方法については、このページ一番下の「こちらも参照」セクションを参照してください。
DebugLevel
最適な値は3です。
DBSocket
これはMySQLのみ利用できます。データベース接続に、DBSocketを使用することをお奨めします。これが最も速く、最も安全な方法です。
Zabbixの調整で最も重要なのは、データベースエンジンでしょう。Zabbixは、データベースエンジンの可用性とパフォーマンスに大きく依存しています。
Zabbix 2.2は新機能を導入しています。プロセスが、現在のアクティビティや重要な統計データを表示するために、コマンドラインを次のように変更します。
UID PID PPID C STIME TTY TIME CMD
zabbix22 4584 1 0 14:55 ? 00:00:00 zabbix_server -c /home/zabbix22/zabbix_server.conf
zabbix22 4587 4584 0 14:55 ? 00:00:00 zabbix_server: configuration syncer [synced configuration in 0.041169 sec, idle 60 sec]
zabbix22 4588 4584 0 14:55 ? 00:00:00 zabbix_server: db watchdog [synced alerts config in 0.018748 sec, idle 60 sec]
zabbix22 4608 4584 0 14:55 ? 00:00:00 zabbix_server: timer #1 [processed 3 triggers, 0 events in 0.007867 sec, 0 maint.periods in 0.005677 sec, idle 30 sec]
zabbix22 4609 4584 0 14:55 ? 00:00:00 zabbix_server: timer #2 [processed 2 triggers, 0 events in 0.004209 sec, idle 30 sec]
zabbix22 4637 4584 0 14:55 ? 00:00:01 zabbix_server: history syncer #4 [synced 35 items in 0.166198 sec, idle 5 sec]
zabbix22 4657 4584 0 14:55 ? 00:00:00 zabbix_server: vmware collector #1 [updated 0, removed 0 VMware services in 0.000004 sec, idle 5 sec]
zabbix22 4670 1 0 14:55 ? 00:00:00 zabbix_proxy -c /home/zabbix22/zabbix_proxy.conf
zabbix22 4673 4670 0 14:55 ? 00:00:00 zabbix_proxy: configuration syncer [synced config 15251 bytes in 0.111861 sec, idle 60 sec]
zabbix22 4674 4670 0 14:55 ? 00:00:00 zabbix_proxy: heartbeat sender [sending heartbeat message success in 0.013643 sec, idle 30 sec]
zabbix22 4688 4670 0 14:55 ? 00:00:00 zabbix_proxy: icmp pinger #1 [got 1 values in 1.811128 sec, idle 5 sec]
zabbix22 4690 4670 0 14:55 ? 00:00:00 zabbix_proxy: housekeeper [deleted 9870 records in 0.233491 sec, idle 3599 sec]
zabbix22 4701 4670 0 14:55 ? 00:00:08 zabbix_proxy: http poller #2 [got 1 values in 0.024105 sec, idle 1 sec]
zabbix22 4707 4670 0 14:55 ? 00:00:00 zabbix_proxy: history syncer #4 [synced 22 items in 0.008565 sec, idle 5 sec]
zabbix22 4738 1 0 14:55 ? 00:00:00 zabbix_agentd -c /home/zabbix22/zabbix_agentd.conf
zabbix22 4739 4738 0 14:55 ? 00:00:00 zabbix_agentd: collector [idle 1 sec]
zabbix22 4740 4738 0 14:55 ? 00:00:00 zabbix_agentd: listener #1 [waiting for connection]
zabbix22 4741 4738 0 14:55 ? 00:00:00 zabbix_agentd: listener #2 [processing request]
メインプロセスは例外です。現在のアクティビティの代わりに、元のコマンドラインが表示されます。複数のZabbixインスタンスを備えるシステム上のプロセスを識別できます。
この機能は、Microsoft Windows用には実装されていません。
ロギングレベルをDebugLevel=4に設定した場合、アクティビティメッセージと統計メッセージがログファイルに書き込まれます。
Linuxシステムにおいては、Zabbixの動作を監視するために、ps
コマンドをwatch
コマンドと一緒に使用できます。例えば、1秒に5回、ps
コマンドを実行してプロセスアクティビティを確認します。
Zabbixプロキシとエージェントプロセスを表示する場合:
履歴同期処理のみを表示する場合:
ps
コマンドは、アクティビティメッセージが長いため、広範な出力(約190列)を生成します。お使いの端末の列数が190列未満の場合は、以下を試行できます。
UID、PID、開始時間などを伴わない、コマンドラインを表示します。
Zabbixパフォーマンスを監視するために、top
コマンドも使用できます。top
コマンド使用時に[c]キーを押すと、コマンドラインと処理が表示されます。Linuxでのテストでは、top
とatop
は、Zabbixプロセスのアクティビティの変更を正確に表示しましたが、htop
は、アクティビティの変更を表示していませんでした。
watch
コマンドがインストールされていない場合、以下を実行することにより、同様の効果を得ることができます。
while [ 1 ]; do ps x; sleep 0.2; clear; done
watch
コマンドが利用できない場合、以下を実行します。
デフォルトでは、ps
コマンドは、アクティビティの変更を表示しません。その代わりとして、オプションの1つに、/usr/ucb/ps
を使用することがあります。watch
コマンドがインストールされていない場合は、以下を実行することにより、定期的に更新されるプロセスのリストを表示することができます。
Solaris 11においては、sleep
コマンドは1秒未満の値を指定できます(例:sleep 0.2
)。
本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。