Checkmk
to checkmk.com
Important

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.

1. 概要

ホストタグは、重要度、IP アドレスファミリー、ホストがデータを受信する方法など、ホストを構造化および整理するためにホストに割り当てることができるキーワードです。 たとえば、ホストタグは Checkmk のフォルダ構造を介して継承され、ホストをターゲットとするルールの条件として選択することができます。

ホストタグは、設定を行うだけでなく、監視にも役立ちます。 たとえば、ビューにはホストタグのフィルタがあり、Virtual host tree スナップインでは、タグに基づいてフォルダをツリー図で整理することができます。

同様に、コマンドラインでは、@foo 構文を持つ多くのコマンドで、foo タグを持つすべてのホストを選択することができます。

すべてが確実に意味のあるものになるように、ご使用の環境に最も適し、ホストの構造化の手順の他のオプションと一致する、独自のホストタグ構造を作成することをお勧めします。 一度設定すると、ホストタグは後で変更することも可能ですが、タグのID を変更するとほとんどの場合手作業で再作業が必要になるため、変更は避けるべきです。

Setup で独自のホストタグを定義する方法をご説明する前に、まずいくつかの用語を明確にしておきましょう。

1.1. ホストタググループ

ホストタグは、ホストタググループと呼ばれるグループに整理されます。 タググループには 2 種類あります。 この区別は、ホストタグの全体的な構造にとって非常に重要です。 複数のタグを含むタググループと、1 つのタグのみを含むタググループ(チェックボックスタグ)があります

複数のタグを含むグループ

このようなホストタググループの好例は、タグ「Data center 1 」および「Data center 2 」を含む「Data center 」です。 これにより、各ホストは、この 2 つのデータセンターのいずれかに正確に割り当てられます。 どちらのデータセンターにも属さないホストを作成する場合は、3 つ目の選択オプション、たとえば「Not in a data center 」が必要になります。

Checkmkの各ホスト、このタググループから1 つのタグを正確に割り当てられます。 そのため、デフォルト値の設定が重要になります。 デフォルト値は、ホストにグループからタグが明示的に割り当てられていない場合に設定されます。 タググループを作成する場合、リストの最初のタグがデフォルト値になります。Data center の例では、Not in a data center タグが適切なデフォルト値となるでしょう。

一部のユーザーは、ホストで実行されているアプリケーションをタググループにマッピングしようとしました。 たとえば、グループは「Application 」と名付けられ、タグは「Oracle 」、「SAP 」、「MS Exchange 」などが設定されていました。 これは、ホストに2 つのアプリケーションがインストールされるまで問題なく動作しますが、その日は必ずやってきます。

ホストにアプリケーションを割り当てる適切な解決策は、次のとおりです。 アプリケーションごとに、2 つのオプション(つまりタグ)のみを提供する個別のタググループを作成します。Yes またはNoNo のようなタグをまったく使用せずに、タグを有効または無効にしたいだけの場合は、Checkmk のチェックボックスタグを使用してください。

チェックボックスタグ

Checkmk では、1 つのタグのみで構成されるタググループ、いわゆるチェックボックスタグを作成することができます。 上記のアプリケーションの例では、単一のタグYesを含むタググループOracle を作成することができます。つまり、No は省略することができます。 チェックボックスタグは、ホストタグのリストには表示されず、チェックボックスとして表示されます。 チェックボックスをオンにするとタグが設定され、オフにするとタグが省略されます。 複数のタグを含むタググループでは、常に 1 つのタグが設定またはアクティブになりますが、チェックボックスタグはデフォルトでは非アクティブのままです。

1.2. トピックス

ホストタググループの数が多い場合(たとえば、さまざまなアプリケーションを多数使用している場合など)、混乱を避けるために、タググループをトピックスにまとめることができます。 同じトピックスを持つすべてのタググループ

  • は、ホストのプロパティで別のボックスにまとめられ、

  • たとえば、アプリケーション / Oracle というルール条件では、タググループの前にトピックの名前が表示されます。

したがって、トピックは「視覚的な機能」のみを持ち、実際の設定には影響を与えません。

1.3. 補助タグ

補助タグは、次の問題を解決します。 ホストタググループOperating System を、4 つのタグLinuxAIXWindows 2019 、およびWindows 2022 で定義するとします。 ここで、すべての Windows ホストに適用されるルールを定義したいとします。

