Ad Widget

Collapse

Зависают процесс сервера

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Shurman
    Member
    • Mar 2014
    • 44

    #1

    Зависают процесс сервера

    В конце января не без проблем перешёл с 2.2.4 на 2.4.3. Одним из основных мотивов было то, что зависали процессы сбора данных, и не реагировали на обычные сигналы kill, убить можно было только через -9. Надеялся, что новая версия лишена этой проблемы... однако же - запустил 27.01, вчера утром - зависли опять... в процессах после service zabbix-server stop осталось вот что:

    Code:
    498      15144  0.0  1.9 446508 39724 ?        S    Jan27   7:43 /usr/sbin/zabbix_server: poller #1 [got 3 values in 16.167219 sec, getting values]
    498      15146  0.1  1.9 446772 40540 ?        S    Jan27   8:38 /usr/sbin/zabbix_server: poller #2 [got 4 values in 5.085689 sec, getting values]
    498      15147  0.0  1.9 446520 40024 ?        S    Jan27   7:46 /usr/sbin/zabbix_server: poller #3 [got 12 values in 8.430163 sec, getting values]
    Кто виноват и что делать?
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    У себя подобной проблемы ни на 2.2, ни на 2.4 не наблюдал.
    Отладчиком смотрели? В каком состоянии они находятся? Железо проверяли?

    Comment

    • Shurman
      Member
      • Mar 2014
      • 44

      #3
      Originally posted by yukra
      У себя подобной проблемы ни на 2.2, ни на 2.4 не наблюдал.
      Отладчиком смотрели? В каком состоянии они находятся? Железо проверяли?
      Отладчиком не смотрел, разбираться некогда было (мониторинг рассылает алармы и заказчикам тоже, могло получиться неприятно, если бы им аларм не пришёл, а проблему они успели увидеть). Надеюсь, в следующий раз удастся. Состояние видно из списка процессов - S, процессор не кушали.
      Железо - виртуальный сервер DigitalOcean, не проверить его...

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

      Comment

      • abugar
        Junior Member
        • Feb 2015
        • 8

        #4
        стрейсом к нему подкличитесь, посмотрите что он делает

        Comment

        • Shurman
          Member
          • Mar 2014
          • 44

          #5
          Коллеги, словил опять такую ситуацию.

          Code:
          [root@zabbix zabbixsrv]# ps aux | grep zabbix_server
          498        417  0.4  2.5 450780 52776 ?        S    Feb02  84:23 /usr/sbin/zabbix_server: poller #1 [got 5 values in 30.625517 sec, getting values]
          498        418  0.5  2.7 454416 56676 ?        S    Feb02 114:49 /usr/sbin/zabbix_server: poller #2 [got 2 values in 11.074907 sec, getting values]
          498        420  0.2  2.4 448364 50392 ?        S    Feb02  55:34 /usr/sbin/zabbix_server: poller #3 [got 1 values in 18.339303 sec, getting values]
          
          
          [root@zabbix zabbixsrv]# strace -p 417
          Process 417 attached - interrupt to quit
          futex(0x2a0275c, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>
          Process 417 detached
          [root@zabbix zabbixsrv]# strace -p 418
          Process 418 attached - interrupt to quit
          futex(0x2db870c, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>
          Process 418 detached
          [root@zabbix zabbixsrv]# strace -p 420
          Process 420 attached - interrupt to quit
          futex(0x27fb8ec, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>
          Process 420 detached
          [root@zabbix zabbixsrv]# kill 417
          [root@zabbix zabbixsrv]# strace -p 417
          Process 417 attached - interrupt to quit
          futex(0x2a0275c, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>
          Process 417 detached
          [root@zabbix zabbixsrv]# pkill -9 -f zabbix_server
          [root@zabbix zabbixsrv]# strace -p 417
          attach: ptrace(PTRACE_ATTACH, ...): No such process
          То есть висят на futex, ждут, по обычному сигналу не убиваются, только по -9.

          Кто виноват и что делать?

          Comment

          • Shurman
            Member
            • Mar 2014
            • 44

            #6
            Может быть это будет кому-то полезно. Проблема вроде как решилась (во всяком случае вот с тех пор больше не возникала) путём увеличения числа поллеров до 10 (в моём случае, было по умолчанию 3).
            Это очевидно баг - если поллеров не хватает, надо или выстраивать очередь, или ошибку какую-то в лог писать (а не зависать так, что только по -9 прибивается процесс).

            Comment

            • Shurman
              Member
              • Mar 2014
              • 44

              #7
              Перезапускал вчера сервер для изменения конфигурации - два поллера оказались опять в зависшем состоянии. Хотя это в целом и не блокировало работу сервера (8 поллеров были, очевидно, живыми) - тем не менее пришлось убивать по -9.

              А вот интересно - этот баг вообще кому-то интересен из разработчиков заббикса?

              Comment

              Working...