Sprint 32, Sprint 33, Sprint 34
Steps to reproduce:
We assume that ConfigFrequency of active proxies is relatively low. In real example it's 120 seconds. And CacheUpdateFrequency on server side is also 120 seconds.
In more simple words - it's highly possible that proxies will refresh configuration, while server daemon did not spot config changes in frontend.
Steps to reproduce:
1. Ha HostA monitored by active Proxy1, icon is green
2. Switch the host to monitor by active Proxy2 (host still is available in server db)
3. before server updated config cache, the Proxy2 has updated config cache
4. an item is scheduled and polled by the Proxy2 quickly enough, host detected as available and icon became green in frontend (but for short period)
4. a bit later server updated its cache and ... resets the icon to gray
Here are logs:
Proxy2 cache reload:
23881:20180423:190828.371 forced reloading of the configuration cache 23881:20180423:190828.377 received configuration data from server at "127.0.0.1", datalen 3453 23902:20180423:190857.043 enabling SNMP agent checks on host "HostA": host became available
Server cache reload:
6103:20180423:190828.377 sending configuration data to proxy "Proxy2" at "127.0.0.1", datalen 3453 6096:20180423:190857.560 enabling SNMP agent checks on host "HostA": host became available 6080:20180423:190907.954 forced reloading of the configuration cache
HostA availability status on server and proxies databases, different time poinds: before and after some changes. With comments:
19:08:21 <<< HostA "monitored by" changed: Proxy1 => Proxy2 19:08:28 Server: 1 Proxy1: 1 Proxy2: <<< Proxy2 cache reload: 19:08:29 Server: 1 Proxy1: 1 Proxy2: 0 <<< server spot/got something and reseted host to unknown 19:08:30 Server: 0 Proxy1: 1 Proxy2: 0 19:08:56 Server: 0 Proxy1: 1 Proxy2: 0 <<< an item polled and HostA detected as available 19:08:57 Server: 0 Proxy1: 1 Proxy2: 1 <<< server received the availability update 19:08:58 Server: 1 Proxy1: 1 Proxy2: 1 19:09:07 Server: 1 Proxy1: 1 Proxy2: 1 <<< Server config cache reload and icon magically reseted to unknown 19:09:08 Server: 0 Proxy1: 1 Proxy2: 1
Any further config cache updates will not update the icon.
The Proxy2 restart helps to update the availability icon on frontend side.
Note - we have such doc: https://www.zabbix.com/documentation/3.0/manual/introduction/whatsnew300#host_availability_improvements
It might be related to recent changes in -
- caused by
ZBXNEXT-4427 Frontend: Check now item value without config reload (Z4beta1)
ZBX-14447 Zabbix server not compatible between major version. Zabbix server 3.4.10 <=> proxy 3.4.2