14. 設定のエクスポート/インポート

概要

Zabbixのエクスポート/インポート機能により、Zabbixシステム間で様々な設定情報を共有することができます。

この機能のよくある使用例:

  • テンプレートやネットワークマップの共有 - Zabbixユーザ同士での設定パラメータの共有
  • Zabbixコミュニティテンプレートにテンプレートをアップロードする - 他のユーザはテンプレートをダウンロードし、そのファイルをZabbixにインポートできます。
  • サードパーティツールとの統合 - 汎用的なYAML,、XML、JSON形式を使用することで、データのインポート/エクスポートを行ってサードパーティのツールやアプリケーションと統合することができます。
エクスポート/インポートできるもの

エクスポート/インポートできるオブジェクトは次の通りです。

エクスポート形式

ZabbixのWebインターフェースまたはZabbix APIを使用してデータをエクスポートすることができます。サポートされているエクスポート形式はYAML、XML、JSONです。

エクスポートに関する詳細

  • サポートされているすべての要素が一つのファイルにエクスポートされます。
  • リンクされたテンプレートから継承されるホストおよびテンプレートの要素 (アイテム、トリガー、グラフ、ディスカバリルール) はエクスポートされません。 ホストレベルでこれらの要素に加えられたすべての変更 (アイテムの監視間隔の変更、正規表現の変更、ローレベルディスカバリルールへのプロトタイプの追加など) は、エクスポート時に失われます。インポートする場合、リンクされたテンプレートのすべての要素は、元のリンクされたテンプレートと同じように再作成されます。
  • ローレベルディスカバリによって作成された要素およびそれに依存する要素は、エクスポートされません。例えば、LLDルールで生成されたアイテムに対して作成されたトリガーはエクスポートされません。

インポートに関する詳細

  • インポートは、最初のエラーで停止します。
  • 画像のインポート時に、既存の画像を更新する場合、"imagetype "フィールドは無視されます。つまり、インポートを介してイメージタイプを変更することはできません。
  • ホスト/テンプレートを "存在しない場合に削除"オプションでインポートする場合、インポートファイルに存在しないホスト/テンプレートマクロも削除されます。
  • アイテム、トリガー、グラフ、ディスカバリールール、アイテムプロトタイプ、 トリガープロトタイプ、グラフプロトタイプの空タグは意味がありません。つまり、存在しないのと同じです。
  • インポートは、YAML、XML、JSONをサポートしています。 YAMLは.yamlと.yml、XMLは.xml、JSONは.jsonと、正しいファイル拡張子が必要です。サポートされているXMLのバージョンに関しては、バージョン間の互換性を参照してください。
  • インポートは、UTF-8 エンコーディング (BOM 付き/なし) の設定ファイルのみをサポートしています。他のエンコーディング (UTF16LE、UTF16BE、UTF32LE、UTF32BE等) ではインポートの変換エラーになります。

YAMLベースフォーマット

zabbix_export:
         version: '6.4'
zabbix_export:

ZabbixでYAML形式でエクスポートした際のルートノードです。

version: '6.4'

エクスポートしたバージョンです。

その他のノードは、エクスポートしたオブジェクトに依存します。

XMLフォーマット

<?xml version="1.0" encoding="UTF-8"?>
       <zabbix_export>
           <version>6.4</version>
       </zabbix_export>
<?xml version="1.0" encoding="UTF-8"?>

XMLドキュメントのデフォルトヘッダです。

<zabbix_export>

ZabbixでXML形式でエクスポートした際のルートの要素です。

<version>6.4</version>

エクスポートしたバージョンです。

その他のタグは、エクスポートしたオブジェクトに依存します。

JSONフォーマット

{
           "zabbix_export": {
               "version": "6.4"
           }
       }
"zabbix_export":

ZabbixでJSON形式でエクスポートした際のルートノードです。

"version": "6.4"

エクスポートしたバージョンです。

その他のノードは、エクスポートしたオブジェクトに依存します。