これを行う 1 つの方法は、Windows という補助タグを定義することです。 この補助タグをWindows 2019Windows 2022 の両方に割り当てます。 いずれかのタグを持つホストは、Checkmk から補助タグWindows を常に自動的に受け取ります。 ルールでは、Windows は条件を解決するための個別のタグとして表示されます。

このソリューションの大きな利点は、後で新しいバージョンの Windows を非常に簡単に追加できることです。 たとえば、2030 年に Windows 3.0 が登場したら、新しいタグ「Windows 3.0 」を作成し、補助タグ「Windows 」を割り当てるだけです。 この補助タグを使用する既存のルールはすべて、新しいタグが割り当てられたホストに自動的に適用されます。 これにより、個々のルールをチェックして編集する手間が省けます。

2. 定義済みタググループ

ホストタグの設定は、Setup > Hosts > Tags:

List of all predefined host tag groups.
新しくセットアップしたシステムでは、定義済みタググループと補助タグのみがリストに表示されます。

Checkmk は、インストール時に複数のホストタググループを設定します。

グループ ID グループタイトル (名前) 含まれるタグ 機能

criticality

重要度

本番システム (ID:prod), ビジネスクリティカル (ID:critical), テストシステム (ID:test), このホストをモニターしません (ID:offline)

システムの重要度。offline タグには、ホストの監視を無効にするルールHosts to be monitored が含まれています。その他のタグは単なる例であり、初期機能はありません。ただし、これらをホストに割り当てて、ルールで使用することは可能です。

networking

ネットワークセグメント

ローカルネットワーク (低レイテンシー) (ID:lan)、WAN (高レイテンシー) (ID:wan)、DMZ (低レイテンシー、セキュアアクセス) (ID:dmz)

このタググループはあくまで例です。wan タグには、WAN のより長いランタイムに合わせて ping 応答時間の閾値を調整する、PING and host check parameters というルール例が保存されています。

agent

Checkmk エージェント/API 統合

API 統合が設定されている場合はそれ、それ以外の場合は Checkmk エージェント (ID:cmk-agent)、設定済みの API 統合、および Checkmk エージェント (ID:all-agents)、設定済みの API 統合、Checkmk エージェントなし (ID:special-agents)、API 統合なし、Checkmk エージェントなし (ID:no-agent)

ホストからデータを取得する方法を指定します。

piggyback

ピギーバック

他のホストのピギーバックデータがある場合はそれを使用します (ID:auto-piggyback)、常にピギーバックデータを使用し、それを期待します (ID:piggyback)、ピギーバックデータは使用しません (ID:no-piggyback)。

このタグは、ホストに対してピギーバックデータを期待/処理するかどうか、およびその方法を決定します。

snmp_ds

SNMP

