1. すべてのコアの個々の CPU 使用率を監視
Checkmk は、Linux および Windows の両方で、過去 1 分間の平均 CPU 使用率を監視するサービスを自動的に設定します。 これは一方では理にかなっているのですが、一方で、1 つのプロセスが暴走して1 つのCPU を 100% 継続的に使用しているなどのエラーを認識できません。 しかし、16 CPU を搭載したシステムでは、1 つの CPU は全体のパフォーマンスの 6.25% にしか貢献していないため、上記の極端なケースでも、合計使用率は 6.25% しか記録されません。
このため、Checkmk では (Linux および Windows 用)、使用可能なすべての CPU を個別に監視し、そのコアのいずれかが長期間にわたって常にビジー状態であるかどうかを判断するためのオプションが用意されています。 このチェックを設定することは、良いアイデアであることがわかりました。
Windows サーバーでこのチェックを設定するには、CPU utilization サービス用のCPU utilization for simple devices ルールセットが必要です。このルールセットは、Service monitoring rules にあります。 このルールセットは、すべてのCPU を監視しますが、次のオプションもあります。Levels over an extended time period on a single core CPU utilization 。
新しいルールを作成し、そのルールでこのオプションのみを有効にしてください。

Windows サーバーにのみ適用されるように条件を定義します。たとえば、適切なフォルダまたはホストタグを使用します。 このルールは、総 CPU 使用率の閾値など、他のオプションが設定されている同じルールセットの他のルールには影響しません。
Linux サーバーの場合、これはCPU utilization on Linux/Unix ルールセットの責任であり、このルールセットで同じオプションを設定することができます。
This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved. |
2. Windows サービスの監視
デフォルトでは、Checkmk は Windows サーバー上のサービスを監視しません。 なぜでしょうか? これは、Checkmk がお客様にとってどのサービスが重要かを認識していないためです。
サーバーごとに手動で重要なサービスを特定する手間を省きたい場合は、スタートタイプが「自動」のすべてのサービスが実際に実行されているかどうかを単にチェックするチェックを設定することもできます。 さらに、手動で起動された、いわば「順序が乱れた」サービスが実行されているかどうかを通知することもできます。 これらのサービスは再起動後に実行されなくなりますが、これは問題になる可能性があります。
これを実装するには、まず、Service monitoring rules で、たとえば検索機能Setup > General > Rule search を使用して、Windows Services ルールセットを見つける必要があります。 新しいルールの重要なオプションは、Services states です。 これを有効にし、サービスの状態用に 3 つの新しいエレメントを追加します。

これにより、次のような監視を実装できます。
スタートタイプが「auto 」で、実行中のサービスは「OK 」とみなされます。
スタートタイプがauto で、実行されていないサービスは、CRIT とみなされます。
スタートタイプが「demand 」で、実行中のサービスは「WARN 」とみなされます。
ただし、このルールは実際に監視されているサービスにのみ適用されます。 そのため、2 番目のステップとして、Windows service discovery ルールセットから 2 番目のルールを作成し、Checkmk がサービスとして監視する Windows サービスを定義する必要があります。
このルールを作成するときは、まず、Services (Regular Expressions) オプションに正規表現.* を入力します。これにより、この正規表現がすべてのサービスに適用されます。
ルールを保存したら、適切なホストのサービス設定に切り替えます。 そこには、Windows サービスごとに 1 つずつ、多数の新しいサービスが表示されます。
監視するサービスの数を、必要なサービスに限定するには、ルールに戻り、必要に応じて検索用語を絞り込んでください。 大文字と小文字は区別されます。 以下は、カスタマイズしたサービスの選択例です。

新しい検索式と一致しないサービスを以前に監視対象に含めていた場合、そのサービスはサービス設定で消えたように表示されます。Rescan ボタンをクリックすると、リストを消去して、サービスリスト全体を再作成することができます。
3. インターネット接続の監視
組織におけるインターネットへのアクセスは、誰にとっても非常に重要なものです。 インターネットへの接続を監視することは、アクセス可能(うまくいけば)である数十億台のコンピュータが関係するため、実装が少し難しいです。 しかし、以下の構成プランに基づいて、効率的な監視システムを構築することは可能です。
通常、
pingコマンドでアクセスできるインターネット上の複数のコンピュータを選択し、その IP アドレスをメモします。Checkmk で、たとえば「
internet」という名前で新しいホストを作成し、次のように設定します。IPv4 address に、メモした IP アドレスのいずれかを入力します。Additional IPv4 addresses に、残りの IP アドレスを入力します。Monitoring agents で、Checkmk agent / API integrations を有効にし、No API integrations, no Checkmk agent を選択します。 サービスディスカバリーを行わずにホストを保存します。Ping all IPv4 addresses 新しいホスト
internetにのみ適用される、Check hosts with PING (ICMP Echo Request) ルールセットから新しいルールを作成します (たとえば、Explicit hosts 条件、または一致するホストタグを使用)。 ルールを次のように設定します。Service description を有効にし、Internet connectionを入力します。Alternate address to ping を有効にし、 を選択します。Number of positive responses required for OK state を有効にし、1を入力します。ホスト
internetにのみ適用される別のルールを、今度はHost check command ルールセットから作成します。 そこで、Host check command としてUse the status of the service… オプションを選択し、その名前としてInternet connectionを入力します。これは、前のステップでサービス名として選択した名前と同じです。
ここで変更をアクティブにすると、監視に新しいホストinternet と、単一のサービスInternet connection が表示されます。
ping の宛先の少なくとも 1 つに到達できる場合、ホストの状態はUP になり、サービスの状態はOK になります。 同時に、サービスは、指定した各 IP アドレスの平均パケットラウンドトリップタイム (ラウンドトリップ平均) およびパケット損失に関するパフォーマンスデータを提供します。 これにより、時間の経過に伴う接続の品質を把握することができます。

Checkmk のデフォルトの動作では、最初の IP アドレスが ping で到達できない場合、ホストの状態は「DOWN 」に変わります。 上記の手順の 4 番目のステップでは、唯一のサービスの状態をホストの状態にマッピングすることで、このデフォルトの動作をオーバーライドしています。 Checkmk は、基本的に、ホストがDOWN の場合、サービスに関する通知は行いません。そのため、サービスではなく、ホストを介して通知を制御することが重要です。 また、この特定のケースでは、インターネット接続を必要としない通知方法を使用する必要があります。 |
4. HTTP/HTTPS サービスの監視
web サイトや web サービスのアクセス可能性をチェックしたい場合を考えてみましょう。 Checkmk エージェントは、この情報を表示しないため、この問題に対する解決策は提供していません。 さらに、サーバーにエージェントをインストールすることさえできない場合もあります。
この問題の解決策は、いわゆるアクティブチェックです。 これは、エージェントによって実行されるのではなく、ターゲットホストのネットワークプロトコル(この場合は HTTP(S))に直接連絡して実行されます。
手順は次のとおりです:
web サーバー用の新しいホストを作成します(例:
checkmk.com)。Monitoring agents で、Checkmk agent / API integrations オプションを有効にし、No API integrations, no Checkmk agent を選択します。 サービスディスカバリーを行わずにホストを保存します。Check HTTP web service ルールセットから、新しいホストにのみ適用される新しいルールを作成します(たとえば、条件Explicit hosts を使用)。
「Value 」ボックスには、チェックを実行するためのさまざまなオプションがあります。 その原理は次のとおりです。 チェックする URL ごとに新しいエンドポイントを定義します。 エンドポイントごとにサービスが作成されます。 次に、サービス名(例:
Basic webserver health)と、必要に応じてエンドポイントのプレフィックス(HTTPまたはHTTPS)を定義します。-
Response time エンドポイントの下にある「Value 」ボックスで、追加の設定を行うこともできます。 たとえば、応答時間が遅すぎる場合にサービスをWARN またはCRIT に設定し、証明書の有効期間を確認するためにCertificate validity を使用することができます。Search for strings を使用すると、応答(つまり、配信されたページ)に特定のテキストが含まれているかどうかを確認できます。 これにより、コンテンツの関連部分をチェックして、サーバーからの単純なエラーメッセージが肯定的な応答と解釈されないようにすることができます。
これらの設定は、すべてのエンドポイントに対して同じように定義することも、エンドポイントごとに個別に定義することもできます。

