Ad Widget

Collapse

Can zabbix handle 350K+ NVPS?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Vinodh4181
    Junior Member
    • Jan 2025
    • 11

    #1

    Can zabbix handle 350K+ NVPS?

    I have a requirement of setting up Zabbix 7 LTS for a quite large data monitoring which is 350K+ NVPS with around 100,000,000 Items on 34000+ hosts.
    75% of hosts are network devices - SNMP monitoring.
    Taking this into consideration can any one suggest for finetuning/configurations of best practices for this kind of setup? First of all is this possible??

    Does any one implemented such large instance atleast near to my scenario??

    I'm doubting on zabbix code logic and DB schema handling issues might get and unable to conclude on this..

    If you aks for Hardware specs, I thinking of :
    Zabbix server + nginx web - 96vcpu, 256GB RAM, 512GB disk
    Postgresql DB server - 96vcpu, 512GB RAM, 300TB storage (storing history values for 90days, trends for 180days)
    Mysql Zabbix proxies - count 14 each -> 24vcpu, 48GB RAM, 512GB Disk
  • Jason
    Senior Member
    • Nov 2007
    • 430

    #2
    You'd need partitioning on your database at the very least. I'd suggest timescaledb. Probably need to be distributed as well. I'd also look seriously at the items you wish to monitor and reduce the frequency down and make liberal use of discard with heartbeat to reduce traffic/load on zabbix server/proxies.

    Comment

    • Vinodh4181
      Junior Member
      • Jan 2025
      • 11

      #3
      Considering the Best resources we can provide and best configurations (Using Nginx, Postgres with TSDB, Partitions, Proxies etc) still Technically will Zabbix server engine/schema could able to handle such large volumes of DATA (350K NVPS)?

      I was going through the Documentation and found that there is a parameter Which technically answers my question :-
      Click image for larger version

Name:	image.png
Views:	227
Size:	21.8 KB
ID:	505665

      the Parameter is "StartDBSyncers" which Technically says that Zabbix server could handle 1000 NVPS volume per 1 Syncer. Then only we can configure max of 100 to that parameter which puts a cap of 100 * 1000 NVPS = 100K NVPS volume handling capacity.

      So I hope the limitation of Zabbix is it can handle up to 100K NVPS per Zabbix server.

      Comment

      • monitor_that
        Junior Member
        • Jul 2025
        • 1

        #4
        It will be the trigger evaluation and trigger actions attached to those values that will impact your performance. Using timescaledb and nvme storage you'll definitely get more than 1000 nvps. That being said... I wouldn't build a system that big.

        Comment

        • cyber
          Senior Member
          Zabbix Certified SpecialistZabbix Certified Professional
          • Dec 2006
          • 4806

          #5
          I would ask directly from Zabbix in case of so big environment...

          Comment

          • supafly
            Junior Member
            • Nov 2025
            • 15

            #6
            In my humble 40K nvps 8,000,000 items environment thinnest bottleneck is IO capacity of SSDs and R/W latency. If you can provide infrastructure capable to crunch this amount of data it will be fine.
            Of course, you need to use best practices — PostgreSQL, TimescaleDB, NGINX, zabbix proxy groups. Be ready that restart of zabbix server with large configuration can take a while.
            Technically, you can lower your NVPS by slightly increasing items update interval. Theoretically, going from 1 minute update interval to 2 minutes cuts your nvps in half.
            And the best rule of monitoring and observability — don't collect trash. If you don't need something right here right now — ether don't collect it or increase update intervals.

            Comment

            • Jason
              Senior Member
              • Nov 2007
              • 430

              #7
              I'd also add that at that scale it's definitely worth making very good use of discard unchanged items with heartbeat and where possible have the heart beat set up to 1d where possible. Anything you can do to slow down the data flow on the proxies to server will have large benefits to both database size and read/write operations.

              Comment

              Working...