Zabbix Server not running after upgrading to 7.4.0

Upgrading a self-hosted Zabbix instance in Kubernetes sounds like a straightforward task, right? That’s what I thought - until I upgraded our Zabbix deployment to version 7.4.0 and was greeted by an all-too-familiar frontend error:

“Zabbix server is not running”

This post walks through the upgrade process, the problem I encountered, and the fix involving two critical environment variables: ZBX_NODEADDRESS and ZBX_NODEADDRESSPORT.

Background: Zabbix on Kubernetes

We’ve been running Zabbix in Kubernetes for monitoring various parts of our infrastructure. The stack includes:

  • Zabbix Server
  • Zabbix Frontend
  • Zabbix Agent
  • PostgreSQL

All components are deployed using a custom Helm chart.


The Upgrade to Zabbix 7.4.0

I followed the usual helm upgrade path and waited till the pods started up the new images. Everything looked fine at the first sight - No errors. No crashes. No unexpected restarts. Even the zabbix-server container logs looked promising.

After opening the frontend this message jumped in my face:

“Zabbix server is not running”


The Investigation

I started by validating the following:

  • Pod health: All containers were running.
  • Logs: No warnings or errors on the application stack.
  • Network: Verified connectivity between frontend and server services.
  • Database: Schema upgraded properly; no errors in zabbix_server.log.

I even tried port-forwarding and connecting to the server from within the frontend pod using telnet and nc. All connections succeeded. It looked like everything was fine.


The missing Puzzle Pieces

Digging through the release changelog and searching for 7.4.0 related issues, I ended up on this Jira Ticket, where I also found the working solution: https://support.zabbix.com/browse/ZBX-26625

For docker installation add that parameters to zabbix/zabbix-server-mysql section (follow name of your container):
   -e ZBX_NODEADDRESS=zabbix-server-mysql
   -e ZBX_NODEADDRESSPORT=10051

Solution

Update the Zabbix server deployment to include the mentioned environment variables:

- name: ZBX_NODEADDRESS
  value: "zabbix-server-svc1"
- name: ZBX_NODEADDRESSPORT
  value: "10051"

Note that Ive set the DNS name of the Zabbix server kubernetes service as value for ZBX_NODEADDRESS .

After applying the changes, the frontend loaded correctly and showed, that the server is running again.


Final Thoughts

This was a great reminder that not all upgrades are plug-and-play, especially with evolving applications like Zabbix.

Hope this helped you save time and avoid the same rabbit hole I went down.