Ad Widget

Collapse

Синхронизация zabbix с системным временем

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • ktulkhu
    Junior Member
    • Jan 2016
    • 13

    #1

    Синхронизация zabbix с системным временем

    Добрый день.
    Вопрос такой: заметил, что внутри виртуалки при рестарте слетает время на короткий период, пока демон chronyd не произведет синхронизацию.
    Выставляется почему-то 1-е апреля 2016 года. (сейчас 31 марта)
    При этом заббикс стартует именно с этим временем (если посмотреть статус сервера zabbix:

    systemctl status zabbix-server
    ...
    Apr 01 19:28:53 zabbix.clpo.local systemd[1]: Starting Zabbix Server...
    Apr 01 19:28:54 zabbix.clpo.local systemd[1]: Started Zabbix Server...

    Соответственно, на графиках для любых хостов после этого не отображается текущие данные, начиная с момента перезагрузки..

    Я предположил, что жаббикс пишет данные по тому времени, с которым запустился, тоесть на апрель, с опережением.. может такое быть?
    При этом сам сервис стартован, дашборд и предыдущие данные - отображает, а вот текущие - нет..
    тут же рестартуешь zabbix-сервер, он уже стартует с нормальным текущим временем (так как время уже синхронизировалось),

    Mar 31 13:55:32 zabbix.clpo.local systemd[1]: Starting Zabbix Server...
    Mar 31 13:55:32 zabbix.clpo.local systemd[1]: Started Zabbix Server.

    и отображение на графиках возобновляется..

    Вопрос: как zabbix синхрониизирует свое время с системным? или я в корне не прав, предполагая такое повдение, и он помещает в базу данные, маркируя их именно текущим временем системы?

    Но данных то за текущий период нет, если он рестартует с неправильным временем, в логах все хорошо, сервер работает.. и пока не перезагрузишь с нормальным временем, данные не появляются...

    Проверить гипотезу - только заглянуть в базу, есть ли там данные из "будущего" периода.. так, чтоли? Может кто подскажет sql-запрос, которым это можно проделать? (база postgres)

    И непонятно тогда, как заббикс синхронизируется с текущим временем системы, только при старте, или потом еще по периоду?
    Или дело совсем не в этом?
    Тогда куда копать?

    Система Linux Centos 7.2, Zabbix Server 3.0.1
    Last edited by ktulkhu; 31-03-2016, 11:57. Reason: update
  • aftertime
    Junior Member
    • Feb 2016
    • 21

    #2
    Виртуалка какая? Hyper-v, например, пробрасывает свое время внутрь системы, что можно отключить. Попробуйте поднять на машине с Zabbix NTP-клиент.

    Comment

    • ktulkhu
      Junior Member
      • Jan 2016
      • 13

      #3
      Виртуалка HyperV. Синхронизация внутрь виртуалки отключена.
      Я же объяснил, синхронизация внутри виртуалки Zabbix - настроена.
      Но пока интерфейс поднимается, потом запускается chronyd, потом сразу запускается zabbix, время еще не успело синхронизироваться, а сервер заббикс уже стартанул. Потом время в системе синхронизируется, но сервер то уже запущен при "неправильном" времени.

      Я же описал все это подробно в посте.

      Вопрос не в том, как мне время синхронизировать на виртуалке, а как синхронизирует время сам сервер заббикс с временем системы. Пост внимательно прочитайте.
      Last edited by ktulkhu; 31-03-2016, 12:16. Reason: update

      Comment

      • Viewer
        Senior Member
        • Oct 2012
        • 131

        #4
        А я выловил тоже косяк со временем.
        Zabbix 3.0.1 centos 7 . По тригеру запускается "Действие". В действии я в том числе передаю date в файл ( синий скриншотик).

        И вот в Web интерфейсе - Report - Action Log время выполнения скрипта почему -то отображается прошлое на 9 минут . (Причем реально скрипт запустился сейчас. я сидел в графике и обновлял страничку). И тут же в графике время показывает правильное и в логе на сервере тоже верное время.
        Zabbix-server перезапускал, Т.е. стартовал после возможных синхронизаций с ntp

        Вижу что заббикс сервер берет время из разных мест. Но откуда - непонятно.

        И ещё было, что в Report - Action Log вообще не отображался факт выполнения "Действия", хотя по факту он был выполнен.
        Тоже наверно из-за времени.
        Last edited by Viewer; 31-03-2016, 12:40.

        Comment

        • ktulkhu
          Junior Member
          • Jan 2016
          • 13

          #5
          прогнал сейчас запрос в базе zabbix, выбрал из history значения по дате за апрель:

          SELECT * FROM history WHERE clock > 1459468800 AND clock < 1462057200;

          он мне 60 значений нашел..
          тоесть, моя теория о том, zabbix_сервер пишет данные "в будущее" если стартанул с "будущим" временем, подтверждается пока..

          Comment

          • w4t1s
            Junior Member
            • Mar 2016
            • 7

            #6
            Я б решил это дело порядком запуска zabbix-сервера в rc.d. Поставить его на отложенный запуск, и в скрипте старта проверять синк по времени через ntpq например. Слава богу в убунте есть зависимости сервисов.

            Comment

            • pzabortsev
              Senior Member
              • Dec 2012
              • 338

              #7
              Originally posted by w4t1s
              ... Слава богу в убунте есть зависимости сервисов.
              Щас опять ткнут носом в необходимость "внимательно читать пост" )))

              А вообще идея здравая. И в Centos может быть реализована

              Comment

              • yukra
                Senior Member
                • Apr 2013
                • 1359

                #8
                Originally posted by pzabortsev
                И в Centos может быть реализована
                а уж про systemd я вообще молчу

                Comment

                Working...