14. 配置导入导出

概览

Zabbix导出/导入功能,使得在一个Zabbix系统和另一个Zabbix系统之间交换各种配置实体成为可能。

此功能的典型用例:

  • 共享模板或网络拓扑图:Zabbix用户可以共享他们的配置参数
  • share.zabbix.com上共享web场景:导出带有web场景的模板,并上传到share.zabbix.com。 其他人可以下载该模板并将模板文件导入用户自己的Zabbix平台中。
  • 与第三方工具集成:通用的YAML、XML和JSON格式使得与第三方工具和应用程序的集成和数据导入/导出成为可能
可以导出/导入什么

可以导出/导入的对象有:

输出格式

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

详细的导出信息

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

详细的导入信息

  • 导入在第一个错误时停止。
  • 导入图像时更新已有图像时,“imagetype”字段被忽略,即无法通过导入更改图像类型。
  • 使用“删除缺失”选项导入主机/模板时,导入文件中不存在的主机/模板中的宏将在导入后的主机/模板中删除。
  • 对于监控项、触发器、图形、发现规则、监控项原型、触发器原型、图形原型的空标签是无意义的,即相当于缺失。
  • 如果导入的主机/模板的监控实体已配置了自己的超时设置,将应用这些超时设置;否则,将应用在代理/全局里配置的超时设置。
  • 导入支持YAML, XML和JSON,导入文件必须有正确的文件扩展名: .yaml 和 .yml for YAML, .xml for XML 和 .json for JSON。关于支持的XML版本,请参阅兼容性信息
  • 导入仅支持UTF-8编码的配置文件(带或不带BOM);其他编码(如UTF16LE、UTF16BE、UTF32LE、UTF32BE等)将导致导入转换错误。

YAML 基本格式

YAML导出格式包含以下节点: - Zabbix YAML导出的根节点 - 导出版本

  1. zabbix_export:
  2. version: '7.0'

其他节点依赖于导出的对象。

XML 格式

XML导出格式包含以下标签: - XML文档的默认头部 - Zabbix XML导出的根标签 - 导出版本

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <zabbix_export>
  3. <version>7.0</version>
  4. </zabbix_export>

其他标签依赖于导出的对象。

JSON格式

JSON导出格式包含以下对象: - Zabbix JSON导出的根对象 - 导出版本

  1. {
  2. "zabbix_export": {
  3. "version": "7.0"
  4. }
  5. }

其他对象依赖于导出的对象。