[comment]: # translation:outdated

[comment]: # ({1c2455b7-1c2455b7})
# 2 アクティブエージェントの自動登録

[comment]: # ({/1c2455b7-1c2455b7})

[comment]: # ({81edbbe2-81edbbe2})
#### 概要

サーバが監視を開始可能になった後は、アクティブな Zabbix エージェントの自動登録が可能です。自動登録によって、サーバ上で手動で設定をしなくても新しいホストを監視対象として追加できます。

前に認知されていないアクティブエージェントがチェックを求めたときに、自動登録がおこなわれます。

この機能は、新しいクラウドのノードの自動監視にとってとても便利です。クラウド環境で新しいノードをもつと同時に、Zabbix が自動的にそのホストのパフォーマンスと可用性のデータの収集を開始します。

アクティブエージェントの自動登録は、パッシブチェックで追加されたホストの監視もサポートしています。アクティブエージェントがチェックを求めたとき、自動登録をおこなうと、設定ファイルで定義された「ListenIP」または「ListenPort」設定のパラメータをもつことになり、これらはサーバに送信されます。（複数のIPアドレスが指定されている場合は、最初のものがサーバに送信されます。）

新しい自動登録ホストを追加したとき、サーバは受信したIPアドレスとポート番号をエージェントの設定に使用します。IPアドレスの値が1つも受信されない場合は、接続に使用されたアドレスが使用されます。ポート番号が1つも受信されない場合は、10050が使用されます。

