April 30, 2016

Many of my basic network services live on Raspberry Pi hosts. DNS, DHCP, my yum repository mirrors, my git server… These useful little machines make excellent utility hosts for simple tasks that don’t require much horsepower.

But if I have so many important things running on them, shouldn’t they be monitored?

The Platform

I’ve mentioned before that I don’t run Raspbian. Not only does it not have FreeIPA packages (that I know of), but I very much prefer RPM-based distributions. Instead, I run Redsleeve Linux.

I did try the CentOS distribution, but (for now anyway) that’s a bust. It works pretty well, but a lot of the base packages are missing. There’s also the issue of EPEL; I’m not clear on where I can find an official EPEL mirror for ARM, and I’m not industrious enough to go track it down.

Redsleeve, on the other hand, is a pretty complete port of RHEL, and they even include an EPEL distribution. I’m not sure how complete EPEL is, but so far it’s been enough to do what I want.

I generally like to install software via RPM (even stuff I write myself), so I’ll be needing the appropriate zabbix-agent RPMs for armv5tel. These do not exist in the main zabbix repository, which is hardly unexpected.

So they have to be built.

Use the Source

I’m familiar enough with RPM that I could easily build my own packages, but that seems like a lot of unnecessary work. Zabbix already distributes RPMs for RHEL7 on x86_64. There isn’t a whole lot of difference between RHEL on x86 and RHEL on ARM in terms of system layout, so that sounds like a good starting point.

Fortunately for me, Zabbix provides the source RPMs. Simply download the appropriate SRPM file from Zabbix at http://repo.zabbix.com/zabbix/3.0/rhel/7/SRPMS/.