Ad Widget

Collapse

Проблема со сбором данных после восстановления из dump

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • rodion.xabibov
    Junior Member
    • Jul 2021
    • 2

    #1

    Проблема со сбором данных после восстановления из dump

    Доброго времени суток!

    Стоит задача по резервированию конфигурации Zabbix, без файлов истории, графиков и т.п.

    На тестовом сервере поднял Zabbix 5.0.13, БД Mariadb, создал пару тестовых узлов со стандартными шаблонами icmp.

    Для создания дампа сначала использовал скрипт https://github.com/maxhq/zabbix-backup

    Скрипт отработал, дамп создан. Удалил текущую базу, залил с дампа. Элементы, узлы и прочее появились, без истории как и необходимо было, но перестали поступать данные,в разделе Мониторинг -> Последние данные, пустые значения в колонках "Последняя проверка" "Последнее значение"
    "Изменения" и со временем они не появляются.

    Решил самостоятельно дампить с помощью такой конструкции

    mysqldump --no-data zabbix -u root > zabbix.sql
    mysqldump --no-create-info
    --ignore-table=zabbix.acknowledges
    --ignore-table=zabbix.alerts
    --ignore-table=zabbix.auditlog
    --ignore-table=zabbix.auditlog_details
    --ignore-table=zabbix.event_recovery
    --ignore-table=zabbix.event_suppress
    --ignore-table=zabbix.event_tag
    --ignore-table=zabbix.events
    --ignore-table=zabbix.history
    --ignore-table=zabbix.history_log
    --ignore-table=zabbix.history_str
    --ignore-table=zabbix.history_str_sync
    --ignore-table=zabbix.history_sync
    --ignore-table=zabbix.history_text
    --ignore-table=zabbix.history_uint
    --ignore-table=zabbix.history_uint_sync
    --ignore-table=zabbix.item_rtdata
    --ignore-table=zabbix.problem
    --ignore-table=zabbix.problem_tag
    --ignore-table=zabbix.task
    --ignore-table=zabbix.task_acknowledge
    --ignore-table=zabbix.task_check_now
    --ignore-table=zabbix.task_close_problem
    --ignore-table=zabbix.task_remote_command
    --ignore-table=zabbix.task_remote_command_result
    --ignore-table=zabbix.trends
    --ignore-table=zabbix.trends_uint -u root zabbix >> zabbix.sql

    Также всё отрабатывает замечательно, но после восстановления всё такая проблема со сбором данных, методом тыка обнаружил что если в настройках "Узел сети" -> "Шаблоны" -> "Отсоединить и очистить" и добавить его заново, то сбор данных для данного узла начинает отрабатывать корректно.

    Подскажите, с чем может быть связанна данная проблема, кот-нибудь сталкивался с таким?
    Attached Files
  • Victor Vislobokov
    Senior Member
    • Aug 2018
    • 298

    #2
    По-моему это очевидно:
    Удалил текущую базу, залил с дампа
    и
    --ignore-table=zabbix.history
    --ignore-table=zabbix.history_log
    --ignore-table=zabbix.history_str
    --ignore-table=zabbix.history_str_sync
    --ignore-table=zabbix.history_sync
    --ignore-table=zabbix.history_text
    --ignore-table=zabbix.history_uint
    --ignore-table=zabbix.history_uint_sync
    Таблиц куда писать поступающие данные в БД нет, вот и не пишет. Думаю вы бы это даже в логе Zabbix Server'а увидели бы, если бы его почитали.

    Comment


    • rodion.xabibov
      rodion.xabibov commented
      Editing a comment
      Использую сначала

      mysqldump --no-data zabbix -u root > zabbix.sql - чтобы залить только структуру без самих данных

      А потом данные заливаю c помощью

      --ignore-table=zabbix.history
      --ignore-table=zabbix.history_log
      --ignore-table=zabbix.trends_uint -u root zabbix >> zabbix.sql

      Сейчас проверил, таблицы в данной базе на месте.

      Логи пустые.
  • Victor Vislobokov
    Senior Member
    • Aug 2018
    • 298

    #3
    А если попробовать не добавлять в дамп только таблицы history* и trends*? А остальные таки добавлять (их размер невелик).
    Ну и разумеется вы перед удалением БД останавливаете Zabbix Server и запускаете его только после заливки БД, верно?

    Comment


    • rodion.xabibov
      rodion.xabibov commented
      Editing a comment
      Да, точно так и сделал, исключил только history* и trends*. Всё заработало. Но я пошел дальше и проверял с какой именно таблицей возникает проблема, в итоге это оказалась таблица item_rtdata, если она остаётся в дампе, то после восстановления из дампа сбор данных происходит корректно.

      Согласно документации в item_rtdata находятся поля реального времени (lastlogsize, state, mtime, error)
Working...