デフォルトのエージェントインターフェイスとして[DNS名](#using_dns_as_default_interface)を使用してホストを自動登録するように指定できます。

次の場合は自動登録が再実行されます。

-   ホスト[メタデータ](#using_host_metadata)情報が変更された場合：
    -   ホストメタデータが変更され、エージェントが再起動したため
    -   ホストメタデータアイテムによって返される値が変更されたため
-   メタデータが欠落する手動で作成されたホストの場合
-   ホストを手動で変更して別のZabbixプロキシで監視する場合
-   同じホストの自動登録が新しいZabbixプロキシからのものである場合

[comment]: # ({/81edbbe2-81edbbe2})

[comment]: # ({5d32b87c-5d32b87c})
#### 設定

[comment]: # ({/5d32b87c-5d32b87c})

[comment]: # ({bf3762f0-bf3762f0})
##### サーバーを指定する

エージェント[設定ファイル](/manual/appendix/config/zabbix_agentd) - zabbix\_agentd.conf でZabbixサーバーが識別されていることを確認してください

    ServerActive=10.0.0.1

zabbix\_agentd.confで*ホスト名*を明確に定義しない限り、エージェントの場所のシステムホスト名がサーバーによってホストの命名に使用されます。 Linuxのシステムホスト名は`hostname`コマンドを実行することで取得できます。

*ホスト名*がZabbixエージェント設定でホストのコンマ区切りリストとして定義されている場合、リストされているすべてのホスト名に対してホストが作成されます。

設定ファイル変更後、エージェントを再起動します。

[comment]: # ({/bf3762f0-bf3762f0})

[comment]: # ({7b103292-7b103292})
##### アクティブエージェントの自動登録用アクション

サーバーは、エージェントから自動登録要求を受信すると、[アクション](/manual/config/notifications/action)を呼び出します。イベントソース"自動登録"のアクションは、エージェントの自動登録用に設定する必要があります。

::: noteclassic
[ネットワーク検出](network_discovery)を設定するために、アクティブなエージェントを自動登録する必要はありません。
:::

Zabbixフロントエンドで、*設定→アクション*に移動し、イベントソースとして*自動登録*を選択して、*アクションの作成*をクリックします。

-   アクションタブで、アクションに名前を付けます
-   必要に応じて[条件](/manual/config/notifications/action/conditions#autoregistration_actions)を指定します。ホスト名/ホストメタデータの条件で、部分文字列の一致または正規表現の一致を行うことができます。 "ホストメタデータ"条件を使用する場合は、次のセクションを参照してください。
-   操作タブで'ホストの追加'や'ホストグループへの追加'（たとえば*検出されたホスト*）、'テンプレートへのリンク'などの関連する操作を追加します。

::: notetip
自動登録されるホスト（Zabbixサーバーからファイアウォールで保護されているホストなど）がアクティブモニタリングのみでサポートされる可能性が高い場合は、リンク用に*Template\_Linux-active*等、特定のテンプレートを作成することをお勧めします。
:::

作成されたホストは*Discovered hosts*グループに追加されます。（デフォルトでは*管理*→*一般*→*[その他](/manual/web_interface/frontend_sections/administration/general#other_parameters)*で設定可能です）ホストを別のグループに追加する場合は、*ホストグループから削除*操作（*Discovered hosts*を指定）を追加し、*ホストグループに追加*操作（*Discovered hosts*以外の別ホストグループを指定）も追加します。これは、ホストはホストグループに属している必要があるためです。

[comment]: # ({/7b103292-7b103292})

[comment]: # ({66cac4ef-66cac4ef})
#### 安全な自動登録

暗号化された接続を使用してPSKベース認証を設定することにより、安全な自動登録が可能になります。

暗号化レベルは、右側のドロップダウンからアクセスできる[自動登録]セクションの[管理]→[一般](/manual/web_interface/frontend_sections/administration/general)*でグローバルに設定でき、暗号化なし、PSK認証を使用したTLS暗号化、またはその両方を選択できます。（一部のホストは暗号化なしで登録、他のホストは暗号化を介して登録などもできます）

PSKによる認証は、ホストを追加する前にZabbixサーバーによって検証されます。検証が成功すると、ホストが追加され、*[ホスト から/へ 接続](/manual/config/hosts/host#encryption)*がグローバル自動登録設定と同じID/事前共有キーでのみ`PSK`に設定されます。

::: noteimportant
プロキシ経由での自動登録のセキュリティを確保するには、Zabbixサーバーとプロキシ間の暗号化を有効にする必要があります。
:::

[comment]: # ({/66cac4ef-66cac4ef})

[comment]: # ({9c275675-9c275675})
#### DNSをデフォルトのインターフェースとして使用する

HostInterfaceおよびHostInterfaceItem[パラメーター](/manual/appendix/config/zabbix_agentd)を使用すると、自動登録にホストインターフェイスのカスタム値を指定できます。

具体的には、ホストをIPアドレスではなくデフォルトのエージェントインターフェイスとしてDNS名で自動登録する必要がある場合に役立ちます。その場合、DNS名はHostInterfaceまたはHostInterfaceItemどちらかのパラメーターの値として指定または返される必要があります。2つのパラメータのいずれかの値が変更されると、自動登録されたホストインターフェイスが更新されることに注意してください。上記からデフォルトのインターフェースを別のDNS名に変更したり、IPアドレスに変更したりすることもできます。ただし、変更を有効にするには、エージェントを再起動する必要があります。

[comment]: # ({/9c275675-9c275675})

[comment]: # ({af247ed6-af247ed6})
#### ホストメタデータの使用

エージェントがサーバーに自動登録要求を送信すると、エージェントはホスト名も送信しますが、場合によっては（たとえばAmazonクラウドノード）ホスト名はZabbixサーバーが検出されたホストを区別するのに十分では無いこともあります。オプションでホストメタデータを使用してエージェントからサーバーに他の情報を送信することもできます。

ホストメタデータはエージェント[設定ファイル](/manual/appendix/config/zabbix_agentd) - zabbix\_agentd.confで設定されます。ホストメタデータの指定箇所は方法は2つあります。

    HostMetadata
    HostMetadataItem

上記リンクのオプションの説明を参照してください。

::: noteimportant
自動登録の試行は、アクティブエージェントがアクティブチェックの更新要求をサーバーに送信するたびに発生します。リクエスト間の遅延は、エージェントの[RefreshActiveChecks](/manual/appendix/config/zabbix_agentd)パラメーターで指定されます。最初の要求は、エージェントが再起動された直後に送信されます。
:::

[comment]: # ({/af247ed6-af247ed6})

[comment]: # ({070aaeb4-070aaeb4})
##### 例 1

ホストメタデータを使用してLinuxホストとWindowsホストを区別します。

ホストをZabbixサーバーによって自動登録したいとします。
ネットワーク上にアクティブなZabbixエージェント（上記の"設定"セクションを参照）があります。
ネットワーク上にWindowsホストとLinuxホストがあり、Zabbixフロントエンドで"Linux by Zabbix agent"と"Windows by Zabbix agent"のテンプレートを使用したいとします。
その場合、ホストの登録時に適切なLinux/Windowsテンプレートを適用する必要があります。
デフォルトでは、自動登録時にホスト名のみがサーバーに送信されますが、これでは不十分な場合があります。
適切なテンプレートがホストに適用されていることを確認するには、ホストメタデータを使用する必要があります。

[comment]: # ({/070aaeb4-070aaeb4})

[comment]: # ({9543f562-9543f562})
##### フロントエンドの設定

最初に行うことはフロントエンドを構成することです。今回は2つのアクションを作成します。

まず

-   名前:Linuxホストの自動登録
-   条件:ホストメタデータに*Linux*が含まれる。
-   操作:テンプレートへのリンク:Linux

::: noteclassic
この場合は「ホストの追加」操作をスキップできます。本来テンプレートにリンクするには、サーバーが自動的にそれを行うように、最初にホストを追加する必要があります。
:::

次に

-   名前:Windowsホストの自動登録
-   条件:ホストメタデータに*Windows*が含まれる
-   操作:テンプレートへのリンク:Windows

[comment]: # ({/9543f562-9543f562})

[comment]: # ({110dbc2b-110dbc2b})
##### エージェントの設定

次にエージェントを設定する必要があります。次の行をエージェント設定ファイルに追加します。

    HostMetadataItem=system.uname

このようにしてエージェントが実行されているホストに応じて、ホストメタデータに"Linux"または"Windows"が含まれるようにします。この場合のホストメタデータの例は以下です。

    Linux: Linux server3 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux
    Windows: Windows WIN-0PXGGSTYNHO 6.0.6001 Windows Server 2008 Service Pack 1 Intel IA-32

設定ファイル変更後、エージェントの再起動を忘れないでください。

[comment]: # ({/110dbc2b-110dbc2b})

[comment]: # ({85f695d6-85f695d6})
##### 例 2

*ステップ 1*

ホストメタデータを使用して、不要ホストの登録回避を可能にします。

[comment]: # ({/85f695d6-85f695d6})

[comment]: # ({c5ffa817-c5ffa817})
##### フロントエンドの設定

推測しにくい秘密のコードを使用してフロントエンドでアクションを作成し、不要なホストを禁止します。

    名前：自動登録アクションLinux
    条件：

```{=html}
<!-- -->
```
        * Type of calculation: AND
        * Condition (A): Host metadata contains //Linux//
        * Condition (B): Host metadata contains //21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae//
    * Operations: 
        * Send message to users: Admin via all media
        * Add to host groups: Linux servers
        * Link to templates: Linux

データはプレーンテキストで送信されるため、この方法だけでは強力な保護は提供されないことに注意してください。変更をすぐに有効にするには、設定キャッシュのリロードが必要です。

[comment]: # ({/c5ffa817-c5ffa817})

[comment]: # ({9fca761d-9fca761d})
##### エージェントの設定

次の行をエージェント構成ファイルに追加します。

    HostMetadata=Linux    21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae

ここでの"Linux"はプラットフォームであり、文字列の残りの部分は推測しにくい秘密のテキストです。

設定ファイル変更後は、エージェントを再起動することを忘れないでください。

*ステップ 2*

すでに登録されているホストの監視を追加することができます。

[comment]: # ({/9fca761d-9fca761d})

[comment]: # ({6eb51339-6eb51339})
##### フロントエンドの設定

フロントエンドのアクションを更新します。

-   名前:自動登録アクションLinux
-   条件:

```{=html}
<!-- -->
```
        * Type of calculation: AND
        * Condition (A): Host metadata contains Linux
        * Condition (B): Host metadata contains 21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae
    * Operations:
        * Send message to users: Admin via all media
        * Add to host groups: Linux servers
        * Link to templates: Linux
        * Link to templates: MySQL by Zabbix Agent

[comment]: # ({/6eb51339-6eb51339})

[comment]: # ({15c86816-15c86816})
##### エージェントの設定

エージェント構成ファイルの次の行を更新します。

    HostMetadata=MySQL on Linux 21df83bf21bf0be663090bb8d4128558ab9b95fba66a6dbf834f8b91ae5e08ae

設定ファイル変更後は、エージェントの再起動を忘れないでください。

[comment]: # ({/15c86816-15c86816})
