Ad Widget

Collapse

Look at using Zabbiz to monitor over 1k IoT devices, how would you split the roles?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • G0nz0uk
    Member
    • Apr 2021
    • 46

    #1

    Look at using Zabbiz to monitor over 1k IoT devices, how would you split the roles?

    Hello,

    I heavily use Grafana with various datasources, we monitor over 1k IoT boards via SNMP to get there up or down status as ICMP is blocked and on some devices we poll certain custom OIDs, all of this I read is possible in Zabbix (let me know if not).
    Now I usually build my virtual services in Linux and usually in Docker Compose, I see you can install the rolls in docker, but can't see any Docker Compose yml examples yet.

    Did you use Docker/Compose or normal, I'd be interested to hear why flavour you went including the DB.

    I was wondering how would you split out the roles if we need to poll around 3k of devices? I'm assuming 1 frontend, 1 DB and a couple of proxy servers?

    Thanks
    Last edited by G0nz0uk; 15-09-2025, 17:14.
  • cyber
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Dec 2006
    • 4806

    #2
    Originally posted by G0nz0uk
    I was wondering how would you split out the roles if we need to poll around 3k of devices? I'm assuming 1 frontend, 1 DB and a couple of proxy servers?

    Thanks
    1 frontend, 1 DB, 1 server and a couple of proxy servers

    Comment

    • Linwood
      Senior Member
      • Dec 2013
      • 398

      #3
      Yes, you can do all that, but I'd be remiss not to add....

      ESP32/ESP8266 type devices are not that good at SNMP (especially memory poor versions of them), is that really how you want monitor them for up/down? And why would icmp be blocked, which is a very low overhead protocol in comparison. Could ICMP be what you use for most, and then if you have some odd exceptions use SNMP? It will be a lot less load on everything (unless you need the data from SNMP, not just the up/down state), and you'll need less zabbix/network capacity to do the work, and put less of a workload on small IoT devices at the same time.

      This is even more true with snmpv3 and encyption (workload) and another reason not to use V1 or V2 in simple monitoring if there is any security concerns.


      Comment

      • adrian.cunnelly
        Junior Member
        • Oct 2025
        • 1

        #4
        Originally posted by G0nz0uk

        I was wondering how would you split out the roles if we need to poll around 3k of devices? I'm assuming 1 frontend, 1 DB and a couple of proxy servers?

        Thanks
        I would recommend you separate out the server, database and UI, and make use of proxies in strategic locations in your network.

        We monitor 10k devices with 850k items, using 1 server, 1 postgresql+timescaledb server, 1 UI server, 25 proxies with a vps of 5k.

        A decision was made a long time ago to keep our monitoring platform separate from our internal infrastructure, so its availability would not be affected by internal hardware or network issues, so for that reason our Zabbix Server, DB and UI are EC2 instances in AWS, making use of an EBS volume for the database volume so it can be detached and re-attached to another instance if needed.

        Comment

        Working...