利用可能なすべてのオプションに関する非常に役立つ情報は、インラインヘルプに記載されています。
ルールを保存し、変更をアクティブにしてください。
これで、HTTP(S) 経由のアクセスをチェックする、指定したサービスを持つ新しいホストが作成されました。

もちろん、Checkmk のエージェントによってすでに監視されているホストでも、このチェックを実行することができます。 この場合、ホストを作成する必要はなく、ホストのルールを作成するだけで済みます。 |
5. ファイルシステムの閾値を「魔法のように」カスタマイズする
ファイルシステムを監視するための適切な閾値を見つけるのは、面倒な作業です。 結局のところ、90% という閾値は、非常に大きなハードディスクには低すぎ、小さなハードディスクにはすでに限界値に近いかもしれません。 ファイルシステムのサイズに応じて閾値を設定する機能については、監視の微調整の章ですでに紹介しました。 その際に、Checkmk にはさらに巧妙なオプション、つまりマジックファクターがあることも触れました。
マジックファクターは次のように設定します。
Filesystems (used space and growth) ルールセットで、1 つのルールを作成します。
このルールで、Levels for used/free space を有効にし、閾値のデフォルト値 80% または 90% を変更せずにそのままにしておきます。
さらに、Magic factor (automatic level adaptation for large filesystems) を有効にし、デフォルト値 0.80 を確認します。
また、Reference size for magic factor を 20 GB に設定します。 20 GB はデフォルト値であるため、このオプションを明示的に有効にしなくても有効になります。
結果は次のようになります:

このルールを保存して変更をアクティブにすると、ファイルシステムのサイズに応じて閾値が自動的に変化するようになります。
サイズが正確に 20 GB のファイルシステムには、閾値 80 % / 90 % が設定されます。
20 GB 未満のファイルシステムには、より低い閾値が設定されます。
20 GB を超えるファイルシステムには、より高い閾値が設定されます。
閾値の具体的な値は、まさに魔法のようなものです。 係数(ここでは 0.80)によって、値の調整幅が決まります。 係数が 1.0 の場合は何も変更されず、すべてのファイルシステムに同じ値が設定されます。 係数が小さいほど、値の調整幅が大きくなります。 このセクションで使用している Checkmk のデフォルト値は、非常に多くのインストールで実証されています。
各サービスに適用される閾値は、Summary で正確に確認できます。

次の表は、基準値を 20 GB / 80 % に設定した場合のマジックファクターの効果の例です。
| マジックファクター | 5 GB | 10 GB | 20 GB | 50 GB | 100 GB | 300 GB | 800 GB |
|---|---|---|---|---|---|---|---|
1.0 |
80 |
80 |
80 |
80 |
80 |
80 |
80 |
0.9 |
77 |
79 |
80 |
82 |
83 |
85 |
86 |
0.8 |
74 |
77 |
80 |
83 |
86 |
88 |
90 |
0.7 |
70 |
75 |
80 |
85 |
88 |
91 |
93 |
0.6 |
65 |
74 |
80 |
86 |
89 |
93 |
95 |
0.5 |
60 |
72 |
80 |
87 |
91 |
95 |
97 % |
マジックファクターに関するこの章で、ビギナーズガイドは終了です。
ここで一旦休憩したい場合は、ログアウトしてください。 Checkmk ナビゲーションバーの「User 」メニューに「Logout 」というエントリがあります。 |
マジックを使用するか否かにかかわらず、Checkmk システムの強固な基盤を構築できたことを願っています。 このビギナーズガイドで取り上げたほぼすべてのトピックについては、ユーザーガイドの他の記事でより詳細な情報をご覧いただけます。
今後、Checkmk をうまく活用していただけますよう、心よりお祈り申し上げます。
