Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Alignak checks package for Unix/Linux SNMP checked hosts/services

Checks pack for monitoring Unix/Linux or Windows hosts with SNMP active checks

Most recent PyPi version Join the chat #alignak on License AGPL v3

Note that the Windows part for this pack is not yet available.

If you are interested in such a checks pack and if you are monitoring some Windows hosts with SNMP, please contact us (IRC or open an issue in this project)


The installation of this checks pack will copy some configuration files in the Alignak default configuration directory (eg. /usr/local/share/alignak/etc). The copied files are located in the default sub-directory used for the packs (eg. arbiter/packs for the Nagios legacy cfg files or arbiter/backend-json for the backend importable files).


the default plugins directory used by Alignak is /usr/local/var/libexec and the installed scripts are not located in this place. You must copy them to the right place!

From Alignak packages repositories

More information in the online Alignak documentation. Here is only an abstract...


# Alignak DEB stable packages
sudo echo deb xenial main | sudo tee -a /etc/apt/sources.list.d/alignak.list
sudo apt-key adv --keyserver hkp:// --recv D401AB61

sudo apt-get update
sudo apt install python-alignak-checks-snmp


sudo vi /etc/yum.repos.d/alignak-stable.repo:
   name=Alignak RPM stable packages

sudo yum repolist

sudo yum install python-alignak-checks-snmp


for Python 3 version, replace python with python3 in the packages name.

From PyPI

To install the package from PyPI:

# Python 2
sudo pip install alignak-checks-snmp

# Python 3
sudo pip3 install alignak-checks-snmp

From source files

To install the package from the source files:

git clone
cd alignak-checks-snmp
sudo pip install .

Note: using `sudo python install` will not correctly manage the package configuration files! The recommended way is really to use `pip`;)


This checks pack is using the some PERL plugins that are shipped with the checks pack, but some PERL dependencies are necessary.

Install PERL dependencies for PERL plugins

On some Linux distros, you can:

sudo apt-get install libsnmp-perl libnet-snmp-perl

Or you can use the PERL cpan utility:

cpan install Net::SNMP


Copy the shipped scripts to the right place for execution:

the /usr/local/share/alignak/etc/arbiter/packs/snmp/resources.cfg file and configure the SNMP community.:

#-- Executable scripts directory
sudo cp /usr/local/share/alignak/libexec/check_snmp*.pl /usr/local/var/libexec

Edit the /usr/local/share/alignak/etc/arbiter/packs/snmp/resources.cfg file and configure the SNMP community.:

#-- Default SNMP community

Prepare host

Some operations are necessary on the monitored hosts if SNMP remote access is not yet activated.
# Install local SNMP agent
su -
apt-get update
apt-get install snmpd

# Allow SNMP get - this configuration is intended for tests puuposes
# You should set up a more secure configuration and not allow everyone to see everything :)
vi /etc/snmp/snmpd.conf
   #  Listen for connections from the local system only
   #agentAddress  udp:
   #  Listen for connections on all interfaces (both IPv4 *and* IPv6)
   agentAddress udp:161,udp6:[::1]:161
   # rocommunity public  default    -V systemonly
   rocommunity public

# Restart SNMP agent
sudo systemctl restart snmpd.service

Test remote access with the plugins files:

$ /usr/local/var/libexec/alignak/ -H -C public -w 80,80 -c 90,95
Ram : 71%, Swap : 58% : ; OK

Alignak configuration

To define the SNMP community to be used per default, edit the resources.cfg file and change the default value.


You simply have to tag the concerned hosts with the template linux-snmp.

define host{
    use                     linux-snmp
    host_name               host_snmp

The main linux-snmp template declares macros used to configure the launched checks. The default values of these macros listed hereunder can be overriden in each host configuration.


_LOAD_WARN          2,2,2
_LOAD_CRIT          3,3,3
_STORAGE_WARN       90
_STORAGE_CRIT       95
_CPU_WARN           80
_CPU_CRIT           90
_MEMORY_WARN        80,80
_MEMORY_CRIT        95,95
_NET_IFACES         eth\d+|em\d+
_NET_WARN           90,90,0,0,0,0
_NET_CRIT           0,0,0,0,0,0

To set a specific value for an host, declare the same macro in the host definition file.

define host{
    use                     linux-snmp
    host_name               host_snmp

    # Specific values for this host
    # Change warning and critical alerts level for memory
    # Same for CPU, ALL_CPU, DISK, LOAD, NET, ...
    _LOAD_WARN       3,3,3
    _LOAD_CRIT       5,5,5

Bugs, issues and contributing

Contributions to this project are welcome and encouraged ... issues in the project repository are the common way to raise an information.


Checks pack for monitoring Unix/Linux and Windows hosts with SNMP




No packages published
You can’t perform that action at this time.