Knowledge Base & Help Desk

AllProbe SNMP integrator explained
Posted by Ran Hartal | 2018-05-05 02:25:39
Posted by Ran Hartal
2018-05-05 02:25:39

SNMP integrator explained- monioring SNMP integration helper (MSIH)

AllProbe integrator is not an agent nor it is service application that run constantly. The integrator is a small open sourced BASH code (available on GItHub as well) with main goal of preparing a host for monitoring via its built in SNMP daemon.


Installation of the SNMP integrator is done by running a sinle CLI command on suppored OS types.

The exact command is shown on each host summary page and unique(each host pass a unique TOEKN ID to identify itslef on API),

it will then confiure itslef as cron and will run every 5 minutes to get conifiguraiton updates from your account.


When running the integrator on private LAN (private networks) with dedicated on-perm probe servers, there is a need to allow the host running the integrator HTTP proxy access to be able to download needed SNMP extensions from AllProbe SNMP extensions repository or your repository if it is on the internet. This recommendations required on some on-prem installations, if it is full on-perm with all the fully required parts then no need to follow this advice, please write us if you have any questions regarding the integrator process.

For on-perm installations behind private networks (LAN) you can make your proxy available for the integrator

echo "export https_proxy=" >> /root/.bashrc
echo "export https_proxy=" >> /etc/profile
export https_proxy=

Once running and installing, the following flow is taking place:

- Pre OS check - checking for basic OS dependent needed modules and basic Apps.

Allprobe's integrator and basic SNMP extensions requires the following application and modules to be installed on Linux distributions.

- snmpd
- which
- curl
- sed
- mysql-client (will install it in case of MySQL based SNMP extentsions)

Most of which applications installed by default by most Linux distributions, the integrator will try to install the missing applications ONLY with the OS repositories configured, using inner OS tools like apt-get & yum.



The integrator was fully tested on:

- Debian (6-9)
- Centos (5-7)
- FreeBSD (4.8, 7)
- Fedora (some versions)
- XenServer
- Proxmox (debian based)

Created files & directories:

- /etc/apr
- /etc/apr/
- /etc/apr/
- /etc/apr/cron/
- /etc/apr/snmp/
- /etc/apr/buffer/
- /etc/apr/buffer.tmp
- /etc/apr/buffer/extensions.list
- /var/log/apr/
- /var/log/apr/cron.log

After the pre OS check, the integrator will make an API call to allprobe's API with its TOKEN which is a unique HOTS to API authenticator for each host.
The API sends back general common server configurations in few configurations blocks all packed and encoded in base64 format for better HTTP flow and protocol negotiations.

Configurations blocks of the return API response includes the following sections:

(decoded with base64)

- #snmpd#
- #cron#
- #cdn-snmp#
- #cdn-cron#
- #custom-procedure#
- #probers-subnes#

snmpd - Updating /etc/snmp/snmpd.conf with specific required monitoring matrices run by AllProbe's probe servers,

The entire new configurations is serrounded by new stanza.

cron - updating /etc/crontab, adding the integrator itself ( when installing ) and cron based SNMP extensions pulled from API or private extensions repository, read more about it on SNMP extensions topics.

The entire new configurations is serrounded by new stanza.

cdn-snmp - Pull required SNMP extensions scripts from Allprobe's CDN or your private repository. More about it on SNMP extensions. The pulled scripts is then put on /etc/apr/snmp

cdn-cron - Pull required Crons scripts from Allprobe's CDN or your private repository. More about it on SNMP extensions. The pulled scripts is then put on /etc/apr/cron

custom-procedure - Custom-procedure needed, more about it spceial integrator notes.

probers-subnes - Subnets of Allprobe probe servers making SNMP requests to this hosts, it will update iptables and insert new rule for each subnet allowing access to UDP port 161 to gather SNMP matrices from the monitored host.

Integrator run modes:

Allprobe's SNMP BASH integrator supports few running modes for run modes & security concerns

- install - downlaoding and configuring to run as CRON, some pre OS checks and folder structures

- cron - routine run of the integrator every X Minutes

- commit - Will commit the changes from /etc/apr/buffer/extensions.buffer by running /ect/apr/integrator commit

- purge - remove the integrator and extensions files & directories, integrator & SNMP extensions crons and log, remove allprobe's stanza from SNMP configurations.

Each of this modes supports 3 security modes as second argument passed to the integrator, the modes affect the integrator mode of commiting any new configurations passed from Allprobe's API in case it detect new configuration (for example adding new monitoring matrices on UI

- normal - Will commit the changes immediately

- preventive (default mode) - Will commit the changes to /etc/apr/buffer/extensions.buffer, send an email reporting those changes. The integrator will automatically commit those changes after 12 Hours if not changed by the owner. This mode will allow you to take advantage of self configured host but with close provisioning on each update before actually commiting it.

- secure - Will commit the changes to /etc/apr/buffer/extensions.buffer, send an informative email and wait for the administrator to commit the changes by running /ect/apr/integrator commit

Other integrator tasks:

Beside preparing the host for monitoring, the integrator is making some other usefull tasks on each run as follow.

- Check if SNMP daemon is running, try to restart it if not.

- Peer-to-peer checks with micro services this service relay on, please see notes on that on micro services help pages. In general, if the host was chosen as service or micro service representative then the host will try to establish availability with other services it depends on for better over all micro services view.

Usefull links:

Extentions explained

Integrator on GitHub

How To's

  Check out AllProbe on mobile.