Zabbix Documentation 4.0

3.04.04.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.44.2Guidelines

User Tools

Site Tools


manual:installation:upgrade_notes_400

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:installation:upgrade_notes_400 [2018/10/25 08:28]
martins-v more precise wording
manual:installation:upgrade_notes_400 [2019/07/19 08:13] (current)
martins-v some rewording
Line 14: Line 14:
   * libpthread - the POSIX Threads library is now mandatory when compiling Zabbix server and Zabbix proxy. It is required for process-shared mutexes and read-write locks. If mutexes are available, but cannot be process shared then Zabbix will fall back to using semaphores as before the upgrade.   * libpthread - the POSIX Threads library is now mandatory when compiling Zabbix server and Zabbix proxy. It is required for process-shared mutexes and read-write locks. If mutexes are available, but cannot be process shared then Zabbix will fall back to using semaphores as before the upgrade.
   * zlib - the compression library is now mandatory when compiling Zabbix server and Zabbix proxy.   * zlib - the compression library is now mandatory when compiling Zabbix server and Zabbix proxy.
 +
 +=== Compression for server-proxy communication ===
 +
 +Communication between Zabbix server and Zabbix proxies is now using compression to reduce network load and increase performance on low bandwidth network links.
 +
 +Note that the [[:​manual/​appendix/​protocols/​header_datalen|header]] of Zabbix requests/​responses has been changed as part of this development.
 +
 +<note warning>​If you are using network security devices like [[https://​en.wikipedia.org/​wiki/​Intrusion_detection_system|IDS/​IPS]] or [[https://​en.wikipedia.org/​wiki/​Next-generation_firewall|NGFW]] in your network and you are using Zabbix proxies, please make sure your application definitions are up to date for the new Zabbix proxy protocol prior to upgrading to 4.0.x as there have been reports on these devices dropping the traffic when encountering the compression in the network stream. Please contact your security vendor for more information on how to obtain updated definitions or possible workarounds if you run into this problem.</​note>​
  
 === Server parameter for passive proxies mandatory === === Server parameter for passive proxies mandatory ===
Line 24: Line 32:
  
 As a consequence,​ Zabbix agents that are older than version 1.4 are no longer supported. Also, messages from self-written senders will be rejected if the header is absent. Whereas previously Zabbix trappers would accept messages without headers as well as messages with headers, now they will only accept messages with protocol header. As a consequence,​ Zabbix agents that are older than version 1.4 are no longer supported. Also, messages from self-written senders will be rejected if the header is absent. Whereas previously Zabbix trappers would accept messages without headers as well as messages with headers, now they will only accept messages with protocol header.
 +
 +Requests from an older Zabbix get version to the new agent will fail. Note that in this case the following error message is displayed:
 +
 +  Check access restrictions in Zabbix agent configuration
  
 === Loadable modules === === Loadable modules ===
Line 59: Line 71:
   UPDATE users SET passwd=""​ WHERE passwd=md5('​zabbix'​)   UPDATE users SET passwd=""​ WHERE passwd=md5('​zabbix'​)
  
 +== API related changes ==
 +
 +HTTP basic-authentication specific code was removed from API, therefore the ''​password''​ field is now mandatory for the API ''​user.login''​ action.
 ==== Informational ==== ==== Informational ====
  
Line 70: Line 85:
   * It will only be possible to add all items having the name like ''​CPU $2 time''​ to the graph (e.g. ''​CPU user time'',​ ''​CPU system time'',​ ''​CPU idle time'',​ etc.)   * It will only be possible to add all items having the name like ''​CPU $2 time''​ to the graph (e.g. ''​CPU user time'',​ ''​CPU system time'',​ ''​CPU idle time'',​ etc.)
  
-If you are using positional macros in item prototype names, it is suggested to update discovery rules manually by replacing the positional macro with the respective low-level discovery macro:+If you are using positional macros in item prototype names, it is suggested to update discovery rules manually by replacing the positional macro with the respective low-level discovery macro, for example:
  
-|Old item prototype naming:\\ {{:​manual:​introduction:​item_prototype_old_naming.png|}} ​ | +|Old item prototype naming:\\ {{:​manual:​introduction:​item_prototype_old_naming2.png|}} ​ | 
-|New item prototype naming:\\ {{:​manual:​introduction:​item_prototype_new_naming.png|}} ​ |+|New item prototype naming:\\ {{:​manual:​introduction:​item_prototype_new_naming2.png|}} ​ |
  
 It will be possible to use items generated this way in the graph widget with no limitations. It will be possible to use items generated this way in the graph widget with no limitations.
Line 79: Line 94:
 === Timestamp correction === === Timestamp correction ===
  
-Zabbix server will no longer ​correct ​timestamps in cases when Zabbix proxy time differs from Zabbix server time.+Zabbix server will no longer ​adjust value timestamps in cases when Zabbix proxy/active agent/​sender ​time differs from Zabbix server time.
  
 === Time triggers processed by history syncers === === Time triggers processed by history syncers ===
Line 119: Line 134:
   ​   ​
 == Related macro changes ==   == Related macro changes ==  
-   
-Related to this development there are several changes in macros:​  ​ 
  
-  ​* {TRIGGER.NAME} has been replaced by {EVENT.NAME} ​in all default messages.  ​ +Since problem names are no longer generated in runtime based on the current trigger name, and instead are being generated at the time of event, there are corresponding macro changes: 
-  * {TRIGGER.NAME} ​is replaced by {EVENT.NAME} ​in all trigger-based actions ​when upgrading.   + 
-  +  ​In all default messages - {TRIGGER.NAME} has been replaced by {EVENT.NAME}; 
 +  * In all trigger-based actions - {TRIGGER.NAME} ​will be replaced by {EVENT.NAME} when upgrading. 
 + 
 +See also: [[:​manual/​installation/​known_issues#​known_issues_for_400_-_401|known issues]]
 === Working with problems === === Working with problems ===
  
Line 177: Line 193:
  
 Dashboard API is also affected: some of [[manual:​api:​reference:​dashboard:​object|Dashboard widget property types]] are now renamed. ​ Dashboard API is also affected: some of [[manual:​api:​reference:​dashboard:​object|Dashboard widget property types]] are now renamed. ​
 +
 +=== Host column always displayed ===
 +
 +The host column is now always displayed even if only one host is selected in:
 +
 +  * //​Monitoring//​ -> //Latest data//
 +  * //​Monitoring//​ -> //Web//
 +  * //Reports// -> //​Availability//​
 +
 +This results in a wider page than previously with one host data. For more information,​ see the [[:​manual/​introduction/​whatsnew400#​host_column_always_displayed|What'​s new]] section.
  
 === JMX monitoring error message === === JMX monitoring error message ===
Line 191: Line 217:
 |//​Previously:// ​    ​|''​History buffer is full. Sleeping for 1 second.'' ​ | |//​Previously:// ​    ​|''​History buffer is full. Sleeping for 1 second.'' ​ |
 |//In Zabbix 4.0:// ​ |''​History cache is full. Sleeping for 1 second.'' ​ | |//In Zabbix 4.0:// ​ |''​History cache is full. Sleeping for 1 second.'' ​ |
 +
 +==== See also ====
 +
 +  * [[:​manual/​installation/​template_changes|Template changes]]