配置导出/导入

概述

Zabbix 的导出/导入功能可以在一个 Zabbix 系统与另一个系统之间交换各种配置实体。

此功能的典型使用场景包括:

  • 共享模板或网络地图 - Zabbix 用户可以共享其配置参数
  • 将模板上传到 Zabbix Community templates。然后其他人可以下载该模板并将文件导入 Zabbix。
  • 与第三方工具集成 - 通用的 YAML、XML 和 JSON 格式使得与第三方工具和应用程序进行集成以及数据导入/导出成为可能
可导出/导入的内容

可导出/导入的对象包括:

导出格式

数据可以使用 Zabbix 前端或 Zabbix API 导出。支持的导出格式为 YAML、XML 和 JSON。

导出详情

  • 所有受支持的元素都会导出到一个文件中。
  • 从关联模板继承的主机和模板实体(监控项、触发器、图形、发现规则)不会被导出。对这些实体在主机级别所做的任何更改(例如更改监控项间隔、修改正则表达式或向低级别发现规则添加原型)在导出时都会丢失;在导入时,来自关联模板的所有实体都会按原始关联模板重新创建。
  • 由低级别发现创建的实体以及依赖于这些实体的任何实体都不会被导出。例如,为 LLD 规则生成的监控项创建的触发器不会被导出。
  • 当导出的主机/模板包含支持超时的实体时,如果这些实体已配置各自的超时值,则会导出这些超时值。

导入详情

  • 导入会在遇到第一个错误时停止。
  • 在导入图像时更新现有图像,"imagetype" 字段会被忽略,也就是说,无法通过导入更改图像类型。
  • 使用 "Delete missing" 选项导入主机/模板时,导入文件中不存在的主机/模板宏将在导入后从主机/模板中删除。
  • 监控项、触发器、图形、discoveryRules、itemPrototypes、triggerPrototypes、graphPrototypes 的空标签没有意义,也就是说,与缺失时相同。
  • 如果导入的主机/模板中的实体配置了各自的超时,将应用这些超时;否则,将应用 proxy/全局超时。
  • 导入支持 YAML、XML 和 JSON,导入文件必须具有正确的文件扩展名:YAML 使用 .yaml 和 .yml,XML 使用 .xml,JSON 使用 .json。有关支持的 XML 版本,请参见 兼容性信息
  • 导入仅支持 UTF-8 编码的配置文件(可带或不带 BOM);其他编码(UTF16LE、UTF16BE、UTF32LE、UTF32BE 等)都会导致导入转换错误。

YAML 基本格式

YAML 导出格式包含以下节点:

  • Zabbix YAML 导出的根节点
  • 导出版本
zabbix_export:
  version: '8.0'

其他节点取决于导出的对象。

XML 格式

XML 导出格式包含以下标签:

  • XML 文档的默认头部
  • Zabbix XML 导出的根标签
  • 导出版本
<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export>
    <version>8.0</version>
</zabbix_export>

其他标签取决于导出的对象。

JSON 格式

JSON 导出格式包含以下对象:

  • Zabbix JSON 导出的根对象
  • 导出版本
{
    "zabbix_export": {
        "version": "8.0"
    }
}

其他对象取决于被导出的对象。