依存 CI 管理

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:13分
  • CI のライフサイクルの更新は、その依存 CI に影響します。たとえば、依存 CI が依存している CI が削除されると、依存 CI は孤立し、それ以上使用されなくなります。CMDB の完全性と健全性を維持するために、ライフサイクルの更新によって影響を受ける依存 CI にカスケードクリーンアッププロセスが適用されます。

    独立 CI と依存 CI の詳細については、「CMDB 分類とクラスの依存関係」を参照してください。

    CI を削除またはアーカイブした後に依存 CI が適切に管理されるようにするには、次のことを行う必要があります。
    1. このページの説明に従って、依存 CI 管理を有効にします。
    2. 依存 CI 管理によって生成される CMDB データマネージャータスクを手動で承認するか、それらのタスクをレビューや承認を必要としないように構成します。
    注:
    データマネージャーのコンテキストでの孤立した依存 CI は、CMDB ヘルスのコンテキストでの孤立 CI とは異なります。データマネージャーのコンテキスト内の孤立した依存 CI は依存クラスに属しており、依存関係がありません。CMDB ヘルスのコンテキストでの孤立 CI の定義はより広範であり、CMDB ヘルス孤立ルールに一致するすべての CI が含まれます。CMDB ヘルスにおける孤立 CI の詳細については、「CMDB ヘルス KPI とメトリクス」を参照してください。
    カスケードクリーンアップが必要な依存 CI の例:
    • Tomcat アプリケーション (T1) は、Linux サーバー (L1) で実行され、WAR ファイル (W1) が含まれています。L1 が削除されると、T1 と W1 は孤立した依存 CI になります。
    • ハードウェア自体が削除されると、ネットワークアダプタは孤立した依存 CI になります。
    • Linux サーバーが廃止され、提供終了が設定された場合、サーバーが動作しなくなると、それに依存するアプリケーションも動作しないことが想定されます。

    依存 CI 管理を有効にする

    依存 CI 管理を有効にするには:
    • CMDB データマネージャーの環境を構成します。CMDB データマネージャーの環境と CMDB データマネージャー独自の前提条件を構成する方法の詳細については、「操作 - CMDB データマネージャー」を参照してください。
    • cmdb.dependent.ci.cascade.op.enabled システムプロパティが true (デフォルト) に設定されていることを確認します。このプロパティはカスケード操作を有効にするもので、ベースシステムにはありません。そのため、このプロパティ値を表示または変更するには、まずシステムプロパティ [sys_properties] テーブルに追加する必要があります。
    • カスケード廃止プロセスを有効にするには、CI のカスケード廃止を管理するために使用されるシステムプロパティ cmdb.dependent.ci.cascade.retire.enabled が true (デフォルトでは false) に設定されていることを確認します。下流の CI の依存関係をチェックするビジネスルール After BR: Track “Retired” CIs は、このプロパティが true に設定されている場合にのみ実行されます。このプロパティはベースシステムには存在しません。表示または変更するには、まずシステムプロパティ [sys_properties] テーブルに追加する必要があります。

    カスケードクリーンアップ操作は、依存 CI 管理機能を有効にした場合にのみ適用されます。機能を有効にする前に CMDB にすでに存在している孤立した依存 CI にカスケードクリーンアップを適用するには、「既存の孤立した依存 CI のカスケードクリーンアップ」を参照してください。

    CMDB データマネージャーを使用してカスケードクリーンアップ操作を実行する

    依存 CI 管理プロセスは、CMDB データマネージャー を使用して、次のように CMDB 依存 CI 元帳 [cmdb_Dependent_ci_ledger] テーブル内の依存 CI のライフサイクル更新を処理します。
    1. CI のライフサイクル更新について、ユーザーからの承認を要求して取得します。
    2. これらの操作が承認された後に、CI の更新を実際に削除、アーカイブ、または廃止します。

    システムは、削除、アーカイブ、または廃止する準備ができている CI をターゲット CI にして、「依存 CI - 削除」、「依存 CI - アーカイブ」、および「依存 CI - 廃止」データマネージャーポリシーのためのタスクを生成します。これらのポリシーは、それぞれの「オンデマンド」ポリシータイプで設定されます。データマネージャーアドミンまたはユーザーは、Managed By Group 設定に従い、データマネージャーが依存 CI に対してそれぞれのサブフローを適用する前に、これらのタスクをレビューして承認する必要があります。

    これらのタスクを自動的に承認するには、CMDB データマネージャーを使用して、それぞれのデータマネージャーポリシーの [要レビュー] フラグをクリアします。これらのタスクは、ユーザーの介入を必要とせずに実行されます。

    カスケード廃止依存 CI

    CI が廃止に設定されている場合、依存 CI 管理データプロセスは、その CI に依存するすべての CI も廃止にカスケード更新しようとします。

    1. CSDM 標準に従って CI の Life Cycle Stage 属性が [提供終了] に設定されると、CI が廃止に更新されます。
    2. ビジネスルール After BR: Track “Retired” CIs が実行され (システムプロパティ cmdb.dependent.ci.cascade.retire.enabledtrue の場合のみ)、CI がダウンストリームの依存関係を持つクラスに属しているかどうかをチェックします。

      属している場合は、CI が CMDB CI 提供終了元帳 [cmdb_ci_end_of_life_ledger] テーブルに追加されます。

    3. CMDB CI 提供終了元帳 [cmdb_ci_end_of_life_ledger] テーブルの CI ごとに、スケジュール済みジョブ CMDB Cascade Retire Dependent CIs が、CI 関係 [cmdb_rel_ci] テーブル内の CI の関係をチェックします。依存 CI との依存関係がある場合、その依存 CI は [廃止] アクションで CMDB 依存 CI 元帳 [cmdb_dependent_ci_ledger] テーブルに追加されます。

      依存関係性ルールの詳細については、「CMDB 依存関係性ルール」を参照してください。

    4. スケジュール済みジョブ CMDB DependentCI Policy Processor が実行され (システムプロパティ cmdb.dependent.ci.cascade.retire.enabled が true の場合)、CMDB 依存 CI 元帳 [cmdb_dependent_ci_ledger] テーブルの CI を処理します。これらの CI は、CMDB データマネージャーにより、承認時に廃止可能として設定されます。実際に CI を廃止するためのタスクが、依存 CI の廃止ポリシーに対して CMDB データマネージャーで作成されます。

    依存 CI のカスケードアーカイブ

    CI をアーカイブすると、依存 CI が CMDB で孤立として残ります。古いデータの蓄積を防ぐために、孤立した依存 CI をカスケードアーカイブするクリーンアッププロセスが適用されます。

    孤立した依存 CI は、すぐにはアーカイブされません。CI がアーカイブされると、[cmdb_rel_ci] テーブル内にあるその CI の CI 関係レコードもすべてアーカイブされます。次に、このアーカイブの結果として孤立した依存 CI がチェックされます。孤立した依存 CI として識別される依存関係チェーン内の CI は、次のいずれかの条件がチェックされます。次のいずれかの条件を満たす CI は孤立した依存 CI ではないため、アーカイブされません。

    • 未処理の重複 CI である CI (この CI は未解決の重複排除タスクに関連付けられています)。
    • 複数の親 CI を持つ CI。
    • 除外されたクラスに属する CI。除外されたクラスは、CMDB 依存 CI クラス除外 [cmdb_Dependent_ci_class_exclusion] テーブルに格納されます。基本システムでは、そのテーブルには、cmdb_ci_vmcmdb_ci_vmware_instance、およびその他の VMware 関連クラスなど、いくつかのクラスが事前に設定されています。孤立した依存 CI の管理から除外されるクラスのセットを管理するには、そのテーブルにレコードを追加または削除します。
    最終的には、これらの条件が適用されない CI のみが CMDB 依存 CI 元帳 [cmdb_Dependent_ci_ledger] テーブルに追加されます。これらの CI は、CMDB データマネージャーにより、承認時にアーカイブ可能として設定されます。

    依存 CI のカスケード削除

    CI を削除すると、その依存 CI が CMDB で孤立したままになる可能性があります。古いデータの蓄積を防ぐために、孤立した依存 CI をカスケード削除するクリーンアッププロセスが適用されます。

    1. CSDM 標準に従って CI のライフサイクルステージ属性が [提供終了] に設定されると、CI は削除されるように更新されます。
    2. 削除された CI に関連付けられている cmdb_rel_ci テーブル内のすべての関係が削除されます。

    3. ビジネスルール After BR: CMDB Dependent CI Delete が実行され (システムプロパティ cmdb.dependent.ci.cascade.op.enabledtrue の場合のみ)、CI 関係 [cmdb_rel_ci] テーブル内の削除された各関係について、関係内の他の CI (親または子) が孤立した依存 CI であるかどうかが確認されます。

      そうであった場合、これらの孤立した依存 CI は、CMDB 依存 CI 元帳 [cmdb_dependent_ci_ledger] テーブルに追加され、[アクション] が [削除] に設定されます。

    4. スケジュール済みジョブ CMDB DependentCI Policy Processor が実行され (システムプロパティ cmdb.dependent.ci.cascade.retire.enabled が true の場合)、CMDB 依存 CI 元帳 [cmdb_dependent_ci_ledger] テーブルの CI を処理します。これらの CI は、CMDB データマネージャーにより、承認時に削除可能として設定されます。実際に CI を削除するタスクが、依存 CI 削除ポリシーに対して CMDB データマネージャーで作成されます。

    孤立した依存 CI は、すぐには削除されません。CI 関係 [cmdb_rel_ci] テーブルの各 CI 関係を削除する前に、システムは、関係の他の CI が依存クラスに属しているかどうかをチェックします。削除された CI に依存していると識別された依存関係チェーン内の CI は、次のいずれかの条件を満たしているかどうかチェックされます。次のいずれかの条件を満たす CI は孤立した依存 CI ではないため、削除のマークは付けられません。

    • 未処理の重複 CI である CI (この CI は未解決の重複排除タスクに関連付けられています)。
    • 複数の親 CI を持つ CI。
    • 除外されたクラスに属する CI。除外されたクラスは、CMDB 依存 CI クラス除外 [cmdb_Dependent_ci_class_exclusion] テーブルに格納されます。基本システムでは、そのテーブルには、cmdb_ci_vmcmdb_ci_vmware_instance、およびその他の VMware 関連クラスなど、いくつかのクラスが事前に設定されています。孤立した依存 CI の管理から除外されるクラスのセットを管理するには、そのテーブルにレコードを追加または削除します。
    最終的には、これらの条件が当てはまらない CI のみが CMDB 依存 CI 元帳 [cmdb_Dependent_ci_ledger] テーブルに追加されます。これらの CI は、CMDB データマネージャーにより、承認時に削除可能として設定されます。

    無関係な関係性

    削除とアーカイブ操作の場合、依存 CI 関係性評価構成 [cmdb_dependent_ci_extra_rels_config] テーブル内の CI の無関係な関係性も追跡されます。無関係な関係性とは、CI の依存関係のチェーンに含まれていない関係であり、それらの削除またはアーカイブは cmdb.dependent.ci.extra.rel.check システムプロパティの値に依存します。このプロパティはデフォルトで true に設定されています。この場合、無関係な関係性は削除またはアーカイブされません。プロパティを false に設定すれば、無関係な関係性を削除してアーカイブすることができます。

    cmdb.dependent.ci.extra.rel.check プロパティはベースシステムに存在しません。プロパティ値を表示または変更するには、まずシステムプロパティ [sys_properties] テーブルに追加する必要があります。

    既存の孤立した依存 CI のカスケードクリーンアップ

    依存 CI 管理機能を有効にすると、カスケードクリーンアップ操作は、この機能が有効にされた時点からのみ適用されます。ただし、機能が有効になる前に CMDB にすでに存在している孤立した依存 CI に対して、同様のカスケードクリーンアップ操作を適用する必要がある場合があります。

    クリーンアップ孤立 CI のスケジュール済みジョブをアクティブ化して、CMDB 全体で孤立した依存 CI のワンタイムカスケードクリーンアップを実行します。クリーンアップ孤立 CI のスケジュール済みジョブは、CMDB 全体をチェックして孤立した依存 CI を特定します。これらの CI は、カスケード削除された CI と同じ方法で処理されます。削除する準備ができている CI は、CMDB 依存 CI 元帳 [cmdb_dependent_ci_ledger] テーブルに追加されます。CMDB データマネージャーは、[CMDB データマネージャーを使用してカスケードクリーンアップ操作を実行する] セクションで説明されているように活用されます。

    クリーンアップ孤立 CI のスケジュール済みジョブは、1 回のみ実行され、その後、ジョブは非アクティブになります。CMDB のサイズによっては、クリーンアップ孤立 CI のスケジュール済みジョブが完了するまでに数日かかる場合があります。

    サンプルシナリオ: カスケード廃止

    1. 依存 CI 管理を有効にします。
    2. CMDB データマネージャーで、廃止ポリシーを作成して公開します。たとえば、依存 CI のネットワークアダプタおよびファイルシステムと関係する独立 Linux サーバー CI を廃止することにします。
    3. スケジュール済みジョブ CMDB Data Manager Retire Policy Processor が実行されるのを待つか、手動で実行します。
    4. データマネージャーの概要ページで、オープン状態のタスクカードを選択し、廃止タスクを承認します (承認 = 承認済み)。自動的に変更されない場合は、タスクの状況を [対応中] に変更します。これにより、Linux サーバー CI は廃止されることになり、cmdb_ci_end_of_life_ledger テーブルに追加されます。
    5. スケジュール済みジョブ CMDB Cascade Retire Dependent CIs を実行します。

      このスケジュール済みジョブは、cmdb_ci_end_of_life_ledger テーブル内の各 CI を処理し、 cmdb_rel_ci テーブル内の関係性をこの CI について照会します。他の依存 CI との関係が存在する場合、それらの依存 CI は、状況 =「準備完了」およびアクション =「廃止」の設定で cmdb_dependenct_ci_ledger テーブルに追加されます。

    6. スケジュール済みジョブ CMDB DependentCI Policy processor が実行されるのを待つか、手動で実行します。このスケジュール済みジョブは、OOB 依存 CI 廃止ポリシーに基づき、cmdb_dependenct_ci_ledger テーブルの CI を対象としたタスクを作成します。
    7. データマネージャーの概要ページで、オープン状態のタスクカードを選択し、「依存 CI – 廃止...」と記述されているタスクを承認します。