識別ルールは、識別および調整 (IRE) プロセスの一環として CMDB 内の CI を一意に識別するために使用されます。各 CMDB クラスは単一の識別ルールに関連付けることができます。
始める前に
必要なロール:itil には読み取りアクセス、itil_admin (itil の上位) にはフルアクセス権があります。
このタスクについて
CI 識別ルールでは、CI を一意に識別する CI ID、識別子エントリ、および関連エントリを指定します。
識別ルールを作成する前に、以下を確認してください。
- 識別ルール
- CMDB 識別を使用するための一般的なガイドライン
- 事前定義された識別ルールの確認:
- 移動先 .
- [ 階層 ] を選択し、ハードウェア クラスなどを検索して選択します。
- [ハードウェア] バーで [ クラス情報 ] を展開し、[ 識別ルール] を選択します。
- ハードウェアクラス識別ルールの設定を使用して、すべてのセクションとタイルを調べます。
手順
-
移動先 .
-
[ 階層 ] を選択して CI クラスリストを表示し、識別ルールを作成するクラスを選択します。
-
クラスナビゲーションバーで、[クラス情報] を展開して [識別ルール] を選択します。
-
[ 編集 ] を選択して既存のルールを編集するか、[識別ルール] セクションで [追加 ] を選択してルールを作成します。
-
フォームに入力し 、保存 を選択します。
| フィールド |
説明 |
| 依存なし/依存 |
CI ID が他の CI とは独立して CI を識別できるかどうかの指定。 注: ルールを [依存] として設定するには、選択されたクラスの 依存関係ルールを指定する必要があります。 |
| 名前 |
CI ID の名前。 |
| 説明 |
CI ID の説明。 |
-
[識別子エントリ] セクションで、既存の識別子エントリを選択して編集するか、[追加] を選択して作成します。
-
[識別子エントリ] ダイアログ ボックスで、オプションを選択し、[ 次へ] を選択します。
選択したオプションに応じて、次の 3 つのステップのいずれかに進みます。
| オプション |
説明 |
| メインテーブルからの属性を使用する <table> |
現在選択されているテーブルから属性を選択できます (通常の識別子エントリ)。 |
| 他のテーブル (ルックアップ テーブル) からの属性を使用します。 |
現在選択されているテーブル以外の関連テーブルから属性を選択できます (ルックアップ識別子エントリ)。 |
| メインと別のテーブルから属性を使用します (ハイブリッド)。 |
現在選択されているテーブルおよび別のテーブルの両方から属性を選択できます (ハイブリッド識別子エントリ)。 |
-
[メインテーブル <'table'> からの属性を使用] オプション:フォームでオプションを設定し、[保存] を選択します。
[検索するテーブル] は、[CI クラス] リストで現在選択されているテーブルに事前設定されます。
| フィールド |
説明 |
| アクティブ |
識別子エントリが有効であることを指定するチェック ボックス。ルールを適用するには、識別ルール内の少なくとも 1 つの識別子エントリを有効にする必要があります。 |
| 優先度 |
識別子エントリの優先度。識別子エントリは、優先度に基づいて適用されます。優先度番号の低いルールには高い優先度が指定されます。同一の優先度の識別子エントリは、ランダムに適用されます。 優先度の数値は間を空けて設定できます。これにより、既存の優先順位を変更せずに、未使用の優先度の数値を新しいエントリにアサインすることができます。 |
| 基準属性 |
CI を一意に識別する属性のセット。属性は、現在のクラスまたは親クラスに属することができます。注: 基準属性として参照フィールドを追加することができます。ただし、そのようなフィールドが常に有効であるとは限りません。
- 参照フィールドには別のテーブル内のレコードを指す sys_id が格納されているため、現在のテーブルに対して (一意性の点で) 弱い条件の属性と見なされます。
- システムは、参照フィールド内の無効な値を検出し、「不明」に置き換えます。たとえば、無効な Model ID 値は「不明」の値に置き換えられます。また、複数の CI が、「不明」に設定された同じ参照フィールドを持つ場合、これらの CI は重複 CI になります。
|
| null 属性を許可 |
選択すると、少なくとも 1 つの基準属性が null でない場合は、null である基準属性があっても、識別子エントリとの一致を試みます。
そうでない場合、識別子エントリとの一致を試みるには、すべての基準属性に値が必要です。
|
| 親のルール の代替使用を許可 |
この識別ルールで一致が見つからない場合に CI の親の識別ルールが使用されることを許可します。依存識別ルールにのみ適用されます。 |
|
詳細オプション
|
一致 CI を検索するレコードのセットを絞り込むフィルター。
glide.identification_engine.enable_identifier_optional_condition システムプロパティが true (デフォルトでは false) に設定されている場合にのみ使用できます。ベースシステムでは、さまざまなクラスの識別子エントリが詳細オプション条件で事前設定されています。このプロパティを true に設定すると、通常の識別子エントリの事前設定された条件がすべて自動的に適用されます。したがって、予期しない動作を防ぐために、このプロパティを true に設定する前に、通常の識別子エントリで事前定義された条件を確認します。
このプロパティの詳細については、「識別および調整のプロパティ」を参照してください。
|
注: 基準属性に 2 つの属性しかなく、sys_class_name がそのうちの 1 つ (例:[name, sys_class_name]、[ip_address, sys_class_name]) である場合、[null 属性を許可] が有効になっていても他の属性を NULL にすることはできません。この制限は、 sys_class_name が特別なシステム一致属性と見なされるためです。
-
[他のテーブル (ルックアップテーブル) からの属性を使用します。] オプション:
-
[検索するテーブル] を [CI クラス] リストで現在選択されているテーブル以外のテーブルに設定します。
[検索するテーブル] には cmdb_ci の参照フィールドが必要です。ない場合、識別子エントリは無効と見なされます。
-
前の手順に従って、残りのフィールドを設定します。
- オプション:
[詳細オプション] を選択し、ルックアップ識別子の情報を入力します (必要に応じて下にスクロールします)。
| 詳細オプション |
説明 |
| 以下の条件を満たす必要があります |
一致 CI を検索するレコードのセットを絞り込むフィルター。 |
| カウントの完全一致を強制します。 |
ルックアップ識別の場合、CI をルックアップレコード数の完全一致とのみ照合します。強制されると、ペイロード内の CI のすべてのルックアップアイテムは、ルックアップテーブルに一致するレコードを持っており、これらが同じ CI を参照している必要があります。
- CMDB の CI を参照する入力ペイロードからのすべてのルックアップアイテムがある CI のみに一致します。
- 複数の一致がある場合は、最も古く作成された CI が最終一致として選択されます。
強制されていない場合、ルックアップテーブルのレコードと一致するペイロード内の CI のルックアップアイテムが 1 つあれば、一致を考慮するのに十分です。
- CMDB の CI を参照する入力ペイロードからのルックアップアイテムが 1 つ以上あるいずれかの CI に一致します。
- 複数の一致がある場合は、CMDB の CI を参照する入力ペイロードからのルックアップアイテムが最も多い CI が選択されます。
- それでも複数の一致がある場合は、最も古く作成された CI が最終一致として選択されます。
|
-
[保存] を選択します。
-
[メインと別のテーブルから属性を使用します (ハイブリッド)。] オプション:
-
前の手順に従って [全般設定] タブのオプションを設定し、[次へ] を選択します。
-
[メインテーブル設定] タブで、現在選択されているテーブルから使用する属性を選択し、[次へ] を選択します。
[検索するテーブル] は、[CI クラス] リストで現在選択されているテーブルに事前設定されます。
-
[ルックアップテーブル設定] タブで [検索するテーブル] を選択し、 [基準属性] で指定したテーブルから属性を選択します。[検索するテーブル] には cmdb_ci の参照フィールドが必要です。ない場合、識別子エントリは無効と見なされます。
[詳細オプション] を選択し、前の手順に従ってルックアップ識別子の情報を入力できます (必要に応じて下にスクロールします)。
-
[保存] を選択します。
注: ハイブリッドオプションの [null 属性を許可] オプションが false に設定されます。そのため、現在選択されているテーブルとルックアップテーブルの両方から選択された基準属性すべてに値が必要です。また、オプションの条件の設定はルックアップテーブルでのみ使用でき、メインテーブルでは使用できません。
- オプション:
[関連エントリ] セクションで、既存の関連エントリを選択して編集するか、[追加] を選択して作成します。
-
[関連エントリ] フォームを更新し、[保存] を選択します。
表 : 1. 関連エントリフォーム
| フィールド |
説明 |
| アクティブ |
関連エントリが有効であることを指定するチェック ボックス。 |
| 関連テーブル |
一致している CI を参照する関連テーブル。 |
| 参照フィールド |
参照された CI を格納する必要がある関連テーブルの参照済みフィールド。このフィールドは、cmdb_ci テーブル、または cmdb_ci テーブルの子孫を常に参照します。 |
| 優先度 |
指定された関連テーブルの関連エントリの優先度。特定の関連テーブルの関連アイテムを照合する際、優先度番号の低いルールには高い優先度が指定されます。同一の優先度を持つ指定された関連テーブルの関連エントリはランダムに適用されます。 優先度の数値は間を空けて設定できます。これにより、既存の優先順位を変更せずに、未使用の優先度の数値を新しいエントリにアサインすることができます。 |
| 基準属性 |
関連アイテムを一意に識別する属性のセット。属性は、現在のクラスまたは親クラスに属することができます。注: 基準属性として参照フィールドを追加することができます。ただし、そのようなフィールドが常に有効であるとは限りません。
- 参照フィールドには別のテーブル内のレコードを指す sys_id が格納されているため、現在のテーブルに対して (一意性の点で) 弱い条件の属性と見なされます。
- システムは、参照フィールド内の無効な値を検出し、「不明」に置き換えます。たとえば、無効な Model ID 値は「不明」の値に置き換えられます。また、複数の CI が、「不明」に設定された同じ参照フィールドを持つ場合、これらの CI は重複 CI になります。
識別ルールの属性を表示、追加、または削除するには、ロックアイコンを選択します。 |
| null 属性を許可 |
関連テーブルの少なくとも 1 つの基準属性が null でない場合は、null である基準属性がある場合でも、識別子エントリとの一致を試みることを許可します。 |
| フィルター条件 |
一致する関連アイテムを検索するレコードのセットを絞り込むフィルターを作成するための条件を追加します。 |
注: 基準属性に 2 つの属性しかなく、sys_class_name がそのうちの 1 つ (例:[name, sys_class_name]、[ip_address, sys_class_name]) である場合、[null 属性を許可] が有効になっていても他の属性を NULL にすることはできません。この制限は、 sys_class_name が特別なシステム一致属性と見なされるためです。
例
たとえば、事前定義されたハードウェア ルールはハードウェア [cmdb_ci_hardware] テーブルに適用されます。これには条件属性 [シリアル番号]、[シリアル番号タイプ] がある識別子エントリがあり、その [検索対象テーブル] フィールドは [シリアル番号] に設定されています。
次のペイロードスニペットは、 Hardware クラスの子である cmdb_ci_linux_server クラスに CI を追加します。また、ハードウェア [cmdb_ci_hardware] テーブルの [CI ID] ページで [関連エントリ] を作成する必要があるペイロードに関連アイテムを追加する方法も示します。
{
"items": [
{
"className": "cmdb_ci_linux_server",
"lookup": [
{
"className": "cmdb_serial_number",
"values": {
"serial_number": "VMware-42 21 e3 da 44 14 5a a6-56 48 2b 0a 28 53 42 4c",
"serial_number_type": "system",
"valid": "true"
}
},
{
"className": "cmdb_serial_number",
"values": {
"serial_number": "4221E3DA-4414-5AA6-5648-2B0A2853424C",
"serial_number_type": "uuid",
"valid": "true"
}
}, }
],
“related": [
{
"className": "cmdb_ci_ucs_chassis",
"values": {
“name": “chassis1",
“category": “category1",
“short_description": “My Chassis 1"
}
},
{
"className": "cmdb_ci_ucs_chassis",
"values": {
“name": "chassis2",
"category": "category2",
"short_description": "My Chassis 2"
}
}, }
],
"values": {
......
"name": "xpolog2.lab3",
"os_name": "Linux",
"output": "Linux xpolog2.lab3 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux",
"serial_number": "VMware-42 21 e3 da 44 14 5a a6-56 48 2b 0a 28 53 42 4c",
"sys_class_name": "cmdb_ci_linux_server"
}
}
]
}
ハードウェア ルールが適用されると、シリアル番号 [cmdb_serial_number] テーブルで lookup キー内で指定された値との一致が検索されます。[カウントの完全一致を強制 (ルックアップ)] がオンになっている場合を除き、少なくとも 1 つの一致が存在する限り、すべてのルックアップ キーが一致を返す必要はありません。すべての一致が同じ CI を参照する場合、その CI は既存の CI レコードであると見なされます。一致が見つからない場合、識別検索は次のルール エントリに進みます。一致が見つからずにすべてのルールが使用された場合は、新しい CI レコードがデータベースに作成されます。
次のタスク
オプションで包含ルールを作成すると、識別に含まれる CI の範囲を絞り込むことができます。