SNMPを使用しない(ID:no-snmp )、SNMPv2またはv3を使用(ID:snmp-v2 )、SNMPv1を使用(ID:snmp-v1

SNMP 経由でデータを (追加で) 収集するかどうかを指定します。

address_family

IP アドレスファミリー

IPv4 のみ (ID:ip-v4-only)、IPv6 のみ (ID:ip-v6-only)、IPv4/IPv6 デュアルスタック (ID:ip-v4v6)、IP なし (ID:no-ip)

ホストを IPv4、IPv6、またはその両方で監視するかどうかを決定します。 「IP なし」は、スペシャルエージェントを介してクエリされるホストに関連します。

定義済みタググループは、ビルトイン([Actions ] 列)としてマークされていない限り、カスタマイズすることができます。 ビルトインタググループは、Checkmk が構成を生成する際に内部的に必要となるため、変更することはできません。 一方、Criticality またはNetwork Segment の変更は問題ありません。 これらはあくまで例です。

3. タググループの作成

カスタムホストタグの作成は、 Tag groupsページから開始します。このページは、Setup > Hosts > Tags からアクセスできます。

ホストタグを作成する前に、タグを含むホストタググループを作成する必要があります。 新しいタググループを作成するには、[Add tag group ] ボタンをクリックします。これにより、Basic settings ボックスが開き、以下のフィールドが表示されます。

Basic settings for a tag group.
ID およびタイトル (名前) は、タググループの基本設定で指定します。

Tag group ID は、タググループの ID として内部で使用されます。 一意である必要があり、後で変更することはできません。 使用可能な文字は、通常のルール(英字、数字、アンダースコアのみ)に従います。

Title は、タググループに関する GUI のあらゆる場所で使用されます。 これは表示用のテキストであるため、既存の設定に影響を与えることなく、いつでも変更することができます。

Topic は空のままにしておくこともできます。 その場合、タググループは、ホストプロパティの [Custom attributes ] ボックスに、既定の [Criticality ] および [Networking Segment ] グループとともに表示されます。 独自のトピックスを作成して、タググループをきれいにまとめることもできます。

最も重要なのは、次のボックス「Tag choices」です。ここでは、新しいタググループに割り当てるホストタグを 1 つずつ指定します。

List of host tags belonging to the tag group.
各ホストタグには、ID とタイトルも必要です。

このため、Tag ID はグループ内で一意である必要があります。

ボタンで通常どおり変更できる順序は、見た目の機能だけではありません。 リストの最初のタグがデフォルト値になります。 つまり、このタググループに明示的な設定がないすべてのホストは、自動的にこの値に設定されます。

Auxiliary tags で、各ホストタグに補助タグを割り当てて、ホストタグが選択されたときにホストに自動的に追加することができます。

チェックボックスタグも、タググループを作成し、その中に1 つのタグのみを含めることで作成できます。

Basic settings and tag definition for a checkbox tag.
チェックボックスタグのタググループには、1 つのエントリだけが正確に含まれます。

ホストのプロパティでは、このタグは次のように表示されます。

Properties of a host with a checkbox tag.
チェックボックスタグは、デフォルトでは使用不能になっています。

4. 補助タグの作成

定義済みホストタググループに加えて、Checkmk は、一致する補助タグも設定します。これらは、 Tag groupsページに一覧表示されます。

Add aux tag を使用して、新しい補助タグを作成することができます。

The settings for an auxiliary tag.
補助タグの基本設定は、タググループの設定とほぼ同じです。

固定 ID と説明的なタイトルを設定することで、補助タグに必要なすべての設定が定義されます。 補助タグのホストタグへの割り当ては、タググループで行います。

5. タググループおよびタグの変更と削除

既存のタググループの設定を変更することは、一見簡単な操作のように思われますが、既存の設定に大きな影響を与える場合があるため、必ずしもそうとは限りません。

表示のみに影響する変更や、新しいオプションを追加するだけの変更は問題ではなく、既存のホストやルールには影響しません。

  • タグおよびタググループのタイトルまたは件名を変更する。

  • 既存のタググループに別のタグを追加すること。

その他の変更は、影響を受けるタグを使用している既存のフォルダ、ホスト、およびルールに影響を与える可能性があります。 その場合、Checkmk は単にそのような変更を禁止するだけでなく、すべてが再び意味を成すように、既存の設定を変更しようとします。 正確な結果は、操作の種類によって異なります。

Tip

Checkmk では、フォルダ、ホスト、およびルールで現在使用されているホストタグおよび補助タグを表示することができます。 これを行うには、 Tag groupsページで、Tags > Tag usage メニュー項目を選択します。

5.1. タググループの削除

タググループを削除すると、影響を受けるタグに関する情報がすべてのホストから削除されます。 タググループが既存のルールの条件として使用されている場合、次の警告が表示されます。

Warning when deleting a tag group.
タググループを削除する場合、影響を受けるルールの変更方法を決定します

ここでは、影響を受けるホストタグの既存のルールから条件を削除するか、ルール全体を削除するか決定する必要があります。 どちらの方法も有用ですが、Checkmk ではお客様の運用にどちらが適しているかを判断することはできません。

削除するルールは、[Delete rules containing tags that have been removed, …​ ] ボタンで選択します。 ただし、タググループ内のタグと条件が一致するルールのみ削除されます。 そのようなタグと条件が一致しないルールは、その条件が失われるだけで、ルール自体は残ります。 たとえば、dc02 タグのないすべてのホストに対してルールを作成し、dc02 タグを構成から完全に削除した場合、この条件は明らかに 冗長になります。

よくわからない場合は、警告にリストされているルールを確認し、影響を受けるタググループのすべての条件を手動で削除または変更してください。

5.2. タグの削除

タグは、グループを編集してタグを削除し、変更を保存することで削除できます。 この操作を行うと、タググループを削除した場合と同様の警告が表示される場合があります。

影響を受けるタグが設定されていたホストは、自動的にデフォルト値に設定されます。 これは、タググループの作成で説明したように、リストの最初のタグになります。

削除するタグを条件として含むルールについては、前のセクションで説明したタググループの削除の手順と同じです。

5.3. 補助タグの削除

補助タグは、ホストタグに割り当てられていない場合にのみ削除できます。

5.4. タグ ID の名前変更

タググループとは異なり、タグの ID は後で実際に変更することができます。 これは、ID は一度割り当てられると変更できないという Checkmk の原則の例外です。 ただし、たとえば、別のシステムからデータをインポートする準備をして、その作業のために既存の異なる Checkmk タグ構造を適応させる必要がある場合など、この例外は便利です。

タグ ID の名前を変更するには、タググループを編集し、そこでタグ ID を変更してください。

重要:この操作を行う際は、タグのタイトルは変更しないでください

Checkmk が設定の変更を続行する前に、その結果について警告が表示されます。

Warning when renaming tag IDs.
この警告では、Checkmk がタグ ID の名前変更をどのように実行するかが表示されます。

Checkmk は、影響を受けるすべてのフォルダ、ホスト、およびルールを適宜変更します。

他の場所で手動で調整する必要がある場合もありますのでご注意ください。 たとえば、タグ ID は、タグでフィルタリングするビューを呼び出す URL に含まれています。 Checkmk は、これらの URL をカスタマイズすることはできません。 また、レポートおよびダッシュボードのフィルタ設定は、自動的にカスタマイズすることはできません。

6. 監視にホストタグを表示する

ホストは通常、Checkmk でフォルダに整理されます。 その結果の階層構造を、スナップインTree of folders 」の下部にあるサイドバーにツリービューで表示し、そこからブランチごとにフィルタリングされたホストのデフォルトビューを呼び出すことができます。 このスナップインには、トピックのフィルタリングオプションと、このツリー用の代替ビューのオプションが追加されています。

Virtual host tree スナップインを使用して、ホストタグからこのようなツリービューを作成し、「仮想」階層構造をマッピングすることもできます。 ホストタグに加えて、このようなツリーにフォルダ構造を含めることもできます。この場合、仮想ツリーの数とそれぞれのブランチの数に制限はありません。

ホストに 3 つのタググループ「Criticality 」、「Data center 」、「Operating systems 」を使用しているとします。 すると、最上位のツリーレベルでシステム、その下でデータセンター、そして最後にオペレーティングシステムで選択されます。 各階層レベルでは、これらのタグを持つすべてのホストのビューに直接移動します。

仮想ホストツリーを作成するには、まず、サイドバーの下部にある ボタンを使用して、スナップインを追加します。

Snap-in Virtual host tree.
スナップインを初めて呼び出すと、設定がまだ不足しています。

テキスト内のリンクをクリックして欠落している設定にアクセスするか、グローバル設定のSetup > General > Global Settings > User interface > Virtual host trees から手動でページを開きます:

The default in the global settings for the Virtual host tree.
ボタンをクリックすると、仮想ホストツリー設定を開くことができます。

次に、Create new virtual host tree configuration ボタンを使用して新しいツリーを作成します。

Defining the tree structure in the global settings.
ホストタググループは、ツリー内のレベルを定義します。

まず、ツリーに ID とタイトルを割り当てます。 オプションで、[Exclude empty tag choices] をチェックして、空のツリーブランチの表示を除外することができます。 次に、Add new element を使用して、目的のタググループを目的の順序で追加します。Folder tree を使用して、フォルダ階層を含めることもできます。 ボタンを使用して、通常どおり階層の順序を変更することができます。

保存すると、スナップインに選択した階層構造がツリー構造で表示されます。

Snap-in Virtual host tree with 3 tag groups.
設定したスナップインには、3 レベルのタググループが表示されます。

ツリーの枝と葉は、設定で選択したタググループからのホストタグです。 「葉」の横にある括弧内の数字は、そのタグを持つホストの数を示しています。

7. ファイルおよびディレクトリ

ファイルパス 機能

~/etc/check_mk/(conf.d|multisite.d)/wato/tags.mk

これらのファイルには、すべてのホストタグの定義が含まれています。

このページでは