Ad Widget

Collapse

Очередь ожидающих элементов обновления.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • saa
    Member
    • Oct 2011
    • 70

    #1

    Очередь ожидающих элементов обновления.

    Можно сказать, что постоянно висит приличная очередь.

    Всего элементов 9364, 300 хостов.

    Используется zabbix 1.8.10, на хостах агенты почти все версии 1.8.9.

    В качестве базы данных MySQL с InnoDB, сразу вопрос, ни кто не пробовал использовать XtraDB?

    Сейчас конфигурация железа следующая:

    Intel(R) Xeon(R) CPU E5530 @ 2.40GHz
    24G памяти
    2 sata диска 7200rpm в soft raid 1.

    iowait держится всегда в районе 5-10, при этом по iotop MySQL всегда в топе, оно и понятно.

    Так вот вопрос, правильно ли я думаю, что проблема в дисковой подсистеме?
  • saa
    Member
    • Oct 2011
    • 70

    #2
    Да, темы на форме читал, к примеру эту


    Но Timeout и так установлен приличный, количество Pollers пробовал увеличивать, легче не становится.

    Comment

    • dima_dm
      Senior Member
      • Dec 2009
      • 2697

      #3
      Посмотрите
      Администрирование-> Очередь -> В правом верхнем углу Детали.
      Может реально хосты недоступны либо по данным Item нельзя получить данные за время Timeout.

      Если в настройках хоста, указано подключаться по DNS имя, а не IP адрес
      Может быть проблема с DNS, Большая задержка при резолвинге

      Comment

      • saa
        Member
        • Oct 2011
        • 70

        #4
        Originally posted by dima_dm
        Посмотрите
        Администрирование-> Очередь -> В правом верхнем углу Детали.
        Может реально хосты недоступны либо по данным item нельзя получить данные за время timeout.
        Да, там в основном элементы, которые опрашиваются каждые 10 секунд, таких элементов около 1200.

        Ну и почему то, оказались в отложенных элементы, которые проверяются раз в минуту, правда их мало, около 20.

        Comment

        • saa
          Member
          • Oct 2011
          • 70

          #5
          Да, данные которые опрашиваются каждые 10 секунд, это
          • * нагрузка на процессор
            * iowait
            * трафик с eth0, входящий и исходящий.


          Все было более менее сносно, пока не добавил трафик с eth0, входящий и исходящий.

          Это может быть из-за дисков, из-за того что не успевает записать в базу в определенный момент?

          Например если делать выборку по событиям, то iowait в этот момент подскакивает до 10-12.

          Comment

          • saa
            Member
            • Oct 2011
            • 70

            #6
            По поводу timeout, там отложено максимум на 34 секунды, но таких мало, а в конфигах агентов и сервера установлен 30 секунд.

            Comment

            • dima_dm
              Senior Member
              • Dec 2009
              • 2697

              #7
              Я думаю, что проблема в том, что не успевает опросить.
              Смотрите загрузку Pollers, как написано

              Comment

              • saa
                Member
                • Oct 2011
                • 70

                #8
                Originally posted by dima_dm
                Я думаю, что проблема в том, что не успевает опросить.
                Смотрите загрузку pollers, как написано
                http://www.zabbix.com/forum/showthread.php?t=23956
                Все же оказался диск виноват.

                Comment

                • Horror777
                  Member
                  • Jun 2009
                  • 36

                  #9
                  my.cnf приложите пожалуйста.
                  При такой частоте опроса идёт большое накопление в базу, база может не справляться при таком объёме - сталкивался, попробую помочь, но сначала данные пожалуйста =)

                  Comment

                  • Horror777
                    Member
                    • Jun 2009
                    • 36

                    #10
                    Вот мой боевой конфиг на 24Gb оперативной памяти

                    key_buffer = 16M
                    max_allowed_packet = 16M
                    thread_stack = 192K
                    thread_cache_size = 8

                    myisam-recover = BACKUP

                    thread_concurrency = 8

                    query_cache_limit = 1M
                    query_cache_size = 16M

                    log_error = /log/mysql_error.log

                    innodb_file_per_table = 1
                    event_scheduler = 1

                    #12 GB
                    innodb_buffer_pool_size = 12884901888
                    #2 GB
                    innodb_log_file_size = 2047483648
                    innodb_log_buffer_size = 8M
                    innodb_thread_concurrency = 8
                    innodb_flush_method = O_DIRECT

                    default_storage_engine = InnoDB
                    default_table_type = InnoDB


                    [mysqldump]
                    quick
                    quote-names
                    max_allowed_packet = 16M

                    [mysql]
                    #no-auto-rehash # faster start of mysql but no tab completition

                    [isamchk]
                    key_buffer = 16M

                    Comment

                    • saa
                      Member
                      • Oct 2011
                      • 70

                      #11
                      Ниже конфиг. Собственно проблема решилась переездом на новое железо.
                      Code:
                      [mysqld]
                      
                      set-variable    = wait_timeout=28800
                      set-variable    = interactive_timeout=100
                      skip-character-set-client-handshake
                      default-character-set=utf8
                      init_connect    ='SET NAMES utf8'
                      user                                            = mysql
                      port                                            = 3306
                      socket                                  = /var/run/mysqld/mysqld.sock
                      pid-file                                = /var/run/mysqld/mysqld.pid
                      log-error                       = /var/log/mysql/mysqld.err
                      basedir                                 = /usr
                      datadir                                 = /home/mysql
                      skip-locking
                      
                      set-variable = key_buffer_size=16M
                      set-variable = sort_buffer=8M
                      set-variable = read_buffer_size=16M
                      
                      query_cache_size        = 100M
                      query_cache_type        = 0
                      
                      
                      log_slow_queries = /var/log/mysql/mysql-slow.log
                      
                      
                      max_allowed_packet                      = 20M
                      connect_timeout   = 60
                      net_read_timeout = 200
                      table_cache                             = 64
                      net_buffer_length                       = 8K
                      read_rnd_buffer_size            = 512K
                      myisam_sort_buffer_size         = 8M
                      language                                        = /usr/share/mysql/english
                      
                      tmpdir                                          = /tmp/
                      innodb_data_file_path           = ibdata1:128M;ibdata2:128M:autoextend:max:4096M
                      innodb_additional_mem_pool_size = 2G
                      innodb_buffer_pool_size         = 48G
                      innodb_flush_method             = O_DIRECT
                      innodb_log_file_size = 5M
                      innodb_log_buffer_size = 8M
                      innodb_file_per_table=1
                      set-variable = innodb_log_files_in_group=2
                      innodb_flush_log_at_trx_commit = 1
                      innodb_lock_wait_timeout = 100
                      max_connections=2048

                      Comment

                      • sersad
                        Senior Member
                        • May 2009
                        • 518

                        #12
                        Что то конфиги интересны и спорны, поделюсь своим
                        Code:
                        [mysqld]
                        character_set_server=utf8
                        collation-server=utf8_bin
                        init_connect="SET NAMES utf8 collate utf8_bin"
                        
                        user            = mysql
                        socket          = /var/run/mysqld/mysqld.sock
                        port            = 3306
                        basedir         = /usr
                        datadir         = /var/lib/mysql
                        tmpdir          = /tmp
                        skip-external-locking
                        #skip-bdb
                        [B]default-storage-engine = innodb[/B]
                        [B]tmp_table_size          = 1024M[/B]
                        query_cache_limit       = 1M
                        query_cache_limit       = 1M
                        [B]query_cache_size        = 256M[/B]
                        [B]max_heap_table_size     = 256M[/B]
                        [B]max_connections         = 400[/B]
                        join_buffer_size        = 2048K
                        read_buffer_size        = 256k
                        read_rnd_buffer_size    = 256k
                        thread_cache_size       = 4
                        key_buffer              = 16M
                        max_allowed_packet      = 16M
                        thread_stack            = 192K
                        #thread_cache_size       = 4
                        [B]table_cache            = 512[/B]
                        [B]
                        innodb_flush_log_at_trx_commit  = 2
                        innodb_file_per_table
                        innodb_flush_method     = O_DIRECT
                        innodb_log_file_size    = 512M
                        innodb_log_buffer_size  = 4M
                        innodb_buffer_pool_size = 6G
                        innodb_thread_concurrency       =8[/B]

                        Code:
                        top - 11:27:42 up 130 days, 23:29,  1 user,  load average: 1.06, 0.64, 0.56
                        Tasks: 249 total,   4 running, 245 sleeping,   0 stopped,   0 zombie
                        Cpu(s): 24.6%us,  1.6%sy,  0.6%ni, 73.0%id,  0.0%wa,  0.0%hi,  0.2%si,  0.0%st
                        Mem:  10261624k total, 10008208k used,   253416k free,   545120k buffers
                        Swap:  5855652k total,   223436k used,  5632216k free,  5855276k cached
                        Code:
                        Zabbix сервер запущен	Да	localhost:10051
                        Количество узлов сети (под наблюдением/без наблюдения/шаблоны)	524	431 / 12 / 81
                        Количество элементов данных (активных/деактивированых/не поддерживаются)	190706	105615 / 80897 / 4194
                        Количество триггеров (активированных/деактивированных)[проблема/неизвестно/ок]	9656	9168 / 488  [42 / 382 / 8744]
                        Количество пользователей (подключенных в данный момент)	33	6
                        Требуемое быстродействие сервера, новые значения в секунду	105.46	-
                        Оперативы 10G RAID-5 аппаратный
                        Очереди практически нет, то что есть это 10-300 элемнтов от тормозных железок которые тупят по snmp

                        mysqld в топе почти не бывает, в основном там apache.
                        На сервере помимо забикса крутится еще и NOC с моногой и постргресом
                        Last edited by sersad; 27-02-2012, 09:36.

                        Comment

                        • saa
                          Member
                          • Oct 2011
                          • 70

                          #13
                          Ну сейчас, как я уже сказал, проблемы нет совсем, перенесли на новое железо: аппаратный raid 10 из 4 ssd и 64G памяти. Теперь mysql в топе и не бывает и всегда чистая очередь.

                          Comment

                          • sersad
                            Senior Member
                            • May 2009
                            • 518

                            #14
                            saa, хорошо вам 64 гига ОЗУ это вкусно.
                            Если не секрет сколько итемов триггеров и сколько значений в секунду у вас в zabbix?

                            Comment

                            • saa
                              Member
                              • Oct 2011
                              • 70

                              #15
                              Originally posted by sersad
                              saa, хорошо вам 64 гига ОЗУ это вкусно.
                              Если не секрет сколько итемов триггеров и сколько значений в секунду у вас в zabbix?
                              На данный момент совсем мало,

                              Code:
                              Количество узлов сети (под наблюдением/без наблюдения/шаблоны)	331	300 / 8 / 23
                              Количество элементов данных (активных/деактивированых/не поддерживаются)	9446	9278 / 2 / 166
                              Количество триггеров (активированных/деактивированных)[проблема/неизвестно/ок]	13733	12493 / 1240  [39 / 21 / 12433]
                              Количество пользователей (подключенных в данный момент)	3	3
                              Требуемое быстродействие сервера, новые значения в секунду	180.03	 -
                              Но каждый день добавляются новые, поэтому решили один раз поставить нормальное железо и не думать об этом.

                              Comment

                              Working...