As a systems/network administrator, it’s on you to keep tabs on the Linux servers in your data center (be it on-premise or in the cloud). Given the Linux platform has a significant number of tools to help you monitor those servers, you might not know where to start. Among those many titles, there is one particular software package that you should definitely try out. Said monitor is Checkmk.
Checkmk can monitor your servers, desktops, applications, networks and cloud environments, all from a well-designed web-based GUI dashboard.
I’m going to walk you through the process of installing Checkmk and then adding a monitoring agent. We’ll do both on Ubuntu Server 20.04, but know that this software supports Debian- and RHEL-based distributions.
There are two different versions of Checkmk:
- Raw – the fully open source version that doesn’t include every feature.
- Enterprise – this includes the Free version (which limits you to 25 hosts after 30 days, Standard and Managed Services edition). Find out more about pricing and features on the Checkmk editions matrix.
SEE: Checklist: Server inventory (TechRepublic Premium)
What you’ll need
To install Checkmk, you’ll need a running instance of Ubuntu Server 20.04 and a user with sudo privileges. That’s it. Let’s get that server monitor up and running.
How to install Checkmk
You won’t find Checkmk in the standard repositories. Instead, head over to the download page and either download the version you want to use or log into your Ubuntu Server and issue the command:
You’ll want to snag the download URL by right-clicking the Download button (after selecting the version you want).
Once the download is complete, install Checkmk with:
sudo dpkg -i *.deb
The installation will error out. To fix this, issue the command:
sudo apt-get install -f
The above command will install all of the necessary dependencies for Checkmk.
How to create a Checkmk monitoring site
The next step is to generate everything necessary for a Checkmk monitoring site (which is really just a fancy term for a Checkmk instance). Let’s call our instance tr_test. We’ll create that instance with the command:
sudo omd create tr_test
The output of the command will give you the address of the web-based GUI and the admin login credentials for your instance. With this taken care of, start the instance with:
sudo omd start tr_test
How to access the web-based GUI
Open a web browser and point it to http://SERVER/tr_test (where SERVER is the IP address of the hosting server). Give the site time to load and then login with the admin credentials supplied to you by the create command. Upon successful authentication, you’ll find yourself on the Checkmk main dashboard (Figure A).
How to add a new host
At the moment, Checkmk isn’t monitoring anything. What we need to do is add a host. We’ll add the server hosting Checkmk as an example.
On the left sidebar, click Setup | Agents. In the resulting page (Figure B), right-click check-mk-agent_2.0.0p9-1_all.dpkg and copy the address.
Go back to the terminal window and download the agent with:
Where URL is the address of the agent you copied.
Install the agent with:
sudo dpkg -i check-mk-agent_2.0.0p9-1_all.dpkg
After the agent installs, go back to the Checkmk site and click Settings | Host, and then click Add Host. On the resulting page (Figure C), you’ll need to enter the hostname of the host to be added and then click the checkbox for IPv4 address.
Click Save & go to service configuration. Eventually, this new page will list out all of the found services (Figure D).
If any services are listed as Undecided, click Fix all to solve that problem.
At this point, Checkmk is not monitoring the server on which it is hosted. You can now go back to the dashboard and start customizing it to view what you need for that host. You can also continue adding agents to other servers and then add them as hosts on Checkmk.
Subscribe to the Developer Insider Newsletter
From the hottest programming languages to commentary on the Linux OS, get the developer and open source news and tips you need to know. Delivered Tuesdays and Thursdays