Observium Unix Agent

All Agent data is pulled in one TCP connection during the unix-agent module. The module populates an $agent_data array which can be used by other modules. For example:

$agent_data = 
['app'] => 
['apache'] => 
... DATA ...
['bind'] =>
... DATA ...
['other'] =>
... DATA ...

The preferred method of running the Unix agent is via xinetd, preferably with an iptables firewall only allowing access from the monitoring server(s). Make sure this package is installed.

sudo apt-get install xinetd

Observium provides an example xinetd configuration file. Copy this from Observium to the server that will be running the agent. Continue reading “Observium Unix Agent” »


Install Observium CentOS 7/Ubuntu 16.04/ Debian 9

Observium is an open source, low-maintenance, auto-discovering network monitoring tool for operating systems and network hardware. It supports Linux and Windows operating systems and network hardware like Cisco, Juniper, Brocade, Foundry, HP.

Observium is based on AMP (Apache, MySQL, and PHP) stack and it collects the monitoring metrics via SNMP protocol. It uses RRDtool to make a graph of metrics collected from SNMP. Observium can also collect data using CDP, FDP, LLDP, OSPF, BGP, and ARP protocols.

Observium comes with a simple yet powerful interface to monitor devices, and it’s alerting system can be highly customized to receive alerts over an email, IRC, slack and more.

This tutorial covers the installation of Observium on CentOS 7 / Ubuntu 16.04 / Debian 9 and collecting usage metrics from Linux machines via SNMP protocol.


Log-in as the root user or switch to root user as commands we run during the installation process requires root privilege.

su -


sudo su -

We first install Webtatic, OpenNMS, and EPEL repositories on CentOS 7 / RHEL 7.

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
rpm -ivh http://yum.opennms.org/repofiles/opennms-repo-stable-rhel7.noarch.rpm

Install and Configure MySQL / MariaDB
Observium needs AMP stack, so install MariaDB as a database server, a fork of MySQL. Continue reading “Install Observium CentOS 7/Ubuntu 16.04/ Debian 9” »


SNMP Client Configuration for Observvium

This can be placed in /etc/snmp/snmpd.conf and will provide the required parameters for Observium. This example use version 2c snmp auth.

Community string: Replace community_string with your unique community string.

# Listen for connections on all interfaces (both IPv4 *and* IPv6)

agentAddress udp:161,udp6:[::1]:161

# Full view access
view all included .1

# system + hrSystem groups only
view systemonly included .
view systemonly included .

# Default access to full view
rocommunity community_string default -V all

# Default access to basic system info
#rocommunity public default -V systemonly

# System contact and location
syslocation Rack/Room/Building, Street, City, Country [GPSX,Y]
syscontact Contact Person <your@email.address>

# Disk Monitoring
disk / 10000
disk /var 5%
includeAllDisks 10%

# Unacceptable 1-, 5-, and 15-minute load averages
load 12 10 5

# This line allows Observium to detect the host OS if the distro script is installed
extend . distro /usr/local/bin/distro

# This lines allows Observium to detect hardware, vendor and serial
extend . hardware /bin/cat /sys/devices/virtual/dmi/id/product_name
extend . vendor /bin/cat /sys/devices/virtual/dmi/id/sys_vendor
extend . serial /bin/cat /sys/devices/virtual/dmi/id/product_serial

# This line allows Observium to collect an accurate uptime
extend uptime /bin/cat /proc/uptime

# This line enables Observium's ifAlias description injection
pass_persist . /usr/local/bin/ifAlias_persist

Continue reading “SNMP Client Configuration for Observvium” »