CMDB 識別および調整エンジンの基礎<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 識別ルール、調整ルール、依存関係、重複排除、再分類、利用可能なツールなど、CMDB 識別および調整エンジン (IRE) の主要な概念について説明します。この記事では、CMDB を使用するアドミニストレーターとプラットフォームエンジニア向けに基本的な概要を提供します。 この記事の内容 IRE の概要IRE コンポーネント独立型 CI と依存型 CIDuplicates (重複)再分類部分的なアイテムIRE フローIRE ツールクリーンアッププロパティ IRE の概要 識別および調整エンジン (IRE) は、ペイロードを処理して構成管理データベース (CMDB) を維持する一元化されたフレームワークです。IRE は、新しい構成アイテム (CI) の作成と既存の CI の更新を処理します。 一元化されたフレームワークがないと、複数のソースが独立したロジックで CMDB を更新すると、CI の重複、望ましくない更新、属性フラッピング (複数のソースが異なる値で同じフィールドを継続的に更新する) が発生する可能性があります。IRE は、CMDB に重複を排除し、最も関連性の高いデータを維持する単一のフレームワークを提供することで、これらの問題を防ぎます。 注意:IRE をバイパスする CMDB への直接更新をブロックする組み込みロジックはありません。ただし、CMDB を直接更新すると、IRE を使用するメリットが失われます。CMDB へのすべての更新は、IRE を通じて行う必要があります IRE コンポーネント 識別子 識別子は、CI が CMDB に既に存在するかどうかを判断するために IRE が使用するクラスの一連のルールです。クラスに識別子がない場合は、クラス階層から識別子が継承されます。たとえば、cmdb_ci_hardware の子分岐内のほとんどのクラスは、ハードウェア識別子を継承します。 識別ルール IRE は識別ルールを使用して CMDB 内の CI を検索します。各識別ルールには、CMDB で一致を検索するために使用される一連の属性が含まれています。 IRE は受信ペイロードを分析し、識別ルールを優先順位順に適用して既存の CI を検索します。一致するものが見つからない場合、IRE は新しい CI を作成します。 包含ルール 包含ルールは、識別プロセスに含まれる CI の範囲を絞り込みます。包含ルールで設定された基準に一致しない CI は、IRE 処理から除外されます。 IRE は最初に識別ルールを適用して CMDB 内の CI を検索し、次に包含ルールを適用してそれらの CI を使用できるかどうかを判断します。 たとえば、CMDB 内の廃止された Windows Server CI がデータソースによって更新されなくなった場合、包含ルールによって IRE がそれらのレコードを更新しないようにすることができます。ただし、包含ルールが正しく構成されていない場合、CI が重複する可能性があります。 注意:クラス別に CI を除外するように包含ルールを構成すると、重複が発生します。 識別ルール、包含ルール、およびそれらの構成方法の詳細については、「識別ルール」を参照してください。 調整ルール IRE は調整ルールを使用して、優先順位付けするデータソースを決定します。優先度が最も高いデータソースによって属性値が決まります。これにより、信頼性の低いデータソースがクラス内のフィールドを上書きするのを防ぐことができます。調整ルールがないと、データソースは互いの更新を上書きします。 動的ルールと静的ルールの違いなど、調整ルールの詳細については、「調整ルール」を参照してください。 データ更新ルール 優先度の高いデータソースが CI の更新の送信を停止すると、時間の経過とともにデータが古くなる可能性があります。データ更新ルールは、CI データが古いと見なされるタイミングを指定します。このしきい値に達すると、優先度の低い他の許可されたデータソースがそれらの CI を更新できます。 注意:動的調整ルールが有効な場合、データ更新ルールは影響を与えません。データ更新ルールは、静的調整ルールでのみ使用されます。 詳細については、「データ更新ルールの作成」を参照してください。 CMDB 360 CMDB 360 は、CI 属性の更新に関連するディスカバリーソースと提案された値の完全な履歴を保持します。CMDB 360 データを使用して以下を行います。 さまざまなディスカバリーソースによる CMDB への入力を CI 属性レベルで追跡します特定のディスカバリーソースでの CI 更新を元に戻すことができる更新された調整ルールを使用して属性値を再計算できる CMDB 360 は、従来のマルチソース CMDB 機能のすべての機能に加えて、アナリティクスダッシュボードやクエリ機能などの追加機能を提供します。 詳細については、「CMDB 360」を参照してください。 独立型 CI と依存型 CI CI の依存関係は、CI クラスマネージャーで、CI のクラスの依存関係ルールを介して指定されます。 独立 CI:独自に存在し、他の CI に依存しないサーバー CI などの CI。依存 CI:別の CI との関係に依存し、依存関係なしで単独では存在できない CI。たとえば、ネットワークアダプター CI は、それらを含むハードウェア CI なしでは意味のある存在にはなりません。また、アプリケーション CI は、それらがホストされているサーバー CI なしでは存在できません。 次の画像は、Tomcat クラスの依存関係を示しています。Tomcat のペイロードには、ハードウェア CI との [Runs on] 関係が含まれている必要があります。 依存 CI の識別プロセスは、独立 CI のプロセスとは異なります。依存 CI ペイロードに必要な関係が含まれていない場合、IRE はエラーを返します。 ペイロードに必要なすべてのコンポーネントが含まれていることを確認するには、識別シミュレーションを使用します。手順については、「 CMDB の IRE ペイロードをビルドしてトラブルシューティングする方法を参照してください。 識別子タイプ 独立識別子 - 他の CI または関係とは無関係に、CI の独自の属性に基づいて CI を識別します。依存識別子 - 最初に独立 CI を識別する必要があります。CI は 1 つ以上の CI に依存することができ、依存 CI は 1 つの親 CI のみと依存関係を持つことができます。CI とその依存 CI の間の関係タイプは、識別プロセスに含まれます。依存 CI の識別をサポートするには、CI タイプ内の依存関係チェーンを定義する依存関係を作成します。 依存 CI の識別に使用されるペイロードには、修飾子チェーンとの関係を含めることができます。このような関係では、一致する親子ペアが存在する場合、システムはペイロード内の修飾子チェーンをデータベース内の CI の修飾子チェーンと比較します。相違がある場合、データベース内の修飾子チェーンは、その関係のペイロード内の修飾子チェーンと一致するように更新されます。 次の画像は、ペイロードのビルドに使用されている識別シミュレーションを示しています。生成されるペイロードには次のものが含まれます。 独立した CI (cmdb_ci_win_server)依存 CI (cmdb_ci_network_adapter)ネットワークアダプターに必要な Owns::Owned by 関係 重複 IRE API が呼び出されると、重複が見つかる場合があります。重複が見つかった場合、IRE は重複排除タスクを作成します。 重複排除タスクを使用して重複 CI を解決する方法については、次のリソースを参照してください。 重複排除タスクのレビュー (手動)重複排除タスクの修正 (手動)手動での重複排除タスクの作成重複 CI の検出 重複 CI のトラブルシューティングについては、「レコードの重複をトラブルシューティングする方法」を参照してください。 重複は、CMDB ヘルス正確性ジョブによっても見つかる場合があります。詳細については、「 CMDB ヘルス - 重複メトリクスアルゴリズム」を参照してください。 再分類 CI は、クラスをアップグレード、ダウングレード、または切り替えることによって再分類できます。 アップグレード (階層を上へ移動) — たとえば、Server → Windows Serverダウングレード (階層を下に移動) — Linux サーバー → サーバーなどスイッチ (階層の別の分岐に移動) — プリンター → スイッチなど 警告:CI クラスのダウングレードと CI クラスの切り替え操作は、データ損失につながる可能性があるため避けてください。自動 CI 再分類が有効 (デフォルト設定) になっている場合、識別プロセスの結果として自動再分類が行われ、データが失われる可能性があります。ターゲットクラスに存在しないフィールドのデータは失われます。 再分類の動作を制御する詳細とプロパティについては、「IRE 処理中の CI 再分類を構成する」を参照してください。 部分的なアイテム ペイロードアイテムは、一意の識別に必要なデータが含まれており、次のいずれかのエラーがある場合、部分的なアイテムであると判断されます。一意の識別では、ペイロードアイテムに、source_nameとsource_native_keyの値を含むsys_object_source_infoセクション、CI クラスに指定された識別基準属性の完全なセット、またはその両方が必要です。 部分的なアイテムの IRE エラー: MISSING_MATCHING_ATTRIBUTES — アイテムには、照合に少なくとも 1 つの識別子エントリを使用するための識別基準属性がありません。REQUIRED_ATTRIBUTE_EMPTY - 必須属性がないため、CI を作成できません。MISSING_DEPENDENCY — 依存 CI に、ペイロードで指定された依存関係がありません。INSERT_NOT_ALLOWED_FOR_SOURCE - IRE のデータソースルールにより、指定されたデータソースは指定されたクラスの CI を作成できません。 ペイロードアイテムが部分的なアイテムであると判断されたために処理に失敗した場合、IRE は後で処理するために、部分的ペイロードとして CMDB IRE 部分ペイロード [cmdb_ire_partial_payloads] テーブルに JSON 形式で保存します。IRE は識別子キーを使用して、受信ペイロードと保存された部分的ペイロードとの照合を試みます。 データソースが欠損データを後で送信した場合、IRE は受信ペイロードを保存された部分的ペイロードと照合し、結合します。競合する属性を解決するために、IRE は、source_native_key と source_name が同一の場合は source_recency_timestamp を、それ以外の場合はクラスに指定された静的調整ルールを使用します。結果は、IRE がそれぞれの CI を作成または更新するために処理する完全かつ有効なペイロードです。 90 日以上経過した部分的ペイロードは [cmdb_ire_partial_payloads] テーブルから削除されます。 IRE フロー IRE が各ステージで CI ペイロードを処理する方法の詳細なチュートリアルについては、「 CMDB 識別および調整エンジンが CI ペイロードを処理する方法を参照してください。 IRE ツール CI クラスマネージャー CI クラスマネージャーは、IRE ルールと設定を構成するための中心的な場所です。 CI クラスマネージャーを開くには、[Configuration] > [CI Class Manager] に移動します。 次の画像は、CI クラスマネージャーと、Windows Server クラスの識別ルールと包含ルールの構成を示しています。 識別シミュレーション 識別シミュレーションを開くには、[Configuration] > [Identification/Reconciliation] > [Identification Simulation] に移動します。 識別シミュレーションを使用して IRE ペイロードをビルドする手順については、「 CMDB の IRE ペイロードをビルドしてトラブルシューティングする方法を参照してください。 識別および調整のデバッグ IRE のデバッグの詳細については、「 バックグラウンドスクリプトを使用して識別および調整エンジンをデバッグする方法を参照してください。 IRE エラーの完全なリストについては、「 IRE エラーメッセージを参照してください。 クリーンアップ 重複した CMDB CI 関係レコード、または孤立関係があるか、親/子関係がないレコードを識別して削除する方法については、「 重複する CMDB CI 関係レコードを識別および削除する方法を参照してください。 プロパティ IRE プロパティの包括的なリストについては、「 識別および調整のプロパティを参照してください。