Ad Widget

Collapse

Zabbix agentd возвращает неверный данные о RAM

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • ostin
    Junior Member
    • Oct 2010
    • 6

    #1

    Zabbix agentd возвращает неверный данные о RAM

    Наблюдаемый хост:
    Code:
    # ifconfig 
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:39 errors:0 dropped:0 overruns:0 frame:0
              TX packets:39 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:2178 (2.1 KiB)  TX bytes:2178 (2.1 KiB)
    
    venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
              inet addr:127.0.0.1  P-t-P:127.0.0.1  Bcast:0.0.0.0  Mask:255.255.255.255
              UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
              RX packets:62510 errors:0 dropped:0 overruns:0 frame:0
              TX packets:62329 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:3650088 (3.4 MiB)  TX bytes:3612804 (3.4 MiB)
    
    venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
              inet addr:178.63.193.65  P-t-P:178.63.193.65  Bcast:178.63.193.65  Mask:255.255.255.255
              UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
    Code:
    # free -b
                 total       used       free     shared    buffers     cached
    Mem:     419430400  182165504  237264896          0          0          0
    -/+ buffers/cache:  182165504  237264896
    Swap:            0          0          0
    Code:
    # uname -a
    Linux SilviaSaint 2.6.18-128.2.1.el5.028stab064.8 #1 SMP Fri Nov 6 12:26:59 MSK 2009 x86_64 x86_64 x86_64 GNU/Linux
    Хост с сервером Zabbix:
    Code:
    # zabbix_get -s 178.63.193.65 -k 'vm.memory.size[free]'
    703954944
    Code:
    # zabbix_get -s 178.63.193.65 -k 'vm.memory.size[total]'
    25217232896
    Code:
    # zabbix_get -V
    Zabbix Get v1.8.3 (revision 13928) (16 August 2010)
    Compilation time: Aug 23 2010 12:22:33
    Сервер и клиент перезапускал, с другими хостами такой проблемы нет. С этого хоста остальные данные приходят верные (например, свободное место в корне). Наблюдаемый хост - это VPS на базе технологии OpenVZ, может быть в этом причина? Хотя `free` же верно возвращает данные. Куда копать?
  • dima_dm
    Senior Member
    • Dec 2009
    • 2697

    #2
    А
    #cat /proc/meminfo
    правильные данные показывает?

    Comment

    • ostin
      Junior Member
      • Oct 2010
      • 6

      #3
      Правильные.
      Code:
      # cat /proc/meminfo
      MemTotal:       409600 kB
      MemFree:        213436 kB
      Buffers:             0 kB
      Cached:              0 kB
      SwapCached:          0 kB
      Active:              0 kB
      Inactive:            0 kB
      HighTotal:           0 kB
      HighFree:            0 kB
      LowTotal:       409600 kB
      LowFree:        213436 kB
      SwapTotal:           0 kB
      SwapFree:            0 kB
      Dirty:               0 kB
      Writeback:           0 kB
      AnonPages:           0 kB
      Mapped:              0 kB
      Slab:                0 kB
      PageTables:          0 kB
      NFS_Unstable:        0 kB
      Bounce:              0 kB
      CommitLimit:         0 kB
      Committed_AS:        0 kB
      VmallocTotal:        0 kB
      VmallocUsed:         0 kB
      VmallocChunk:        0 kB
      HugePages_Total:     0
      HugePages_Free:      0
      HugePages_Rsvd:      0
      Hugepagesize:     2048 kB
      Zabbix брал от сюда для CentOS - http://www.zabbix.com/forum/showthread.php?t=14797. В логах агента ошибок никаких.
      Last edited by ostin; 01-11-2010, 15:52. Reason: апечатки

      Comment

      • dima_dm
        Senior Member
        • Dec 2009
        • 2697

        #4
        Попробуйте Включить Debug

        /etc/zabbix/zabbix_agentd.conf

        # Specifies debug level
        # 0 - debug is not created
        # 1 - critical information
        # 2 - error information
        # 3 - warnings (default)
        # 4 - for debugging (produces lots of information)

        DebugLevel=4
        P.S. Не забываете перезапускать zabbix_agentd после каждого изменения конфигурации!!!!

        Comment

        • ostin
          Junior Member
          • Oct 2010
          • 6

          #5
          Вот с уровнем отладки 4, перезапустил сервис, сделал:
          Code:
          # zabbix_get -s 178.63.193.65 -k 'vm.memory.size[free]' && zabbix_get -s 178.63.193.65 -k 'vm.memory.size[total]'
          Ничего подозрительно в логе не вижу. Честно говоря, понятия не имею, что теперь делать.
          Attached Files

          Comment

          • dima_dm
            Senior Member
            • Dec 2009
            • 2697

            #6
            Попробуйте установить другую версию zabbix_agentd http://www.zabbix.com/download.php http://www.zabbix.com/download2.php, либо собрать его из исходных кодов на данном сервере. У вас был установлен x86_64 zabbix_agentd?
            Last edited by dima_dm; 01-11-2010, 21:45.

            Comment

            • ostin
              Junior Member
              • Oct 2010
              • 6

              #7
              Вот из другого репозитория, ситуация такая же.
              Code:
              =============================================================================================================================================================
               Package                              Arch                           Version                                Repository                                  Size
              =============================================================================================================================================================
              Installing:
               zabbix-agent                         x86_64                         1.8.3-2.el5.kb                         kbs-CentOS-Testing                         249 k
              Installing for dependencies:
               zabbix                               x86_64                         1.8.3-2.el5.kb                         kbs-CentOS-Testing                          80 k
              zabbix-agent-1.4.6-1.el5.x86_64 не пашет (данных вообще никаких от него нет).
              Я так понимаю, мне остаются только костомные проверки и из них вычленять данные? Могу конечно собрать rpm, но смысла не вижу, два разных репозитория жеж...

              Comment

              • dima_dm
                Senior Member
                • Dec 2009
                • 2697

                #8
                Видимо у вас функция некорректно работает perfstat_memory_total.
                Смотрите исходные коды
                zabbix-1.8.3/src/zabbix_agent/vmstats.c
                Last edited by dima_dm; 02-11-2010, 16:34.

                Comment

                • ostin
                  Junior Member
                  • Oct 2010
                  • 6

                  #9
                  Я вам даже больше скажу, функция perfstat_memory_total у меня совсем не работает, потому что у меня не AIX 6.1. Хост на linux, а на линуксах данные об оперативной памяти берутся из /proc/meminfo (судя по коду агента).

                  Comment

                  • ostin
                    Junior Member
                    • Oct 2010
                    • 6

                    #10
                    Пока живу вот с таким:
                    Code:
                    UserParameter=vm.memory.used,free -b | sed '3!D' | tr -s " " | cut -f 3 -d " "

                    Comment

                    • Jimson
                      Senior Member
                      • Jan 2008
                      • 1327

                      #11
                      включите дебаг и по необходимости добавьте вывод в местах агента где, как вы предполагаете, идет расчет free memory
                      хотя у меня большие сомнения что имеет место быть ошибка в таком массово юзаемом коде
                      юзер zabbix точно может читать данные из /proc/meminfo ?

                      Comment

                      Working...