現在、私はこれらの値を使用しています:
# y = c * p / 100
# y: nagios value
# c: number of cores
# p: wanted load procent
# 4 cores
# time 5 minutes 10 minutes 15 minutes
# warning: 90% 70% 50%
# critical: 100% 80% 60%
command[check_load]=/usr/local/nagios/libexec/check_load -w 3.6,2.8,2.0 -c 4.0,3.2,2.4
しかし、これらの値はほとんどランダムに選択されています。
誰かがいくつかのテスト済みの値を持っていますか?
Linuxのロードは実際には簡単です。各負荷平均数は、すべてのコアの平均負荷の合計です。すなわち。
1 min load avg = load_core_1 + load_core_2 + ... + load_core_n
5 min load avg = load_core_1 + load_core_2 + ... + load_core_n
15 min load avg = load_core_1 + load_core_2 + ... + load_core_n
ここで、0 < avg load < infinity
。
したがって、4コアサーバーの負荷が1の場合、各コアが25%使用されているか、1つのコアが100%の負荷で使用されていることを意味します。負荷が4の場合、4つのコアすべてが100%の負荷を下回っています。負荷が4より大きい場合、サーバーにはさらにコアが必要です。
check_load
は
-r, --percpu
Divide the load averages by the number of CPUs (when possible)
つまり、使用すると、サーバーのコアは1つだけであると見なすことができるため、コアの数を考慮せずにパーセントの割合を直接書き込むことができます。 -r
を使用すると、警告とクリティカルの間隔は0 <= load avg <= 1
になります。すなわち。警告や重要な値をサーバー間で変更する必要はありません。
OPには、間隔として5,10,15があります。それは間違いです。 1,5,15です。
古い投稿ですが、check_loadのしきい値が初心者にとって大きな頭痛の種であることを知っていたので、今すぐ返信します。
CPUが5分間で70%、10分間で60%、15分間で50%の場合の警告アラート。 CPUが5分間で90%、10分間で80%、15分間で70%の場合のクリティカルアラート。
*command[check_load]=/usr/local/nagios/libexec/check_load -w 0.7,0.6,0.5 -c 0.9,0.8,0.7*
CPU負荷に関するすべての私の発見:
「ロード」が意味するもの:ウィキペディアは言う:
すべてのUnixおよびUnixライクなシステムは、カーネルで3つの「負荷平均」数のメトリックを生成します。ユーザーはuptimeコマンドを実行することにより、Unixシェルから現在の結果を簡単にクエリできます。
$ uptime
14:34:03 up 10:43, 4 users, load average: 0.06, 0.11, 0.09
上記の出力負荷平均から:0.06, 0.11, 0.09
は(シングルCPUシステム上)を意味します。
。
$ uptime
14:34:03 up 10:43, 4 users, load average: 1.73, 0.50, 7.98
上記のシングルCPUシステムでの1.73 0.50 7.98
の負荷平均は次のとおりです。
Nagiosしきい値の計算:
Nagios CPU負荷設定の場合、警告とクリティカルが含まれます。
y = c * p / 100
場所:y = nagios value
c = number of cores
p = wanted load procent
4コアシステムの場合:
time 5 min 10 min 15 min
warning: 90% 70% 50%
critical: 100% 80% 60%
command[check_load]=/usr/local/nagios/libexec/check_load -w 3.6,2.8,2.0 -c 4.0,3.2,2.4
シングルコアシステムの場合:
y = p / 100
場所:y = nagios value
p = wanted load procent
time 5 min 10 min 15 min
warning: 70% 60% 50%
critical: 90% 80% 70%
command[check_load]=/usr/local/nagios/libexec/check_load -w 0.7,0.6,0.5 -c 0.9,0.8,0.7
Gunther博士によるCPU負荷分析に関する優れたホワイトペーパー http://www.teamquest.com/pdfs/whitepaper/ldavg1.pdf このオンライン記事では、Gunther博士がUNIXカーネルについて詳しく調べています。負荷平均(「LAトリプレット」)の計算方法と、それらがキャパシティプランニングメトリックとしてどれだけ適切かを確認します。
問題のサーバーに非同期ワークロードがあり、キューの深さが管理する重要なサービスメトリックである場合を除き、正直なところ、負荷平均を監視する価値はありません。これは、サービス時間(サービス時間、サービス時間)などの重要なメトリックからの注意散漫です。
Nagiosも、MuninやCactiのようなツールであり、サーバーで発生しているさまざまな種類のワークロードをグラフ化します。 load_average、cpu使用率、disk ioなどのいずれかになります。
この情報を使用すると、Nagiosで適切なしきい値を設定する方が簡単です。
Invent Sekarの答えを拡張するには:check_loadとパーセンテージを使用する場合、他のコマンドライン引数とともに-rコマンドライン引数が必要になると思います。
例えば:
command[check_load]=/usr/local/nagios/libexec/check_load -r -w 0.7,0.6,0.5 -c 0.9,0.8,0.7
システムのパフォーマンスが影響を受ける負荷平均を知っていますか?私の最後の仕事では、常に35-40の平均負荷に置かれるサーバーがありましたが、それでも応答性はありました。それはあなたが正確な数を得るためにあなたが少しの探偵の仕事をしなければならない測定です。
代わりに、SSHまたはhttpの平均接続時間など、システムの他のいくつかのメトリックを測定することもできます。これは、システムがどの程度の負荷をかけているかを示すより良い指標になるかもしれません。