Ad Widget

Collapse

Zabbix 3.4 to 4.0

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • minoga
    Junior Member
    • Aug 2018
    • 7

    #1

    Zabbix 3.4 to 4.0

    Доброго дня.

    Пытаюсь обновить zabbix с версии 3.4 до 4.0 (работает в docker). Прописываю пользователя БД с root правами (для проверки). В логе при этом:

    Code:
    ** Creating 'root' user in MySQL database
    ** Database 'zabbix' already exists. Please be careful with database COLLATE!
    ** Table 'zabbix.dbversion' already exists.
    Но zabbix сервер не запускается, мотивируя это разницей версий БД (что, впрочем, логично):

    Code:
    using configuration file: /etc/zabbix/zabbix_server.conf
    current database version (mandatory/optional): 02010009/02010009
    required mandatory version: 04000000
    При этом обновления базы так и не происходит. Если удалить таблицу dbversion, обновления всё равно не происходит, но таблица dbversion создаётся. Причём версия записывается 02010009, хотя версия 3.4.

    Подскажите в какую сторону копать?
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Что-то у вас не то с базой данных.
    У меня на версии Zabbix 3.0.20 в данной таблице и MANDATORY, и OPTIONAL имеют значение "3000000".
    Насколько я понимаю, у вас данная запись означает, что структура базы соответствует версии Zabbix 2.x (не скажу точнее - версий 2.1 и 2.10, вроде бы, не было: были 2.2 и 2.4).
    Как с этим работал сервер версии 3.4 - неясно, он при старте должен был обновить структуру базы и записать в эту таблицу новые значения.
    Хотя возможно, конечно, что я и ошибаюсь.

    А что именно пишет сервер v4.0 при старте? Он же, видя версию меньше нужной, должен сам конвертировать базу и продолжать работать.

    Comment

    • minoga
      Junior Member
      • Aug 2018
      • 7

      #3
      В том-то вся и беда, что не пишет ничего криминального. Хотя, возможно просто я не вижу. Вот полный вывод:

      Code:
      ** Deploying Zabbix server with mysql database
      ** Preparing the system
      ** Preparing Zabbix server
      ********************
      * DB_SERVER_HOST: zabbix-mysql
      * DB_SERVER_PORT: 3306
      * DB_SERVER_DBNAME: zabbix
      * DB_SERVER_ZBX_USER: root
      * DB_SERVER_ZBX_PASS: ощення_сложнама_пароле
      ********************
      ** Creating 'root' user in MySQL database
      ** Database 'zabbix' already exists. Please be careful with database COLLATE!
      ** Table 'zabbix.dbversion' already exists.
      ** Preparing Zabbix server configuration file
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ListenPort": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SourceIP": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "LogType": 'console'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "LogFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "LogFileSize": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "PidFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DebugLevel": '0'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBHost": 'zabbix-mysql'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBName": 'zabbix'... updated
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBSchema": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBUser": 'root'... updated
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBPort": '3306'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBPassword": 'xxx'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HistoryStorageURL": 'http://es-zabbix:9200'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HistoryStorageTypes": 'uint,dbl,str,text'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HistoryStorageDateIndex": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "DBSocket": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartPollers": '300'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartIPMIPollers": '10'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartPollersUnreachable": '150'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartTrappers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartPingers": '50'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartDiscoverers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartHTTPPollers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartPreprocessors": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartTimers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartEscalators": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartAlerters": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "JavaGateway": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "JavaGatewayPort": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartJavaPollers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartVMwareCollectors": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "VMwareFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "VMwarePerfFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "VMwareCacheSize": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "VMwareTimeout": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SNMPTrapperFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartSNMPTrapper": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HousekeepingFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "MaxHousekeeperDelete": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SenderFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "CacheSize": '128M'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "CacheUpdateFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartDBSyncers": '50'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HistoryCacheSize": '128M'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "HistoryIndexCacheSize": '32M'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TrendCacheSize": '64M'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ValueCacheSize": '128M'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "Timeout": '30'... updated
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TrapperTimeout": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "UnreachablePeriod": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "UnavailableDelay": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "UnreachableDelay": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "AlertScriptsPath": '/usr/lib/zabbix/alertscripts'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ExternalScripts": '/usr/lib/zabbix/externalscripts'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "FpingLocation": '/usr/sbin/fping'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "Fping6Location": '/usr/sbin/fping6'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SSHKeyLocation": '/var/lib/zabbix/ssh_keys'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "LogSlowQueries": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "StartProxyPollers": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ProxyConfigFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "ProxyDataFrequency": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SSLCertLocation": '/var/lib/zabbix/ssl/certs/'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SSLKeyLocation": '/var/lib/zabbix/ssl/keys/'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "SSLCALocation": '/var/lib/zabbix/ssl/ssl_ca/'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "LoadModulePath": '/var/lib/zabbix/modules/'... added
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSCAFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSCRLFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSCertFile": ''... removed
      ** Updating '/etc/zabbix/zabbix_server.conf' parameter "TLSKeyFile": ''... removed
      ** Cleaning the system
      ########################################################
      ** Starting Zabbix server
      Starting Zabbix Server. Zabbix 4.0.0 (revision 85308).
      Press Ctrl+C to exit.
      
           1:20181009:094106.874 Starting Zabbix Server. Zabbix 4.0.0 (revision 85308).
           1:20181009:094106.874 ****** Enabled features ******
           1:20181009:094106.874 SNMP monitoring:           YES
           1:20181009:094106.874 IPMI monitoring:           YES
           1:20181009:094106.874 Web monitoring:            YES
           1:20181009:094106.874 VMware monitoring:         YES
           1:20181009:094106.875 SMTP authentication:       YES
           1:20181009:094106.875 Jabber notifications:       NO
           1:20181009:094106.875 Ez Texting notifications:  YES
           1:20181009:094106.875 ODBC:                      YES
           1:20181009:094106.875 SSH2 support:              YES
           1:20181009:094106.875 IPv6 support:              YES
           1:20181009:094106.875 TLS support:               YES
           1:20181009:094106.875 ******************************
           1:20181009:094106.875 using configuration file: /etc/zabbix/zabbix_server.conf
           1:20181009:094106.901 current database version (mandatory/optional): 02010009/02010009
           1:20181009:094106.901 required mandatory version: 04000000
      База при этом недавно обновлялась нормально с версии 3.2 до 3.4.

      Comment

      • minoga
        Junior Member
        • Aug 2018
        • 7

        #4
        Сам виноват… DebugLevel переписывался на 0 (был указан дважды). Вижу в логе, что не может создать таблицы, так как они уже существуют.

        Comment

        • minoga
          Junior Member
          • Aug 2018
          • 7

          #5
          Пришлось удалить вот эти таблицы (почти все были пустые): task_remote_command, task_remote_command_result, sysmap_shape, sysmap_element_trigger, httptest_field, httpstep_field, dashboard, dashboard_user, dashboard_usrgrp, widget, widget_field, task_acknowledge, tag_filter, task_check_now, hstgrp.

          Проблема возникла с запросом:

          Code:
          update problem set acknowledged=(select acknowledged from events where events.eventid=problem.eventid)]
          query failed: [1048] Column 'acknowledged' cannot be null [update problem set acknowledged=(select acknowledged from events where events.eventid=problem.eventid)]
          Таблица events пустая. Как-то это можно побороть?

          Comment

          • shapka
            Junior Member
            • Oct 2018
            • 1

            #6
            Originally posted by minoga
            Пришлось удалить вот эти таблицы (почти все были пустые): task_remote_command, task_remote_command_result, sysmap_shape, sysmap_element_trigger, httptest_field, httpstep_field, dashboard, dashboard_user, dashboard_usrgrp, widget, widget_field, task_acknowledge, tag_filter, task_check_now, hstgrp.

            Проблема возникла с запросом:

            Code:
            update problem set acknowledged=(select acknowledged from events where events.eventid=problem.eventid)]
            query failed: [1048] Column 'acknowledged' cannot be null [update problem set acknowledged=(select acknowledged from events where events.eventid=problem.eventid)]
            Таблица events пустая. Как-то это можно побороть?
            а у тебя партиционирование включено?

            Comment


            • shapka
              shapka commented
              Editing a comment
              DELETE FROM problem WHERE eventid;
          • minoga
            Junior Member
            • Aug 2018
            • 7

            #7
            У меня дамп был без таблицы events… Перенёс и помогло.

            Comment

            • C.Smoke
              Junior Member
              • Oct 2018
              • 4

              #8
              Доброго времени суток!
              У меня приключилась подобная неприятность.
              Обновил Zabbix с 3.2 на 3.4 - всё прошло хорошо.
              А при обновлении с 3.4 на 4.0 - появилась вот такая неприятная надпись вместо веб интерфейса.
              При этом сообщения от сервера приходят -то есть триггеры работают и данные собираются.
              Подскажите, как побороть?

              Comment

              • C.Smoke
                Junior Member
                • Oct 2018
                • 4

                #9
                Покопался в логах и нашёл вот что:

                Code:
                  4948:20181019:192732.564 current database version (mandatory/optional): 03050148/03050148
                  4948:20181019:192732.564 required mandatory version: 04000000
                  4948:20181019:192732.564 starting automatic database upgrade
                  4948:20181019:192732.565 [Z3005] query failed: [1060] Duplicate column name 'http_strip_domains' [alter table `config` add `http_strip_domains` varchar(2048) default '' not null]
                  4948:20181019:192732.565 database upgrade failed
                В базах очень не силён, помогите набором команд дабы это поправить. Заранее большое спасибо!

                Comment

                • teddy
                  Senior Member
                  • Dec 2017
                  • 234

                  #10
                  Originally posted by C.Smoke
                  Доброго времени суток!
                  У меня приключилась подобная неприятность.
                  Обновил Zabbix с 3.2 на 3.4 - всё прошло хорошо.
                  А при обновлении с 3.4 на 4.0 - появилась вот такая неприятная надпись вместо веб интерфейса.
                  При этом сообщения от сервера приходят -то есть триггеры работают и данные собираются.
                  Подскажите, как побороть?
                  Ну дык обновите версию zabbix-web-mysql или аналога

                  Comment

                  • C.Smoke
                    Junior Member
                    • Oct 2018
                    • 4

                    #11
                    Ответа так и не дождался - сделал сам:
                    -Через интерфейс webmin подключился к серверу и удалил колонку `http_strip_domains` в таблице `config`.
                    -Перезапустил сервер sudo service zabbix-server restart
                    Итог:

                    Code:
                     18617:20181022:114241.055 ****** Enabled features ******
                     18617:20181022:114241.055 SNMP monitoring:           YES
                     18617:20181022:114241.055 IPMI monitoring:           YES
                     18617:20181022:114241.055 Web monitoring:            YES
                     18617:20181022:114241.055 VMware monitoring:         YES
                     18617:20181022:114241.055 SMTP authentication:       YES
                     18617:20181022:114241.055 Jabber notifications:      YES
                     18617:20181022:114241.056 Ez Texting notifications:  YES
                     18617:20181022:114241.056 ODBC:                      YES
                     18617:20181022:114241.056 SSH2 support:              YES
                     18617:20181022:114241.056 IPv6 support:              YES
                     18617:20181022:114241.056 TLS support:               YES
                     18617:20181022:114241.056 ******************************
                     18617:20181022:114241.056 using configuration file: /etc/zabbix/zabbix_server.conf
                     18617:20181022:114241.062 current database version (mandatory/optional): 04000000/04000000
                     18617:20181022:114241.062 required mandatory version: 04000000
                     18617:20181022:114241.162 server #0 started [main process]

                    Comment

                    Working...