Ad Widget

Collapse

Взаимодействие Master->Slave

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • fscr
    Junior Member
    • Sep 2010
    • 3

    #1

    Взаимодействие Master->Slave

    Здравствуйте!

    Не мог-бы кто-нибудь объяснить вкратце на уровне исходного кода, как взаимодействуют мастер и слэйв ноды в DM?

    Дело в том, что со вчерашнего вечера, моя инсталляция из двух заббикс-нод перестала отображать какие-либо данные. В разделе "Administration->Queue" висят пара тысяч item'ов "more than 10 minutes", в "Latest data" для всех item'ов последнее обновление датируется примерно 19:00 MSK вчера.

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

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

    Спасибо.
  • dima_dm
    Senior Member
    • Dec 2009
    • 2697

    #2
    http://www.zabbix.com/documentation/...ring/data_flow
    Тут сначала нужно искать проблемы на сети и подвисанием одного из элементов распределенной системы и когда Вы точно найдете, в чем причина проблемы, лезть в исходный код.
    Last edited by dima_dm; 22-09-2010, 10:58.

    Comment

    • fscr
      Junior Member
      • Sep 2010
      • 3

      #3
      Originally posted by dima_dm
      [url]Тут сначала нужно
      Да, конечно-же, я сперва убедился в наличии связи между нодами, возможности установления tcp-соединения в обоих направлениях на требуемый порт, работоспособности БД мастера и БД слэйва, а также в возможности получить значение произвольно выбранного item'а с первого попавшегося хоста пр помощи zabbix_get.

      Скажите, а есть-ли метод проинсталлить заново мастер и подцепить со слэйвов всю необходимую конфигурацию (хосты/item'ы и прочее)?

      Я пробовал тупо подсунуть веб-морде и мастер-серверу новую, свежеинтсталленую БД:
      • остановить сервер,
      • создать новую БД,
      • залить начальные данные,
      • переписать имя БД в конфиге сервера и веб-морды,
      • сделать zabbix_server -c /etc/zabbix/zabbix_server.conf -n 1,
      • прощёлкать install.php в веб-морде,
      • запустить сервер,
      • зарегистрировать слэйв-ноду в веб-морде.


      Но автоматом веб-морда естественно не стала показывать хосты/группы хостов/item'ы/триггеры присутствующие на слэйв-ноде.

      Comment

      • dima_dm
        Senior Member
        • Dec 2009
        • 2697

        #4
        А tcpdump пробовали анализировать трафик между Slave и Master?
        Запустить процедуру восстановления таблиц баз данных?
        По поводу перерегистрации Master не подскажу, не делал.

        Comment

        • fscr
          Junior Member
          • Sep 2010
          • 3

          #5
          Originally posted by dima_dm
          А tcpdump пробовали анализировать трафик между Slave и Master?
          Анализировать - нет. Я ведь не знаком с протоколом. А вот убедиться в наличи трафика - да, трафик между мастером и слэйвом в тот момент был. Какой-то.

          Originally posted by dima_dm
          Запустить процедуру восстановления таблиц баз данных?
          Всмысле REPAIR TABLE? Но Zabbix использует InnoDB.

          Comment

          • dima_dm
            Senior Member
            • Dec 2009
            • 2697

            #6
            Originally posted by fscr
            Всмысле REPAIR TABLE? Но Zabbix использует InnoDB.
            Вы ничего не сказали о типе используемой базы данных. В случае InnoDB нужно убедится, что из всех таблиц можно получить данные.
            Code:
            SELECT * from history_uint limit 10;
            и т.д.

            Comment

            • ugh
              Senior Member
              • Jun 2009
              • 296

              #7
              Originally posted by fscr
              Да, конечно-же, я сперва убедился в наличии связи между нодами, возможности установления tcp-соединения в обоих направлениях на требуемый порт, работоспособности БД мастера и БД слэйва, а также в возможности получить значение произвольно выбранного item'а с первого попавшегося хоста пр помощи zabbix_get.

              Скажите, а есть-ли метод проинсталлить заново мастер и подцепить со слэйвов всю необходимую конфигурацию (хосты/item'ы и прочее)?

              Я пробовал тупо подсунуть веб-морде и мастер-серверу новую, свежеинтсталленую БД:
              • остановить сервер,
              • создать новую БД,
              • залить начальные данные,
              • переписать имя БД в конфиге сервера и веб-морды,
              • сделать zabbix_server -c /etc/zabbix/zabbix_server.conf -n 1,
              • прощёлкать install.php в веб-морде,
              • запустить сервер,
              • зарегистрировать слэйв-ноду в веб-морде.


              Но автоматом веб-морда естественно не стала показывать хосты/группы хостов/item'ы/триггеры присутствующие на слэйв-ноде.
              затерся уже слейв у вас?)))

              Comment

              Working...