Uploaded image for project: 'ZABBIX FEATURE REQUESTS'
  1. ZABBIX FEATURE REQUESTS
  2. ZBXNEXT-4862

Zabbix configuration as code - save XML in git repository

XMLWordPrintable

      More and more products use the approach Something as code - build as code, continious delivery as code, infrastructure as code. Some monitoring systems also support "Monitoring as code" - e.g. Prometheus

      It is very convenient to store something as code:

      1. You can see what changes someone made
      2. You can restore old system state from code
      3. You can review code
      4. You can use all the tools to work with the code - for example, a simple search in files

      Approach something as code can be in several variants (include each other):

      1. Save the configuration as a code - just a copy of the system in code, but changes occur in UI (e.g TeamCity save XML)
      2. Change configuration only in code - we don't need think about conflict and sync beetwen UI and code (e.g. Kotlin DSL in TeamCity)
      3. You can change configuration both in code and in UI - hard to realize ,but friendly approach (I have no example  )

      Zabbix can go from simple to complex, as TeamCIty (JetBrains CI-server)

      To start make one-way sync - save exported XML to git repository with mentioning who made this change. 

       

      We implemented a similar mechanism in third-party toolkit https://gitlab.com/devopshq/zabbix-review-export, But it would be more convenient to have a built-in mechanism.

       

      We hope that this feature will not take much time and will be useful to the community of wonderful monitoring system Zabbix!

        1. xml-change-templates.jpg
          58 kB
          Burov Alexey
        2. zvz_dzedyfkdsahqpqhr7qmmshq.png
          17 kB
          Burov Alexey

            Unassigned Unassigned
            allburov Burov Alexey
            Votes:
            16 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              Resolved: