[comment]: # ({e0d353ca-ce30c55d})
# 4 主机原型

[comment]: # ({/e0d353ca-ce30c55d})

[comment]: # ({10ba8cd7-f9e8f670})

主机原型是通过 [低级别自动发现规则](/manual/discovery/low_level_discovery) 创建主机的蓝图。
在被发现为主机之前，这些原型不能有监控项和触发器，除非是从模板链接的监控项和触发器。

[comment]: # ({/10ba8cd7-f9e8f670})

[comment]: # ({ab97a656-b2664a94})
#### 配置

主机原型在[低级别发现规则](/manual/discovery/low_level_discovery#discovery-rule)下进行配置。

要创建主机原型：

1\. 转到 [*数据采集* → *主机*](/manual/web_interface/frontend_sections/data_collection/hosts)。

2\. 对所需主机点击 *发现*，进入为该主机配置的低级别发现规则列表。

3\. 对所需发现规则点击 *主机原型*。

4\. 点击右上角的 *创建主机原型* 按钮并完成配置表单。

![](../../../../assets/en/manual/discovery/low_level_discovery/host_prototype.png){width=600}

所有必填输入字段都以红色星号标记。

|参数|说明|
|--|--------|
|*主机名称*|此参数必须至少包含一个[低级别发现宏](/manual/config/macros/lld_macros)，以确保为已创建主机生成唯一的主机名称。|
|*可见名称*|支持[低级别发现宏](/manual/config/macros/lld_macros)。|
|*组原型*|允许使用[低级别发现宏](/manual/config/macros/lld_macros)指定主机组原型。<br>根据指定的组原型，将发现、创建[主机组](/manual/web_interface/frontend_sections/data_collection/hostgroups)并将其关联到已创建主机；对于已由其他低级别发现规则创建的已发现组，也会关联到已创建主机。但是，与[手动](/manual/config/hosts/host_groups)创建的主机组匹配的已发现主机组不会关联到已创建主机。|
|*接口*|设置已发现主机是继承该发现规则所属主机的 IP（默认），还是获取[自定义接口](#host-interfaces)。<br>支持[低级别发现宏](/manual/config/macros/lld_macros)和[用户宏](/manual/config/macros/user_macros)。|
|*监控方式*|此字段会与[主机配置](/manual/config/hosts/host#configuration)中的相应字段自动同步。|
|*创建为启用*|设置已发现主机的状态；如果未选中，主机将以禁用状态创建。|
|*发现*|设置是否根据主机原型创建主机；如果未选中，则不会根据主机原型创建主机（除非此设置在低级别发现规则中被[覆盖](/manual/discovery/low_level_discovery#override)）。|

::: noteclassic
[低级别发现宏](/manual/config/macros/lld_macros)也支持用于标签值和主机原型用户宏值。<br>
主机原型不支持 *值映射*。
:::

有关如何配置主机原型的示例，请参见[*虚拟机监控*](/manual/vm_monitoring#configuration-examples)。

[comment]: # ({/ab97a656-b2664a94})

[comment]: # ({3c73b104-9b6a7dc5})
##### 主机接口

要添加自定义接口，请将 *Interfaces* 选择器从“继承”切换为“自定义”。
点击 ![add\_link.png](../../../../assets/en/manual/config/add_link.png) 并选择接口类型 - Zabbix agent、SNMP、JMX、IPMI。

::: noteclassic
如果选择了 *自定义*，但未设置任何接口，则将创建不带接口的主机。<br>
如果选择了 *继承*，并且主机原型属于某个模板，则所有发现的主机都将从链接该模板的主机继承主机接口。
:::

如果指定了多个自定义接口，则可在 *Default* 列中设置主接口。

有关如何配置自定义主机接口的示例，请参见[*VMware 监控设置示例*](/manual/vm_monitoring/example#advanced-host-interface-configuration)。

::: notewarning
只有当主机接口包含正确的数据时，才会创建主机。
:::

[comment]: # ({/3c73b104-9b6a7dc5})

[comment]: # ({b76e9d6b-cbeb5931})
##### 已发现主机

在主机列表中，已发现主机会以前缀形式显示创建它们的发现规则名称。

已发现主机会从主机原型继承大多数参数，且这些参数为*只读*。
只有以下已发现主机参数可以配置：

-   *模板* - 链接新模板或取消链接手动添加的模板。无法取消链接从主机原型继承的模板。
-   *Description* - 添加或编辑主机描述。
-   *Status* - 启用或禁用主机。
-   *Tags* - 添加新标签或移除手动添加的标签。无法移除从主机原型继承的标签。请注意，标签不能重复（名称和值都相同的标签）。如果向主机原型添加了一个新标签，并且它与某个已发现主机上手动添加的标签匹配，则在发现过程中，手动添加的标签将被继承的标签替换。
-   *Macros* - 添加新的主机宏或移除手动添加的宏，以及从主机原型继承的宏；更改宏值和[类型](/manual/config/macros/user_macros#configuration)。

::: noteclassic
已发现主机还会从配置了发现规则的主机继承[用户宏](/manual/config/macros/user_macros)。
这些继承的宏可以被移除，其值和类型也可以更改。
:::

已发现主机也可以继续发现其他主机。
例如，如果某个主机原型（用于发现 hypervisor）链接了一个模板，而该模板包含一条低级别发现规则及其自己的主机原型（用于发现虚拟机），那么 Zabbix 将会发现 hypervisor 及其虚拟机。
若要进一步发现这些虚拟机上的容器，可以创建低级别发现规则，或为已发现的虚拟机链接一个带有主机原型的新模板，或者通过链接一个本身包含主机原型的模板来预先配置虚拟机主机原型。

已发现主机可以手动删除。但请注意，如果为其启用了发现，它们将会再次被发现。

不再被发现的主机可以：

-   自动禁用（基于发现规则的 *Disable lost resources* 值）
-   自动删除（基于发现规则的 *Delete lost resources* 值）。

[comment]: # ({/b76e9d6b-cbeb5931})
