---
sourceDocument: Xanadu IT Operations Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/it-operations-management

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu IT Operations Management

ft:clusterId :

    - itom

bundleId :

    - itom

workflow :

    - Technology


---

# Docker の仮想化

# Docker の仮想化 {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：8分

ディスカバリー は Docker Pattern を使用して、Linux ホスト上で実行されている Docker エンジン内の特定のオブジェクトに関するデータを収集します。

ServiceNow® プラットフォームでは [Docker](https://www.docker.com/) リリース 1.11.0 以降のディスカバリーがサポートされています。  
ディスカバリー はネットワーク内で Docker エンジンプロセス分類子を実行します。分類子が dockerd プロセスまたは docker daemon プロセスを識別する場合、分類子は水平パターン (HorizontalDiscoveryProbe) プローブをトリガーし、それによって Docker パターンが起動され、Docker コンポーネントからデータの収集が開始されます。  
注:  
プローブからパターンへの移行の詳細については、ナレッジ記事 [KB0694477](https://support.servicenow.com/kb_view.do?sysparm_article=KB0694477)を参照してください。

## 必須条件 {#c-docker-virtualization__section_zvy_jcr_lrb}

ユーザー特権
:   Docker ディスカバリー を実行するために使用される認証情報を持つユーザーには、次のいずれかの方法で定義された特権が必要です。

    * Docker デーモンは root ユーザーとして実行されるため、実行中のコマンドの昇格された権限をユーザーに提供します。Docker パターンは、sudo や pbrun など、root ユーザーとして実行される[特権コマンド](https://www.servicenow.com/docs/access?context=c_PrivilegedCommandsForMIDServer&version=xanadu&pubname=xanadu-servicenow-platform&ft:locale=en-US)の使用をサポートしています。
    * Docker コマンドを実行するための特別な権限を持つ docker という名前のグループにアサインされます。グループの設定方法については、[Docker](https://www.docker.com/) のドキュメントを参照してください。
    {#c-docker-virtualization__ul_xbp_wwt_nx}

最新のパターン
:   ServiceNow Store から最新のディスカバリーとサービスマッピングパターンアプリケーションを展開します。

## Docker の制限事項と考慮事項

Docker の仮想化を使用する場合は、次のことを検討してください。

* 最初の ディスカバリー プロセススキャンでは、コンテナー内のアプリケーションを識別し、正しく分類することができます。ただし、そのアプリケーションを探索するために起動された後続のプローブはコンテナーの内部を確認できず、アプリケーションの詳細を返すことができません。
* ディスカバリー は、アクティブでないコンテナーを含む、検出したすべてのコンテナーをスキャンするので、ディスカバリー の速度が低下する場合があります。これを避けるには、実行されていないコンテナーを削除する必要があります。
* <var class="keyword varname">sn_itom_pattern.manifest_digest_image_id</var> プロパティを true に設定してディスカバリーを実行する前に、すべての Docker 画像レコードを削除して、重複する Docker レコードが作成されないようにします。
* コンピューター 1 台につき (物理マシン上と仮想マシン上のいずれであっても) 1 つの Docker エンジンのみが許可されています。
{#c-docker-virtualization__ul_hxx_pwt_nx}

## 水平ディスカバリー中に ディスカバリー によって収集されるデータ {#c-docker-virtualization__section_h2w_mqy_1cb}

これらの属性は、親 OSLV テーブルから派生した属性に加えて検出されます。{#c-docker-virtualization__table_okd_kb2_5w__entry__2}

| テーブルとフィールド | 説明 |
|-|-|
| Docker エンジン \[cmdb_ci_docker_engine\] ||
| 名前 \[name\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| OS アーキテクチャ \[os_arch\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| GIT コミット \[git_commit\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| ビルド日 \[build_date\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| バージョン \[version\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| API バージョン \[api_version\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| Go バージョン \[go_version\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| クラスター化 \[is_clustered\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| 実行中のプロセス \[running_process\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| 実行中のプロセスのコマンド \[running_process_command\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| 実行中のプロセスのキーパラメーター \[running_process_key_parameters\] | Docker エンジンのインスタンスに関する情報を格納します。 |
| Docker イメージ \[cmdb_ci_docker_image\] ||
| 名前 \[name\] | Docker イメージのグローバルに一意の表現に関する情報を格納します。 |
| イメージ ID \[image_id\] | Docker イメージのグローバルに一意の表現に関する情報を格納します。 |
| イメージダイジェスト \[image_digest\] | Docker イメージのグローバルに一意の表現に関する情報を格納します。 |
| サイズ (バイト) \[size_byte\] | Docker イメージのグローバルに一意の表現に関する情報を格納します。 |
| 作成されるイメージ \[image_created_at\] | Docker イメージのグローバルに一意の表現に関する情報を格納します。 |
| Docker ローカルイメージ \[cmdb_ci_docker_local_image\] ||
| 名前 \[name\] | Docker イメージのローカルインスタンスを格納します。 |
| イメージ ID \[image_id\] | Docker イメージのローカルインスタンスを格納します。 |
| Docker イメージタグ \[cmdb_ci_docker_image_tag\] ||
| 名前 \[name\] | ローカル Docker イメージのタグを格納します。 |
| イメージ ID \[image_id\] | ローカル Docker イメージのタグを格納します。 |
| リポジトリ \[repository\] | ローカル Docker イメージのタグを格納します。 |
| タグ \[tag\] | ローカル Docker イメージのタグを格納します。 |
| Docker コンテナー \[cmdb_ci_docker_container\] ||
| 名前 \[name\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| イメージ ID \[image_id\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| コンテナー ID \[container_id\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| サイズ (バイト) \[size_bytes\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| コマンド \[command\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| コンテナー作成日時 \[container_created\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
| ステータス \[status\] | ホストで見つかった Docker コンテナーを格納します。 重複レコードが作成された場合は、ディスカバリーが実行されると重複排除タスクが表示されます。これらのタスクを解決する方法については、ServiceNow® ナレッジベースの記事「[Making docker container identifier independent (Docker コンテナ識別子を独立させる) \[KB1443042\]](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1443042)」を参照してください。 |
[ ]

{#c-docker-virtualization__table_okd_kb2_5w}  
Collect Container Repository の拡張セクションはこの情報を検出します。 {#c-docker-virtualization__id_u5h_gx3_lrb__entry__2}

| テーブルとフィールド | 説明 |
|-|-|
| コンテナーリポジトリ \[cmdb_ci_container_repository\] ||
| 名前 \[name\] | コンテナーリポジトリの名前。 |
| コンテナーリポジトリエントリー \[cmdb_ci_container_repository_entry\] ||
| 名前 \[name\] | コンテナーリポジトリエントリーの名前 |
| カテゴリ \[category\] | コンテナーリポジトリエントリーのカテゴリ |
[ ]

{#c-docker-virtualization__id_u5h_gx3_lrb}

## CI 関係 {#c-docker-virtualization__section_yxh_5ty_lrb}

Docker パターンで、検出された CI 間の次の関係を識別します。{#c-docker-virtualization__table_dqz_s5y_lrb__entry__3}

| CI | 関連 | CI |
|-|-|-|
| cmdb_ci_server | Runs::Runs On | cmdb_ci_docker_engine |
| cmdb_ci_docker_engine | Manages::Managed By | cmdb_ci_docker_container |
| cmdb_ci_docker_engine | Manages::Managed By | cmdb_ci_docker_local_image |
| cmdb_ci_docker_image | Instantiates::Instantiated By | cmdb_ci_docker_container |
| cmdb_ci_docker_local_image 注: この関係の方向は、1.0.99 (2023 年 2 月) より前のすべてのストアバージョンでは逆になります。 | Instantiates::Instantiated By | cmdb_ci_docker_container |
| cmdb_ci_docker_image_tag | Registered On::Has Registered | cmdb_ci_docker_local_image |
| cmdb_ci_docker_local_image | Instantiates::Instantiated By | cmdb_ci_docker_image |
[ ]

{#c-docker-virtualization__table_dqz_s5y_lrb}  
図 : 1. OSLV および Docker 依存テーブルの親と子の関係  
\[Docker パターン\] の Collect Container Repository 拡張セクションで、これらの関係を識別します。{#c-docker-virtualization__id_pdy_bw3_lrb__entry__3}

| CI | 関係 | CI |
|-|-|-|
| Docker イメージ \[cmdb_ci_docker_image\] | Provisioned From::Provisioned | コンテナーリポジトリエントリー \[cmdb_ci_container_repository_entry\] |
| コンテナーリポジトリエントリー \[cmdb_ci_container_repository_entry\] | Hosted on::Hosts | コンテナーリポジトリ \[cmdb_ci_container_repository\] |
[ ]

{#c-docker-virtualization__id_pdy_bw3_lrb}

## 識別、格納、およびホスティングのルール {#c-docker-virtualization__section_ty2_mqy_1cb}

ディスカバリーはアプリケーションルール識別子を使用して Docker エンジンを検索し、その他のルールを適用して特定の Docker オブジェクトを識別します。

アプリケーションルール識別子

:   プロセスの分類中に cmdb_ci_docker_engine 構成アイテム (CI) が作成されます。これに基づいて、ディスカバリーはアプリケーション \[cmdb_ci_appl\] テーブルのアプリケーションルール識別子を使用して、検出された特定の Docker エンジンを識別します。この ID を確立した後、ディスカバリーは格納ルールとホスティングルールで定義された関係を使用して、そのエンジンに関連する個別の Docker コンポーネント CI を正確に作成および更新します。

識別子
:   {#c-docker-virtualization__table_ndw_wn1_vw__entry__3}

    | 名前 | テーブル | 属性 |
    |-|-|-|
    | Docker コンテナ | Docker コンテナー \[cmdb_ci_docker_container\] | container_id |
    | Docker グローバルイメージ | Docker イメージ \[cmdb_ci_docker_image\] | image_id |
    | Docker ローカルイメージ | Docker ローカルイメージ \[cmdb_ci_docker_local_image\] | image_id |
    | Docker イメージタグ | Docker イメージタグ \[cmdb_ci_docker_image_tag\] | リポジトリ、タグ |
    [ ]

    {#c-docker-virtualization__table_ndw_wn1_vw}

格納およびホスティングのルール
:   Docker ディスカバリーは、これらの[格納規則のコレクションを作成または編集する](https://www.servicenow.com/docs/access?context=create-dependent-relationship&version=xanadu&pubname=xanadu-servicenow-platform&section=t_CreateContainmentSvcRuleMetadata&ft:locale=en-US)ルールと[ホスティングルールのコレクションを作成または編集する](https://www.servicenow.com/docs/access?context=create-dependent-relationship&version=xanadu&pubname=xanadu-servicenow-platform&section=t_CreateHostingServiceRuleMetadata&ft:locale=en-US)ルールを使用して、Docker パターンによって返されるデータから構成アイテム (CI) を作成します。 ディスカバリーは、アプリケーション \[cmdb_ci_appl\] テーブルとの関係によって Docker エンジンを識別した後、これらのルールを使用して、そのエンジンに接続されている特定の CI を互いの関係から識別します。ディスカバリー はこのようにアプリケーションから下流へ、エンジンから開始してコンポーネントを互いに接続することで、同じ名前または image_id を使用する他の Docker エンジンのコンポーネントに対して重複する CI が作成されないようにしています。{#c-docker-virtualization__table_qqm_xsz_bx__entry__3}

    | 親 | 子 | 関係 |
    |-|-|-|
    | Docker ローカルイメージ | Docker イメージタグ | 登録済み |
    [表 : 1. 格納のルール]

    {#c-docker-virtualization__table_qqm_xsz_bx}

    {#c-docker-virtualization__table_em1_kqz_bx__entry__3}

    | 親 | 子 | 関係 |
    |-|-|-|
    | Docker コンテナ | Docker エンジン | 管理担当者 |
    | Docker ローカルイメージ | Docker エンジン | 管理担当者 |
    [表 : 2. ホスティング ルール]

    {#c-docker-virtualization__table_em1_kqz_bx}

