Monitoring agent on arm


(Mark Verlinde) #1

With the ongoing conversation about usecases for arm (beside it’s fun too) really like this idea. Unfortunately I’m missing knowledge on this topic.

To have a start, I took the liberty to snatch the nethserver-zabbix package from @mrmarkuz 's repository and put it in the arm devel testing repository.
(I hope you do not mind, in future we can migrate the zabbix armhfp packages to your repo :grinning: )

On a arm device running ns-7.5.18004 (devel):
yum --enablerepo=nethserver-testing,epel-pass1 install nethserver-zabbix

Looking at the package, and having limited resources in mind, i wonder if it could use the mysql/mariadb back-end on arm. This simply because this db more widely used by nethserver modules, avoiding introducing a extra service (postgresql-server). But there are probably compelling arguments to use postgresql…

My question in general is:

  • what do we need to do to make our nethserver-arm install a nice monitoring tool running on lowpower (real) hardware?

(Markus Neuberger) #2

Yes, that’s possible. I chose postgres because of scalability and performance but mariadb should do the job too.

My initial intention was to use it as an agent which means it collects data and sends it to another zabbix server. But it should be possible to run full zabbix-server on the raspi too. I only tried OMD which provides nagios for arm and that worked, maybe slow but it worked.

(Robert Moskowitz) #3

I took a quick look at the zabbix website to see WHAT it monitored. For all I knew, it monitored your office A/C system…

Shows how much attention I pay to managing networks!

  1. Fast network card for data acquisition. 1GB ethernet is not hard to get.

  2. Good I/O for the DB. Native sata valuable, but you could put the DB on USB 3.0 drive. So look for either.

  3. At least duo core for data store and data reporting. Quad would be better.

  4. Is the graphic rendering done in the agent or the server? If the later, then quad core is probably mandatory.

A lot of armv7 SOC meet this list, so it would not be hard to put together.

BTW, thanks Mark for the sunxi pointers. Turns out the R40 Allwinner chip that is in the BananaPi M4-Ultra will not have sata support until the 4.20 kernel. So I am either back to looking for quad board alternatives or waiting until?

But I don’t have anything here worth monitoring, so I will focus on what I do need and can help with.

(Markus Neuberger) #4

I am going to provide a zabbix-mysql noarch package where we could start from.

Another thing is that some repackaging of the zabbix packages is needed. IIRC epel only provides zabbix 2.2 and from zabbix repo you can actually get 4.0 LTS.

(Mark Verlinde) #5


For arm it is updated to 3.0.22-2, but we have version 4.0.0-2 (kind of in the hope the LTS 4.0 package will land soon) epel=pass1 is needed one dependency, I will include it in our mirror soon.

(Markus Neuberger) #6

Here is a first test module for the epel zabbix version 3 using mysql:


Did you already port the packages? If yes then I noticed too late.

(Markus Neuberger) #7

Tested the postgres version now on a raspberry and it works. Great! :sunglasses:
Did you port the zabbix packages? Is it possible to make them noarch?
I am going to provide another package for zabbix 4 and mysql. Then we have all possibilities (epel, zabbix, postgres, mysql)
Epel and zabbix versions slightly differ in provided db files and config file locations.

(Mark Verlinde) #8

Yes i did rebuilt zabbix 4.0, just a mater of rebuildning the source package the provide.

Funny think is I just removed it from the arm testing repository and while writing this your nethserver-zabbix-mysql package installed oke!

so now we have nethserver-zabbix-mysql in testing and no zabbix package it self. But if you favor 4.0 it’s easily put back. :grinning:

EDIT: zabbix 4.0 packages are in testing again. I saw your package requires specific version; so no installation conflict are to be expected.

(Markus Neuberger) #9

We may keep both, the epel packages are named zabbix30-* whereas the zabbix packages only have zabbix-*. I already added it to conflicts definition in the spec file so it should not be possible to install both.

I’d change the name of the epel package to nethserver-zabbix30-mysql and make a new nethserver-zabbix-mysql. What do you think?

I think the newer zabbix packages are preferred in general so if it’s too much effort to keep both versions we may drop the epel one.

(Mark Verlinde) #10

Done: zabbix 4.0 packages are in testing again


[OT mode on]
I would like to write much more, thank everyone for their contributions and passion, try to explain why even if I do not have time to be active lately, even reading just makes me feel an active part of the community … to be short: thanks to the whole nethserver community :+1:
[OT mode off]

i agree

just installed… i’ve seen some warnings in logs but zabbix4 seems to work.
@mrmarkuz @mark_nl great job!:raised_hands:
I hope to have some free time tomorrow to make other tests on hc1 and rpi3 and send the logs

(Markus Neuberger) #12

I reworked the zabbix module to use the new Zabbix 4.0 packages and mysql instead of postgres, it works on my raspberry in first tests. The only package needed from epel-pass1 is fping.

yum install --enablerepo=nethserver-testing,epel-pass1

(Mark Verlinde) #13

Nice! will include fping in the ns-epel mirror.

(Mark Verlinde) #14

fping is included in the ns-epel mirror, epel-pass1 may be omitted from the install command.
(did not test this!)

(Mark Verlinde) #15

During the zabbix rebuild for aarch64 I saw a zabbix update to 4.0.1-1;
Can this be pushed to armhp too?

(Markus Neuberger) #16

I’ll try and report…

(Mark Verlinde) #17

If you wish, I can push them…
If it’s not oke we remove them again… it’s a devel repo!

(Markus Neuberger) #18

ok, usually they should work. Never experienced a problem with zabbix packages.

(Mark Verlinde) #19


Tomorrow i’ll try them too! Thanx

(Markus Neuberger) #20

Thanks for providing the new packages, I updated and it worked as expected. :sunny: