Check_MK Setup
The agent can be used to gather data from remote systems you can use LibreNMS in combination with check_mk (found here). The agent can be extended to include data about applications on the remote system.
Installation
Linux / BSD
Make sure that systemd or xinetd is installed on the host you want to run the agent on.
The agent uses TCP-Port 6556, please allow access from the LibreNMS host and poller nodes if you're using the Distributed Polling setup.
On each of the hosts you would like to use the agent on, you need to do the following:
1: Clone the librenms-agent
repository:
cd /opt/
git clone https://github.com/librenms/librenms-agent.git
cd librenms-agent
2: Copy the relevant check_mk_agent to /usr/bin
:
linux | freebsd |
---|---|
cp check_mk_agent /usr/bin/check_mk_agent | cp check_mk_agent_freebsd /usr/bin/check_mk_agent |
chmod +x /usr/bin/check_mk_agent
3: Copy the service file(s) into place.
xinetd | systemd |
---|---|
cp check_mk_xinetd /etc/xinetd.d/check_mk | cp [email protected] check_mk.socket /etc/systemd/system |
4: Create the relevant directories.
mkdir -p /usr/lib/check_mk_agent/plugins /usr/lib/check_mk_agent/local
5: Copy each of the scripts from agent-local/
into /usr/lib/check_mk_agent/local
that you require to be graphed. You can find detail setup instructions for specific applications above.
6: Make each one executable that you want to use with chmod +x /usr/lib/check_mk_agent/local/$script
7: Enable the check_mk service
xinetd | systemd |
---|---|
/etc/init.d/xinetd restart | systemctl enable check_mk.socket && systemctl start check_mk.socket |
8: Login to the LibreNMS web interface and edit the device you want to monitor. Under the modules section, ensure that unix-agent is enabled.
9: Then under Applications, enable the apps that you plan to monitor.
10: Wait for around 10 minutes and you should start seeing data in your graphs under Apps for the device.
Restrict the devices on which the agent listens: Linux systemd
If you want to restrict which network adapter the agent listens on, do the following:
1: Edit /etc/systemd/system/check_mk.socket
2: Under the [Socket]
section, add a new line BindToDevice=
and the name of your network adapter.
3: If the script has already been enabled in systemd, you may need to issue a systemctl daemon-reload
and then systemctl restart check_mk.socket
Windows
- Grab version 1.2.6b5 of the check_mk agent from the check_mk github repo (exe/msi or compile it yourself depending on your usage): https://github.com/tribe29/checkmk/tree/v1.2.6b5/agents/windows
- Run the msi / exe
- Make sure your LibreNMS instance can reach TCP port 6556 on your target.